11 月 19 - 20 日 Apache Pulsar 社区年度盛会来啦,立即报名! 了解详情
写点什么

2015 年,移动开发都有哪些热点?

  • 2015-03-18
  • 本文字数:2978 字

    阅读完需:约 10 分钟

自 2007 年乔布斯发布第一代 iPhone 开启移动时代,到现在已经 8 年了。在过去的几年中,移动互联网以惊人的速度快速发展,移动开发这个从无到有的行业,也一直处于快速的演变当中。回顾过去的一年,Swift 语言、Material Design、Win10 等等的发布激动人心,HTML5 标准的确定也让人对 Mobile Web App 再次燃起热情,对于开发者来说,这是最好的时代。新的一年里,我们肯定也会迎来更多令人兴奋的变化,移动开发领域将会有哪些值得关注的话题呢?本文就抛砖引玉,为大家盘点一下。

本文将从平台与技术两方面进行盘点。

平台

iOS 9

iOS 8 的发布被称为“史无前例”,它开放了超过 4000 个 API,以及 App Extensions、HealthKit、HomeKit 等诸多新特性,为 iOS App 的表现力增添了更多可能性。不过相对的,这样的大幅更新带来了软件质量问题。有报道称,将于 15 年夏季到来的 iOS 9 更新幅度不大,将专注于提升软件质量。另外在刚刚过去的春季发布会上,苹果正式发布了 Apple Watch,引起了热烈的反响,可以说今年将是智能手表之年。

对于 iOS 开发者来说,经过了一段时间的学习以及 iOS 8 份额的逐渐巩固,2015 年将是 iOS 8 新特性添加到应用当中的时候。另外我们可以预见,围绕着 HealthKit、Apple Watch 等会涌现出大批创新型的 App,它们也将是新的一年 iOS 开发的热点。对于中国的 iOS 开发者来说,Apple Pay 可能于 2015 年进入中国,可以想见,这也将是另一个热点。

当然,还有最重要的,Swift 语言。不久前苹果发布了 Swift 1.2 版本,解决了之前存在的许多问题,语言整体更加趋于完善。对于 iOS 开发者来说,Swift 语言已经不是想不想学,而是什么时候学习的问题。虽然短时间内 Swift 无法彻底替代 Objective-C,但由于两者良好的兼容性,我们可以逐渐将现有的 Objective-C App 迁移到 Swift。关于 Swift 的语言特性研究、性能优化、第三方库开发等,也必将是 2015 年全年的热点。

Android

2014 年的 Android 发展也颇为可圈可点,它不仅稳固了自家市场老大的地位,提升了设计和性能,还开始向更广阔的物联网进军,Android 的未来无可限量。

对于开发者来说比较重大的变化,除了 Android 5.x 的发布以及 Material Design 设计语言外,还有 Android Studio 1.0 正式版的发布,这标志着 Android 开发者终于有了官方的正式 IDE,而与其配套的 Gradle 构建工具的使用也成为 Android 开发者必修课。另外 Android Wear、Android TV、Android Auto 大大拓宽了 Android 的应用范围,开发者将有更大的空间来施展自己的才华。在新的一年里,对于物联网和智能硬件,以及基于它们的应用,也将在 Android 开发者中掀起热潮。

Windows 10

过去的一年里微软带给了我们很多惊喜,特别对于开发者而言,它改变了过去保守封闭的态度,变得更加开放,对开发者也更加友好,这样的态度无疑将帮助微软赢得更多开发者的青睐。

2015 年对于微软将至关重要,因为横跨 PC、手机、平板的 Windows 10 将发布正式版,微软在移动领域的成败,将取决于它是否能重新赢回消费者、硬件厂商以及开发者的心。对于开发者来说,开发基于 Win10 的 Universal App 是一个充满吸引力的选择,因为可以一次性的支持多个设备,可以想见它将成为 2015 年 Windows 平台开发的热点。

技术

HTML5

2014 年 10 月 29 日,HTML5 标准规范制定完成并正式发布,对于 Web 的发展来说意义十分重大,对移动互联网来说也同样如此。HTML5 中的 Device API、webSocket、webGL 等,大大拓展了 web app 的应用范围和表现力。另一方面,iOS 8 中新加入了 WebKit Framework、Android 5.0 可在不更新系统的情况下更新 WebView,巨头的鼎力支持也让 HTML5 在移动设备上的未来更加光明。

不过,虽然在功能上 HTML5 逐渐接近了原生应用,但交互和动画性能一直是瓶颈,难以做到和原生应用一样绚丽同时又无卡顿。这个问题如果解决了,HTML5 在移动设备上的应用将更加广泛。因此它也是目前大家关注的一个热点。下面这些技术致力于解决这个问题,相信它们在新的一年里会有更大的发展:

Canvas UI:目前 Web App 的问题是它基于 DOM,而 DOM 是很慢的,如果页面内容很多,渲染和交互起来就会造成卡顿,另外 DOM 还存在单线程、无法利用 GPU 的缺陷。Canvas 是 HTML5 的一个标签,将内容用位图的形式输出,因此能够利用 GPU 加速。Flipboard 最近发表的一篇《 60fps On The Mobile Web 》就利用了 Canvas 来展示内容,从而克服卡顿。这种技术当然存在一些限制,比如它上面内容的可访问性不佳。但如果使用适当的话,Mobile Web App 将不再是卡顿的代名词。

Famo.us :这是一个使用自己的 JS 渲染引擎和 3D 物理引擎来加速 UI 渲染的 JS 框架,以达到接近原生应用的性能。它可以方便的与 Angular.js、backbone、Meteor、React.js 等集成,它支持跨平台,并且是开源的。

