[混合开发]HybridApp分析!!!( 四 )


另外有一些点是值得开发者注意的 。对于原生应用来说,不管是iOS的,还是的,都会提供一套原生界面的库 。以-C为例子 。如果笔者需要调用Alert,笔者只需要编写: *= [[]init];,就把这个view声明好了 。再去执行相应的方法,就可以了 。但是对于Web应用来说,就需要编写
确定
,一堆的css代码和html代码去实现 。当然你会询问笔者,直接写 alert() 不就可以了吗?要是真这么简单的话,建议你在iOS的中编写一下alert,实现:title 是提示,内容是:alert view,确定按钮的文字是:好的 。你就知道的限制在哪里了 。
因此要完成JS在Web App开发当中的最佳实践,肯定要学习优秀的思想和实现方法了 。在这篇文章里面,笔者们暂时先不去做这种深入的讨论 。而是先把例子抛给大家,也许会在下一次讨论的时候,再详细深入以下这两个项目 。
【[混合开发]HybridApp分析!!!】第一个是斯坦福的iOS开发公开课中的例子,使用-c实现,一个简单的卡牌游戏 。这是经典的mvc开发了 。项目地址如下:,如果您正在使用Mac,那恭喜你,可以马上编译这个游戏进行测试以及代码浏览 。
第二个是使用编写的例子,实现同样的需求,做一个简单的卡牌游戏 。但是使用的是HTML+CSS+JS开发 。同样学习了继承以及mvc的思想 。项目地址是:,再次恭喜你,不管使用什么电脑,都可以随时浏览代码以及运行该游戏 。
App的新思想
这两年多以来,因为市场的不同,也出现了不一样的需求,各个技术都有了新的发展 。对于 App来说,其实都有了一些新的解决方案 。为了解决问题其实最终思想都会被还原成以下几个点上:
根据需求,选择工具; 用适当的工具做适当的事情,有针对性地解决问题; 世界是平衡的,对于开发者来说,做的有用功越多,用户体验就越好,反之越差; 跨平台是一个"幌子",什么都做得到不代表什么都做得好
这也是笔者体验最深的几个点 。而且你会发现技术也基本在跟随这几个点来走 。
根据需求,选择工具
如果你使用过 ,你做过过场动画(就是从一个view去到另一个view),过场动画在iOS的中很常见,而且很简单,效果很好很流畅 。在 中使用ajax,css去实现了,核心代码可能就几十行 。可能跟iOS里面的差不多(如果包含动画),但是实际出来的效果却差强人意 。会出现类似的问题:页面抖动,感觉不连贯,在部分的设备下运行缓慢 。如果你的应用要求的体验并不是很高,例如一些新闻展示类应用,更强调排版 。这里小小的体验差距,就可以忽略了 。(因为英国BBC就是这么干的),但是如果你的应用非常强调体验细节,这里的解决方案可能就不适合了 。或许你要做优化,但是优化的时间可能足以够你去学习更多的东西了 。这样的话,你是继续选择用一个不成熟的工具,还是选择去学习一种新的语言呢?所以还是根据需求而定吧 。
另外一个例子 。曾经有人跟笔者提及到,在使用HTML和CSS编写应用界面时确实很爽,但是效率不咋的 。那为什么不尝试把应用内容直接搬到里面呢?构造一套足够强大的工具,一套足够彪悍的UI组件,把整个应用运行于中 。这种想法是很好的,但是其实里面的短板页就出现了,的性能虽高,但是里面的元素组件多了你可以保证效果高?所有的东西都会依赖于,这对于来说要构造足够强悍的面向对象的组件,也非简单之事,抛弃了CSS和HTML,意味着内部的设计组件能够高度定制,松耦合做得非常好 。完全是实现了一套新的xcode和ui库啊 。这就不是在解决一两个问题了 。既然有这么一个工具,笔者为什么不选择更好的,例如 。