自2007年乔布斯发布第一代iPhone开启移动时代至今已有8年。过去几年,移动互联网以惊人的速度发展,从无到有的移动开发行业也在快速演进。回顾过去的一年,Swift语言、MaterialDesign、Win10等的发布令人振奋,HTML5标准的确定也让MobileWebApp重新燃起了热情。对于开发者来说,这是最好的时代。新的一年,我们一定会迎来更多激动人心的变化。移动开发领域会有哪些值得关注的话题?本文抛砖引玉,为大家盘点一下。本文将从平台和技术两个方面进行盘点。iOS9和iOS8平台的发布堪称“史无前例”。开放了4000多个API,以及AppExtensions、HealthKit、HomeKit等众多新特性,为iOSApps的表现力增加了更多可能。但是相对来说,这么大的更新带来了软件质量问题。据悉,2015年夏季即将推出的iOS9更新将是有限的,并将着重于提高软件质量。此外,在刚刚过去的春季发布会上,苹果正式发布了AppleWatch,引起了热烈的反响。可以说,今年将是智能手表的元年。对于iOS开发者来说,经过一段时间的学习和iOS8份额的逐步巩固,2015年将是应用加入iOS8新特性的时候。此外,我们可以预见,围绕HealthKit、AppleWatch等将会涌现出一大批创新App,它们也将是新一年iOS开发的热点。对于中国的iOS开发者来说,ApplePay可能会在2015年进入中国,可以想象,这也将是另一个热点。当然,还有最重要的,Swift语言。不久前,Apple发布了Swift1.2版本,解决了之前存在的诸多问题,语言整体趋于完善。对于iOS开发者来说,Swift语言不再是要不要学的问题,而是什么时候学的问题。虽然Swift无法在短时间内完全取代Objective-C,但由于两者良好的兼容性,我们可以逐步将现有的Objective-C应用迁移到Swift。Swift的语言特性研究、性能优化、第三方库开发等也将是2015年的热点。Android在2014年的发展也是相当可圈可点。它不仅巩固了市场领导者的地位,改进了设计和性能,而且开始向更广阔的物联网领域进军。Android的未来不可限量。开发人员有重大变化。除了Android5.x和MaterialDesign设计语言的发布,还有AndroidStudio1.0正式版的发布,标志着Android开发者终于拥有了正式的官方IDE。而使用配套的Gradle构建工具也成为了Android开发者的必修课。此外,AndroidWear、AndroidTV、AndroidAuto大大拓宽了Android的应用范围,开发者将有更多施展才华的空间。新的一年,物联网和智能硬件,以及基于它们的应用,也将在Android开发者中掀起热潮。微软在Windows10过去的一年里给我们带来了很多惊喜,尤其是对于开发者来说,一改以往保守封闭的态度,对开发者变得更加开放和友好。这种态度无疑会帮助微软赢得更多开发者的青睐。2015年对微软来说至关重要,因为横跨PC、手机、平板的Windows10将正式发布。微软在移动领域的成败,将取决于它能否赢回消费者、硬件制造商和开发商的信任。心。对于开发者来说,基于Win10开发一款UniversalApp是一个很有吸引力的选择,因为它可以同时支持多种设备,可以想象这将成为2015年Windows平台开发的热点。技术HTML5OnOctober29,2014,HTML5标准规范制定并正式发布,对Web的发展意义重大,对移动互联网同样如此。HTML5中的DeviceAPI、webSocket、webGL等极大地扩展了webapp的应用范围和表现力。另一方面,iOS8新增了WebKitFramework,Android5.0可以在不更新系统的情况下更新WebView。巨头的全力支持,也让HTML5在移动设备上的未来更加光明。不过,尽管HTML5在功能上逐渐向原生应用靠拢,但交互和动画的性能一直是瓶颈,很难做到像原生应用一样华丽而不落后。如果这个问题得到解决,HTML5在移动设备上的应用将会更加广泛。因此,也是目前大家关注的一个热点。以下技术致力于解决这个问题,相信在新的一年会有更大的发展:CanvasUI:WebApp目前的问题是它是基于DOM的,DOM很慢。如果页面内容较多,渲染与DOM交互会造成卡顿。另外DOM也有单线程和无法使用GPU的缺陷。Canvas是HTML5的一个标签,它以位图的形式输出内容,因此可以利用GPU加速。Flipboard《60fps On The Mobile Web》最近发表的一篇文章,使用Canvas来展示内容,克服了卡顿。当然,这种技术也有局限性,例如其内容的可访问性差。但如果使用得当,MobileWebApp将不再是卡顿的代名词。Famo.us:这是一个JS框架,它使用自己的JS渲染引擎和3D物理引擎来加速UI渲染,以达到接近原生应用程序的性能。可以方便地与Angular.js、backbone、Meteor、React.js等集成,支持跨平台,开源。HTML5+:这是国内Dcloud公司推出的一项技术,包括从开发到部署的一整套解决方案,其中最重要的是5+Runtime,包括HTML5基础API的跨平台封装,映射移动系统APIJSAPIsNative.js,以及兼容原生SDK的插件系统。使用它,可以使用JS调用原生UI,理论上相比原生应用的交互只会有轻微的性能损失。NativeScript:这是另一种使用Javascript调用原生UI组件的技术,支持现有的原生Objective-C、Java和.NET库。它于3月开源,并将于4月发布1.0版本。跨平台开发如今的移动市场被iOS和Android瓜分,这种格局短时间内不会有太大的改变。iOS拥有优质用户,Android拥有海量用户。对于开发者来说,两者都是难以割舍的市场。但是,同一个App分别为两个平台开发,时间和成本太高。在HTML5仍然难以保证体验的情况下,“一个代码,多平台”的跨平台开发势在必行。基于PhoneGap/Cordova或类似移动中间件的HybridApp技术在过去几年逐渐成熟。最近出现了一款基于React.js技术的Reapp,将React组件绑定到一个跨平台的UI-Kit来创建一个HybridApp。.可以预见,HybridApp在2015年仍将是一个发展热点。还有一些跨平台技术是采用多平台生成目标代码的方式,最终得到原生App来解决体验问题。在这种情况下,通用的UI部分还是需要根据各个平台单独编写,其他部分可以公开。以下是一些值得注意的技术:J2OBJC:这是一个由Google贡献的开源项目,用于将Java代码转换为Objective-C。使用它并不能完全实现代码共享,但是实践证明可以达到70%的代码共享,已经很不错了。随着Swift的持续火热,不知道新的一年会不会进化成J2Swift呢?Xamarin:它是Mono跨平台项目的一个分支,旨在使用C#和.NET框架开发多平台应用程序。受微软将开源.NET框架核心的消息刺激,Xamarin在2015年一定会有更好的表现。ReactNative:这是Facebook最近公布的一项跨平台开发技术。它基于React.js在移动设备上的实现,目前支持iOS和Android。它不强调代码共享,而是“LearnOnce,WriteEverywhere”,使用JS抽象原生UI组件,并提供自己的布局系统,既有WebUI的灵活性,又有接近原生UI的性能。总结技术变革总是日新月异,这种现象在移动行业表现得更为明显。2015年肯定会有新的移动开发技术和新的热点。作为开发者,你需要学会拥抱变化,也需要在变化中掌握那些不变的技能。希望大家新的一年都可以。将您的技术提升到一个新的水平,实现您在移动开发行业的梦想。
