Play 2.0 中文资料 - 使用 Play 2.0 控制台

启动控制台

Play 2.0 控制台是基于 sbt 的为开发而准备的控制吧, 它允许你管理整个 Play 应用的开发周期.

要启动控制台, 进入到现有的 Play 应用的目录,然后运行 play 脚本:

Unmi 注: 虽然 sbt 是为 Scala 准备的构建工具,但是即使你创建的应用选的是 Java 语言, 我们仍然是要依赖于 sbt. 在 Play 1.x 的时候不存在 Play 控制台,要么就是直接把应用运行起来了。在 Play 1.x 的项目目录下运行 play 命令只会显示简单的帮助信息。

play 命令进入到当前应用的控制台下,提示符是 [应用的名称] $

阅读全文 >>

Play 2.0 中文资料 - 剖析 Play 2.0 应用

标准的应用目录布局

Play 应用的目录布局是标准化的,这样可保持尽量的简单. 一个标准的 Play 应用看起来如下:

阅读全文 >>

Play 2.0 中文资料 - 创建一个新的应用

用 play 命令创建一个应用

创建一个新应用最初的方式是用 play new 命令.

这会询问你一些信息.

  • 应用的名称 (仅用于显示, 这个名称后面将在几个消息中使用到).
  • 用于这个应用的模板. 你可以从 默认的 Scala 应用, 默认的 Java 应用, 和 空应用 三个选项目中选择.

Unmi 注: 新版 play new 命令允许你带上目录名,让你在指定的目录下创建应用,在 2.0-beta 版中,只是在当前目录下创建你的应用。运行 play help 看显示的 new 是否是: new [directory]    Create a new Play application in the specified directory. 就知道能否指定应用的目录。

并且此时的 play new 命令可以用

这样就会在 ~/Desktop/unmi 目录中创建应用,后面的提示是一样的. 在 ~/Desktop/unmi 目录下有应用所需的 app, conf, public 等目录。
阅读全文 >>

Play 2.0 中文资料 - 安装

系统要求

为了运行 Play 框架, 你需要 JDK 6 或更新的版本.

假如你正使用 MacOS, Java 已经内置了. 如果你正在使用 Linux, 请确认使用了 Sun  的 JDK 或 OpenJDK (不是 gcj, 它是许多 Linux 发行版的默认  Java 命令). 要是用的是 Windows, 只下载安装最新版的 JDK 安装包即可.

确可 javajavac 命令被设置到了当前路径下 (你可以在命令行提示符下通过输入 java -versionjavac 来检查它).

下载二进制包

下载 Play 2.0 的二进制包 (选择最新的 2.0 RC 版) 并解压到有读和写权限的目录下. (运行 play 会向安装目录中写入文件, 所以不要安装在 /opt, /usr/local 或任何你无需设置写入权限的目录中.)

Unmi 注: 当前最新的版本是 2.0.4。 阅读全文 >>

Play 2.0 中文资料 - 开篇

Play 当前版本是 2.0.4,2.0 前的版本通常会称为 PlayFramework,或者 Play!,现在干脆直呼为 Play 了,名气大了些就这样的,似乎越来越显得不可一世了。本人有意更深点了解 Play 框架,所以打算翻译官网 Manual, tutorials & references 一系列资料,并且着重点会先放在基于 Scala 语言的 Play 2.0 的应用。

Play 2.0 是一个高生产率的 Java 和 Scala 的 Web 应用框架,它集成了现代 Web 应用开发所而的组件和 API。

Play 是轻量级的,无状态的,Web 友好的架构,并且是特征可预期的(features predictable)。还借助于它的反应模型(reactive model) 和 Iteratee IO 的使用,让 Play 为高伸缩性的应用最小化了资源消耗(CPU, 内存和线程).

Unmi 注:关于 Iteratee IO, 可参考:Iteratee I/OScalaz Tutorial: Enumeration-Based I/O with Iteratees

第一步要翻译的内容只想覆盖到以下:

开始使用

Mac OS X 下开发 Android 程序时使用 WiFi ADB 连真机调试

其实不必使用 WiFi ADB 连接的方式,Google USB Driver 说不兼容是因为 Mac 根本用不着这个就能直接连手机,可以用 USB 直接连接 Android 手机进行调试。大家可点击看这个

Mac OS X 下开发 Android 程序时使用 WiFi ADB 连真机调试

可忽略掉下面的内容。


我在 Mac OS X 下用 Eclipse 开发 Android 程序,当自己的 Android 手机插上电脑上是检测试不到的,不能想在 Windows 下那样,开启了 连接 USB 调试模式 就能在启动程序的的时候可选手机来调试或测试代码。