HTML5+ :这是国内 Dcloud 公司推出的技术,包括从开发到部署的一整套解决方案,其中最重要的是 5+ Runtime,它包括基本的 HTML5 API 的跨平台封装、将移动系统 API 映射为 JS API 的 Native.js,以及兼容原生 SDK 的插件系统。使用它可以用 JS 调用原生 UI,从理论上只比原生应用的交互有些微的性能损失。

NativeScript :这是另一个使用 Javascript 来调用原生 UI 组件的技术,并且支持现有的原生 Objective-C、 Java 和.NET 库。它已经于 3 月份开源,并将于四月份发布1.0 版本。

跨平台开发

如今的移动市场iOS 和Android 两分天下,并且短时间内这个格局都不会有大的改变。iOS 有高质量的用户,Android 有海量用户,对于开发者来说两者都是难以放弃的市场。但是,同一个App 为两个平台分别开发,其时间和成本都过高。在HTML5 暂时还难以保证体验的情况下,“一份代码,多个平台”的跨平台开发势在必行。

基于PhoneGap/Cordova 或者类似移动中间件的Hybrid App 技术在过去几年里逐渐成熟,最近又出来一个基于React.js 技术的 Reapp ,将 React 组件绑定到一个跨平台的 UI-Kit 来创建 Hybrid App。可以预计 Hybrid App 仍将是 2015 年的开发热点。

另外的一些跨平台技术则是采用生成多个平台的目标代码的做法,最终得到原生 App,以解决体验的问题,在这种情况下,一般 UI 部分还是需要根据各平台分别编写,而其它部分则可以是公用的。这里介绍一些值得关注的技术:

J2OBJC :这是 Google 贡献的一个开源项目,用于将 Java 代码转换为 Objective-C,使用它并不能完全实现代码共用,但有实践表明它能达到 70% 的代码共用,这已经很不错了。随着 Swift 的持续火热,不知道新的一年里它是否会进化为 J2Swift 呢?

Xamarin :它是 Mono 跨平台项目的一个分支,旨在使用 C#与.NET 框架开发多平台的 app。受到微软将.NET 框架核心开源的消息刺激,Xamarin 想必在 15 年能有更好的表现。

React Native :这是 Facebook 最近公布的一项跨平台开发技术,是基于 React.js 在移动设备上的实现,目前支持 iOS 和 Android。它并未强调代码共用,而是“Learn Once, Write Everywhere”,使用 JS 抽象原生 UI 组件,并提供自己的布局系统,从而拥有 Web UI 的灵活性和接近原生 UI 的性能。

总结

技术的变化总是日新月异,这个现象在移动行业更加显著。2015 年肯定还会涌现出新的移动开发技术,也会出现新的热点,作为开发者需要学会拥抱变化,也需要在变化中掌握那些不变的技能,愿新的一年里大家都能在技术上更上一层楼,在移动开发行业实现自己的梦想。

2015-03-18 22:167269
用户头像

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

关注

评论

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

黑客练手入门| pwnable.kr—幼儿瓶—01:fd

BigYoung

黑客 安全 安全漏洞 28天写作 2月春节不断更

【Linux系统】常驻进程应用实践

程序员架构进阶

Linux 守护进程 七日更 28天写作 2月春节不断更

由孩子学会骑自行车想到

石君

日常思考 28天写作

让我们与内心聊聊,寻找一段思考发展之路。

叶小鍵

如果生命的长度可以被改写「幻想短篇 27/28」

道伟

28天写作

图解 | 原来这就是线程池

架构 线程池

驱动力读书笔记之三

张老蔫

28天写作

思维导图整理Java并发基础

Java 架构 并发

常用网址

现实中游走

为什么要持续学习

不在调上

回顾与总结 | 视频号28天(28)

赵新龙

28天写作

人员培养,不是捷径的捷径(下)

一笑

管理 人才培养 28天写作

每个人都应该理解这三个基本的 MLOps 概念

李忠良

28天写作

硬核!阿里自爆虐心万字面试手册,Github上获赞89.7K

996小迁

spring 架构 面试 程序人生 JVM

信息茧房

lidaobing

28天写作 信息茧房

Webpack | 如何提升构建速度,进行体积优化?

梁龙先森

大前端 webpack 28天写作 2月春节不断更

【JS】异常处理

德育处主任

JavaScript 大前端 js 28天写作 2月春节不断更

Kubernetes安装篇(下):基于Kubeadm方式的集群部署

xcbeyond

Kubernetes kubeadm 部署 28天写作 Kubernetes从入门到精通

第四周-第一课

Geek_娴子

管理笔记[6]:任人唯贤、赏罚分明、任人所长

俊毅

十倍效率背后的管理逻辑

Ian哥

28天写作

你会在车里唱K吗? (28天写作 Day27/28)

mtfelix

28天写作 智能汽车 MaaS 出行方案

Mybatis【18】-- Mybatis自关联多对一查询方式

秦怀杂货店

mybatis

原子性操作类的使用

武哥聊编程

Java 多线程 原子性 28天写作

Redis缓存热点引发的思考

Java架构师迁哥

通过扫码提交信息

IT蜗壳-Tango

七日更 2月春节不断更

机器学习笔记之:Addition and Scalar Multiplication

Nydia

SpringIOC的注解开发

小马哥

Java spring 七日更

Mac打开wps后风扇转的快机身发热

现实中游走

Mac cpu 100% wps 机身发热

28天瞎写的第二百三十七天:抢了HR 饭碗了吗?

树上

HR 28天写作

信任从对自己诚实开始

Justin

心理学 信任 28天写作

2015年,移动开发都有哪些热点?_移动_徐川_InfoQ精选文章