写点什么

解读 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:563793
用户头像

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

关注

评论

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

《张汉东的 Rust 实战课》学习笔记

贾献华

java 组件开发的准备工作

努力努力再努力

1月月更

一个cpp协程库的前世今生(九)协程参数与返回值的处理

SkyFire

c++ cocpp

(1-1/1)底层逻辑读后感:三种对错观四类表述

mtfelix

无限生长 2022Y300P

(1-2/2)AI的落地:读caoz的文章有感

mtfelix

无限生长 2022Y300P

LabVIEW纹理分析(基础篇—9)

不脱发的程序猿

机器视觉 图像处理 LabVIEW 纹理分析

写时复制技术(COW)详解

小梁编程汇

性能优化 操作系统 CopyOnWrite;

[架构实战营] 模块四作业

Geek_0ed632

「架构实战营」

在线JSON转CSV,TSV工具

入门小站

工具

【新年互动搞起!】元旦快乐!这里是2022年的 OceanBase

OceanBase 数据库

开发者 OceanBase 社区版 2022年新年祝福 元旦

一份简单够用的 Nginx Location 配置讲解

冴羽

nginx 后端 博客 后端开发 博客配置

hw8-设计消息队列存储消息数据的MySQL表格

WWH

架构实战营

SpringMVC框架基础知识(02)

海拥(haiyong.site)

28天写作 1月月更

03 Prometheus之架构及数据模型

穿过生命散发芬芳

Prometheus 1月月更

获奖公布!OceanBase 第一届技术征文大赛圆满收官!

OceanBase 数据库

开发者 征文大赛 oceanbase OceanBase 开源

架构实战训练营-模块5-作业

温安适

「架构实战营」

世界女性科技群落(五):数字化黄金时代,东南亚女性都是隐藏的阿尔法

脑极体

设计微博评论的高性能高可用计算架构

drizzle

「架构实战营」

Flutter 让你的Dialog脱胎换骨吧!(Attach,Dialog,Loading,Toast)

小呆呆666

flutter ios android 前端 大前端

【LeetCode】统计特殊四元组Java题解

Albert

算法 LeetCode 1月月更

架构训练营 week4 作业

红莲疾风

「架构实战营」

设计原则与思想:单一职责原则

努力努力再努力

Linux之find xargs

入门小站

分布式系统必知必会

小梁编程汇

分布式 分布式系统 共识算法 分布式通信算法 #raft

滴滴夜莺监控发布v5正式版,定位Prometheus企业版

秦晓辉

Prometheus zabbix Open-Falcon Nightingale

千万级学生管理系统的考试试卷存储方案

swallowluo

架构实战营 #架构实战营 「架构实战营」

盘点 2021 | 云原生拥抱之路

xcbeyond

程序人生 云原生 盘点2021 xcbeyond

Prometheus云原生监控:运维与开发实战

方勇(gopher)

云原生 #Prometheus

首次!中西方数据库大咖“时空对话”,为中国分布式数据库开发者大会打call

OceanBase 数据库

OceanBase 开源 OceanBase 社区版 开发者大会

盘点 2021|一个普通人的不普通的2021

慕枫技术笔记

程序人生 盘点 2021

川大记忆

wood

300天创作 川大

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