不。
ZK 只构建 Java web 存档文件(war),它不构建 Android、iOS、Nook、Kindle 的原生应用程序,甚至不构建桌面的独立应用程序。
ZK Web 应用程序仅在 Java 应用程序服务器中运行,如 Tomcat、JBoss、Jetty、Glassfish 等。
从这个意义上说,ZK 与 GWT 非常相似,而与 PhoneGap 非常不同。
- 使用 PhoneGap,您可以使用 HTML、CSS 和 JavaScript构建电话应用程序。然后,您的应用程序将显示在为每个手机平台编译的本机包装器中。这本身并不适用于网络。
- 使用 GWT,您可以使用 Java 代码构建Web 应用程序。其中一些 Java 代码实际上被编译成 JavaScript,因此它可以在适当的时候在客户端运行,如果使用得当,可以提供性能优势。将 JavaScript 代码编写为 Java 具有通过 Java 编译器进行类型安全等方面的优势。
- 使用 ZK,您可以使用 Java 代码构建Web 应用程序。与 GWT 不同,它永远不会变成 JavaScript——你所有的 Java 代码都在服务器上运行。ZK 处理设置 AJAX 调用。
在 ZK 中编程感觉就像您拥有一份 DOM 作为 Java 对象的副本。ZK 处理Controller
为特定的初始化你的View
,你可以要求它Component
从视图中连接任何东西。然后,您将这些Components
作为对象,您所做的任何更改都会立即(或多或少)反映在客户端上。
现在,ZK抛开..
如果您想编写一次代码以在所有 Web 浏览器和所有手机上运行,唯一的选择是编写一个 Web 应用程序。在当前的技术状态下,您将无法为所有手机获取本机可执行文件,也无法从相同的代码库获取 Web 应用程序。如果您开发一个 Web 应用程序(使用 ZK、GWT、IceFaces、Lift、Grails 等),您可以期望最大程度地进入市场,因为几乎所有设备都有 Web 浏览器。
最后,关于ZK的一些个人看法。。
- 开发周期很棒,我喜欢用 ZK 编程。
- 团队和社区也很棒,动力很大。
- 该框架一直在积极发展,新的核心功能和改进。
- 我不确定它在重负载下会如何与其他人相提并论。
- 他们生成的 DOM 非常重
- 客户端和服务器之间有很多聊天
编辑:
PS:我发现这个旧的引用叫做ZK Mobile,我认为它现在是一个死项目。我的印象是,它可能旨在成为类似于 PhoneGap 的东西,因为它将您的 ZK 网站包装在原生 Android 应用程序中。一切仍然可以在互联网上运行,但用户的手机上会有一个图标。您将无法访问任何本机功能,例如警报等。
无论如何,只是为了完整起见,我想把它放在这里。