解读2015之iOS篇:惊喜和机遇

jopen 9年前

编者按

2015年,整个IT技术领域发生了许多深刻而又复杂的变化,InfoQ策划了“解读2015”年终技术盘点系列文章,希望能够给读者清晰地梳理出技术领域在这一年的发展变化,回顾过去,继续前行。

2015年过去了,对于iOS开发者来说,这是充满惊喜和机遇的一年。Swift开源让这门语言有了更光明的前途,并且让苹果和开发者之间的联系更紧密了,React Native给iOS开发带来了全新的理念,watchOS和tvOS则给开发者开辟了更广阔的市场。下面就让我们来具体回顾一下。

iOS 9、watchOS 2、tvOS

苹果在2015年发布了iPhone 6/6s、iPad Pro等新设备,一如既往的高品质,值得信赖,在市场方面,苹果也取得了佳绩,其大中华区的销售业绩和市场份额都有可喜的进步,其地位已经无法被轻易撼动。

不过作为开发者,更关注的还是WWDC苹果开发者大会,在本届大会上,库克发布了iOS的最新版本iOS 9及相应的SDK,其更新包括Multitasking、App Slicing、App Linking等,开放了更多能力和新特性给开发者,而用户对其接受度也更高,发布不到两个月装机率达到66%,成为主流的系统版本。

除了iOS这个已经相对成熟的平台,苹果在可穿戴设备和智能家庭方面也逐渐开始发力,其中的代表就是watchOS和tvOS。watchOS 2作为第一代产品的软件升级,它稍微放开了一些限制,新系统中 Watch App的extension将不像现在这样存在于iPhone中,而是会直接安装到手表里去,Apple Watch从一个单纯的界面显示器进化为了可执行开发者代码的设备。tvOS则是苹果在发布新版Apple TV时的系统升级,相对于之前的保守,tvOS引入了应用商店,可以运行第三方应用,这让电视成为一个新的平台,截止到2015年早期Apple TV销量已经超过2500万台,对于开发者来说这已经是不可忽视的市场。

当然,watchOS和tvOS这两个平台仍然处于相当早期的阶段,相应设备的市场也并没有完全打开,苹果对它们的开放很谨慎,开发者目前能做的事情还比较有限,但它们都有可能复制iOS的成功,因此它们的潜力不容忽视。

Swift开源

对于iOS开发者来说,2015年可以说是属于Swift的一年,在WWDC现场,库克宣布Swift开源引起了全场欢呼,在正式开源后更是成为Github有史以来关注(star)增长最快的项目。

编程语言是有信仰的,相对于已有数十年历史的Objective-C来说,Swift的语法更加现代,融合了多种语言中的优点,获得了不少拥趸。在Swift开源之前,就有人尝试 在Android上运行Swift编写的应用 ,还有人开发了 Swift服务端开发工具包 ,在Github上,基于Swift编写的开源项目也呈快速上升趋势。

这次开源对苹果同样也是意义重大,苹果与开发者之间的距离从未这样近过。在以前,苹果虽有Webkit、LLVM等开源项目,但领域相对垂直,参与项目难度较大。现在苹果把Swift及其相关的项目放到了Github上,一般的用户也可以很轻松的关注项目的进展、与开发人员沟通,甚至是给项目做贡献。而从苹果到现在的举措来看,这个项目并不仅是代码托管,而是彻底的社区化运作,开放程度前所未有的大。

与Swift相关的项目,苹果也以开源社区的形式运作,如Swift的 包管理项目 ,吸收了社区的传奇人物Max Howell、Mattt Thompson等,而官方也鼓励开源社区翻译Swift的官方文档,像梁杰组织翻译的 中文版文档即被Swift官网推荐

可以预见,2016年,开源的Swift将更加的强大,将于2016年夏季发布的 3.0版本的目标规划 已经发布在Github上,只要你愿意,你就可以参与到Swift的未来中。

React Native

2015年对iOS开发影响重大的事情还有一个,那就是 React Native 框架,它分别在3月份和9月份发布了iOS和Android的开源版本,每一次都引起大量的关注和讨论。

React Native最重要的特性是跨平台,即非死book所宣传的“Learn Once, Write Everywhere”,还有由于引入前端开发技术带来的更新和Hotfix上的便利,超过以往基于Lua的方案,还催生出 AppHub 这样的开发服务。

由于React Native for iOS版发布较早,早有人用它进行了实验性开发,但用于正式应用开发的并不多。由于项目还处于早期,不可避免会出现一些坑,相关的第三方库和学习资源也十分匮乏。但对于React Native来说,这只是时间的问题。

React Native并不是孤身作战,它的根源在React。2015年同样是React的风云之年,这一年非死book接连发布了React Native、Nuclide、GraphQL、Relay,以及社区各种Flux实现,一个完整的React生态圈已见雏形,一旦成熟起来,不止是移动开发,未来的大前端开发都将被彻底改变。

编者按 2015年,整个IT技术领域发生了许多深刻而又复杂的变化,InfoQ策划了“解读2015”年终技术盘点系列文章,希望能够给读者清晰地梳理出技术领域在这一年的发展变化,回顾过去,继续前行。

目前,能够验证React Native能力的正式应用很少,相信到2016年,基于React Native的典型应用和开发方案将会出现,将这个移动开发解决方案推到一个新的高潮。

社区与开源

2015年iOS开发社区也在蓬勃发展,特别是国人在这方面取得了非常大的进步,不但贡献了优秀的开源项目,还第一次由社区主办了 Swift开发者大会 ,获得了社区的积极响应。

至于开源,则几乎成为iOS开发者展示技术能力、学习和交流的身份标识,除了Swift和React Native之外,笔者挑选了一些2015年值得关注的开源项目如下:

  • RxSwiftReactiveCocoa :2015年函数响应式编程火遍了移动开发领域,ReactiveCocoa相对老资格一些,在2015年发布的3.0版本支持了Swift接口,RxSwift则是ReactiveX的Swift版本,功能更加强大,有后来居上的趋势。
  • JSPatch :由国人开发的iOS应用Hotfix库,由于它小巧灵活、功能强大,现在已被各种商业应用所广泛使用,大大方便了iOS应用紧急问题的修复。
  • YYKit :同样是国人开发的开源库,包括一系列的工具库,极其强大,同时其源码也是学习的好资源, 唐巧对它的作者进行了专访 ,了解了它背后的故事。

2015年涌现的优秀iOS开源项目当然不止这些,由于篇幅所限这里就不一一列举了。希望这些开源项目能激励更多的国人iOS开发者参与到开源中来。

小结

iOS 9带来了新特性、watchOS和tvOS带来了新市场,Swift刚刚开源,无论是直接参与贡献,还是基于Swift做工具、分享知识都非常必要,React Native也缺乏成功案例和成熟的技术方案,需要社区去完善和实现。面对这种种机遇,需要善于学习、勇于开拓创新的开发者去努力抓住,相信2016年对于iOS开发来说,将是更加精彩纷呈的一年。

来自: http://www.infoq.com/cn/articles/2015-Review-iOS