在 Mac 下的 Android SDK Manager 中其实也明确显示了

Google USB Driver            Not compatible with Mac OS X

也就是无法即插即用了,那么在 Mac 下该如何联接真机来调试或测试程序呢?

有些地方的解决办法是,把手机的 USB 调试选项关掉,启用 USB 数据存储,把 Eclipse 生成的 APK 文件拷到手机的存储卡。手机上再自行安装,而且先得到 USB 数据存储项关掉后手机才能读取存储卡上的内容。

上面那样做只是告诉了你怎么把 APK 程序安装到手机上,还不如通过网络安装方便,并且肯定是不能联机单步调试。

相信还是不少人在 Mac 下开发 Android 程序的,定然会有更好的解决办法,那就是: 阅读全文 >>

下载 Android 平台源代码(适合于各种平台)

Android 既然是开源的,那么我们开发时自然会想要得到一份它的源代码,这大大有助于我们更好的深入理解这个平台,更快捷的定位程序出错的根源。当然对于国内那些想自主研发 Mobile OS 的厂商来说,下载 Android 源码是步骤是不可或缺的。

我在标题中为什么要加上说是适合于各种平台呢,因为大概不少的地方都专门说在 Linux 下怎么去下载 Android 源代码,好说 Windows/Mac 下就不是那么回事似的,其实并无区别。

官方在说明怎么下载 Android 源代码(http://source.android.com/source/downloading.html) 的解说中也挺啰嗦的,不光要 git,还要 repo sync 来同步。

其实不管是什么平台,只要有 git 客户端就行了。想要下载哪个版本的 Android 源码,先在浏览器里打开 https://android.googlesource.com/platform/frameworks/base,就能看到在 Tags 下有什么版本的源码可下载。如图: 阅读全文 >>

在 Java 中使用正则表达式进行后向引用($1,$2...)

自 JDK1.4 引入正则表达式的支持可称得上是次大改变,可 Java 的正则表达式的能力还是很弱,别说和 Perl 比了,就是和 C# 和 JavaScript 的正则表达式比较来也逊色不少,不过现在 JVM 上有其他语言对正则表达式有所增强,像 Groovy, jRuby 和 Scala。

[修正一下] 第一句话的说法是有误的,其实 JDK 本身的正则表达式就支持替换时用 $1, $2 那样的后向分组引用,例如:
String s = "abc def".replaceAll("(\\w+)\\s+(\\w+)", "$2 $1");  //s 就是  "def abc",replaceFirst 也可以用 $1, $2 的替换。

比如在 Java 中要实现正则表达式的分组,后向引用的方式进行替换挺复杂的,像 JavaScript 完成两个分组的调换:

在 Java 中可得用上 Pattern, Matcher,还要 find()/group() 等操作,于是我就会考虑在 Java 中完成类似的功能有没有曲线的方法,有的。你可以调用 JVM 上其他语言的功能,我这里用列了两种实现方式

JDK1.6 起可借助 ScriptEngineManager 使用 JavaScript 相应的函数,除此之外还可用第三方的库 JRegex,具体实现,请参见如下代码,还带了测试用例:

起初我是用的第一种方法,后来找到了第二种方式,感觉用 JRegex 更优雅些。

强制退出Mac程序的六种方法

用电脑时间长了,难免会遇到程序卡住,风火轮狂转不停,没有任何相应等情况。可能是由于程序冲突、缓存不足或者一些bug等情况导致,这个时候我们就需要强制退出这个程序了,下面有六种在Mac系统中强制退出程序的方法,大家至少应该记住一两个。

1、使用键盘快捷键强制退出处于活跃状态的Mac程序快捷键:Command+Option+Shift+Esc这样按住一两秒钟,就可以强制退出当前程序了,算是最方便的一种方法。

2、打开强制退出程序窗口

使用快捷键:Command+Option+Esc

来打开“强制退出应用程序”的窗口,然后选中你需要退出的程序,再点右下方的“强制退出”即可。 阅读全文 >>

16个WordPress中使用的Google服务和应用

Google提供了很多不错的用户端服务和应用,虽然最初是一个搜索引擎,今天Google几乎为每一个用户提供解决方案。当为了满足需求的时候,Google并不忘记满足Web开发人员和设计人员的需求。在这篇文章中,我们将了解一下Google提供了那些主要的服务,并且如何应用到wordpress中的。

16个wordpress博客中使用的Google服务和应用

阅读全文 >>