html - PhoneJS 相对于常规 backbonejs/HTML5 应用程序有哪些优势?

标签 html cordova trigger.io zepto phonejs

我尝试使用 PhoneJS - 它很容易上手,而且似乎提供了一个很好的框架。但是,我通常更喜欢避免预构建框架,因为它们限制了我的灵 active 。我主要关心的两个问题是:

  1. PhoneJs 使用 Jquery,而很多人推荐使用 Zepto 以获得更好的性能
  2. 我可以使用原生的 trigger.io/phonegap 插件吗?
  3. 根据经验,应该避免为移动应用程序使用“大型”框架(出于性能原因)——这就是为什么有些人反对 Jquery Mobile。 PhoneJS 相当大。有人对 PhoneJS 性能有任何经验吗?
  4. 框架降低了灵 active - PhoneJS 的定制/扩展有多容易?

最佳答案

1。 PhoneJs 使用 Jquery,而很多人推荐使用 Zepto 以获得更好的性能

如果您打算使用 Zepto,尽管 certain benchmarks表明它的整体性能并不比 jQuery 好,很可能您可以毫不费力地将它替换为 jQuery。 Zepto 是一个 jQuery 克隆,删除了处理旧浏览器边缘情况的代码。由于您正在为移动设备开发,我怀疑这不会成为问题。 Foundation 4 framework ,仅作为示例,允许您在两者之间进行选择。

2。我可以使用 native trigger.io/phonegap 插件吗?

您没有理由不使用 PhoneJS 来构建您的代码,并使用 PhoneGap 或 Trigger.io 来构建、打包和部署它。 PhoneJS 和 PhoneGap/Trigger.io 是旨在解决完全不同(但互补)问题的框架。事实上,PhoneJS page特别提到使用 PhoneGap 打包应用程序。您当然可以充分利用您决定与 PhoneJS 一起使用的两者(PhoneGap 或 Trigger.io)中的任何一个提供的 API 和插件。

3。根据经验,应该避免为移动应用程序使用“大型”框架(出于性能原因)——这就是为什么有些人反对 Jquery Mobile。 PhoneJS 相当大。有人对 PhoneJS 性能有任何经验吗?

除了对下载时间的影响(如果您使用 trigger.io/PhoneGap 将代码打包为 native 应用程序,这不会成为问题),框架的大小之间不一定存在相关性以及演出的质量。据我了解,jQuery Mobile 的主要问题是它为呈现其 UI 组件而生成的标记量 (link)。也就是说,我最近在使用 PhoneGap 打包的移动应用程序上使用了 jQuery Mobile,性能还不错。我很可能希望 PhoneJS 是一样的。

请注意,您从使用该框架的人那里得到的关于该框架性能的任何答案都可能是相当主观的。如果您担心,最好的建议是下载该框架,使用它来制作应用程序功能的代表性子集的原型(prototype),然后在您计划定位的最低规范设备上进行测试。

4。框架降低了灵 active - PhoneJS 定制/扩展有多容易?

好的框架可能会在一定程度上限制您的灵 active ,但我认为,这是一种积极的方式。它将鼓励您构建代码,使其保持一致、解耦和可维护。当有人已经为您完成了所有艰苦的工作时,为什么还要浪费时间重新发明轮子呢?

使用框架将使您不必做出许多关于文件和代码结构的无聊决定,并节省您的时间,以便您可以专注于在实际问题域(即,您的应用独有的内容)。

PhoneJS 由一套 UI 组件和 Knockout MVVM framework ,所以它大致类似于 jQuery mobile 和 Backbone 的组合。如果您不喜欢 UI 组件,您可以编辑代码以改进它们或选择根本不使用它们。通过查看文档,您将了解 Knockout 的灵 active ,但引用我的第一点,如果您发现自己与它作斗争,您可能无法充分利用它。


TLDR:就性能和灵 active 而言,评估框架是否适合您的要求的最佳人选是您。下载它,查看代码,试用它,自己制作一些功能原型(prototype),然后根据您的经验做​​出决定。

关于html - PhoneJS 相对于常规 backbonejs/HTML5 应用程序有哪些优势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18499630/

相关文章:

javascript - 添加转到使用 javascript 制作的动态表中的另一个 HTML 页面的功能

jquery - Phonegap3.0 $.ajax问题,无法调用跨域url

authentication - 具有 HTTP 基本身份验证的 PhoneGap FileTransfer

javascript - 从使用 Trigger.io 构建的移动应用程序发送发布请求

javascript - 当我拖动连接到 Web Audio API 增益节点的 slider 时,它会弹出并单击。拖动时音量没有平滑变化

Javascript通过Tag搜索XML并获取兄弟节点

javascript - 使用 JS 对 HTML 表单进行文件类型验证后,如果无效,控件应保留在同一页面上

ios - iOS 上的 Cordova/PhoneGap UI 响应能力

ios - Trigger.io launchimage 模块 'Hide Manually' 不工作

python - trigger.io 工具包在上传私有(private)模块时死机