写点什么

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

  • 2016-01-06
  • 本文字数:2544 字

    阅读完需:约 8 分钟

编者按

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

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

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

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

社区与开源

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

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

  • RxSwift ReactiveCocoa :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 开发来说,将是更加精彩纷呈的一年。

2016-01-06 04:564045
用户头像

发布了 164 篇内容, 共 111.4 次阅读, 收获喜欢 392 次。

关注

评论

发布
暂无评论
发现更多内容

如数据血缘探究数据管理的“自治理”

Aloudata

Data 数据管理 数据血缘 Data Fabric

性能提升20%,字节跳动HTTPDNS从中心下沉到边缘

火山引擎边缘云

边缘计算 HTTP DNS #DNS 边缘计算平台

天工一刻 | 一文看懂3D大模型

新消费日报

攻坚克难岁月长,自主腾飞世界强——回顾近代中国数据库的发展与飞跃

Geek_b7ce72

InPlant SCADA笔记 背景模版

万里无云万里天

工厂运维 InPlant SCADA

从焦虑症到AI「网红」:这名程序员是如何让AI「助他一臂之力」

新程序员编辑部

ChatGPT Prompt

HAProxy 可观测性最佳实践

观测云

HAProxy

汽车辐射大?技术来救它:整车辐射抗扰发射天线仿真建模及性能预测

Altair RapidMiner

人工智能 汽车 仿真 altair 辐射

用Python来DIY一个AI面部情绪识别API的简单方案

幂简集成

API

InPlant SCADA笔记 io 查看数据库管理与IO驱动

万里无云万里天

工厂运维 InPlant SCADA

InPlant SCADA笔记 二次确认

万里无云万里天

工厂运维 InPlant SCADA

写报告 进图谱 做演讲,可信数据库大会上亚信科技AntDB可太忙了

亚信AntDB数据库

InPlant SCADA笔记 查看工程的网络架构

万里无云万里天

工厂运维 InPlant SCADA

一文剖析高可用向量数据库的本质

Zilliz

人工智能 大数据 AI Zilliz 向量数据库

如何借助逻辑数据编织平台实现“数据优先堆栈( DFS )”

Aloudata

数据仓库 数据虚拟化 数据编织

管理能力达到国际认可水平 智谱获得国内首批ISO/IEC 42001:2023人工智能管理体系认证证书

技术研究院

AWS 弹性伸缩特性介绍

AutoMQ

云计算 kafka 云原生 AWS

InPlant SCADA笔记 报警管理功能

万里无云万里天

工厂运维 InPlant SCADA

从0到100:旅拍小程序开发笔记(上)

CC同学

InPlant SCADA笔记 查看工程的数据库与历史趋势的信息

万里无云万里天

工厂运维 InPlant SCADA

InPlant SCADA笔记 调度任务功能

万里无云万里天

工厂运维 InPlant SCADA

澳鹏Appen入选大模型产业链基础层图谱及案例研究

澳鹏Appen

大模型训练 大模型 百模大战

解读2015之iOS篇:惊喜和机遇_移动_徐川_InfoQ精选文章