@pockry
2016-05-31T23:46:00.000000Z
字数 2697
阅读 1587
备选: 再不学Swift和React Native你就迟了!
移动开发工作不好找了怎么办?
移动
2016年,移动开发似乎走过它辉煌的顶点,开始走向平淡。其中的预兆有初级和实习职位的减少,投机性移动创业公司融资困难,人们的注意力被AI、VR、直播等技术所吸引,移动开发光环不再。也许再过几年,它会和其它开发职位一样,不再是转岗的首选、高薪的代名词。
虽然光环消失会让从业者有些失落,不过对于浮躁的移动开发行业来说,也许这是一件好事,真正优秀的技术和人才会沉淀下来,得到应有的评价。
在2016年,移动开发已经经过了多年的发展,有些技术可以总结,有些新技术在不断涌现,不学就会落后,还有些前沿和热点技术有待大家探索。这里就为大家总结一下。
最佳实践,就是已经被实践证明为实现某种目的的最佳技术路线。在移动开发领域,有些技术经过多年的碰撞和思考,可以总结为最佳实践,避免让后来人重复踩坑,目前我认为这样的技术有应用架构和动态化、插件化技术。
应用架构
移动应用架构在最初几年仅仅是传统的MVC架构当道,直到最近几年,从服务端、PC端甚至前端借鉴过来的MVP、MVVM、Clean、Flux等架构还是涌现,出现了百花齐放的局面。从业务角度来讲,国内一些大公司的应用经过多次的迭代,也基本确定了架构的最佳实践,如微信之前分享的架构演进之路,还有前段时间手淘在QCon北京上分享的对移动开发最佳实践的思考,甚至连Google都发布了一个MVP架构的示例项目,说明移动应用架构发展到现在,总结最佳实践的时机已经成熟。
动态化/插件化
动态化也是另一个移动开发的热门话题,人们对于无需下载应用即可更新应用的内容、展现形式甚至是行为逻辑的需求一直存在,并且从未放弃过对这方面的追求。众多开源方案的出现,说明这一技术阶段性的成熟,可以有一些通用方案出现,这也是我们所追求的最佳实践。
比如在动态化的子领域热修复里面,iOS平台有被广泛使用的Wax、JSPatch,Android平台从去年开始也开源了不少的Hotfix方案,如Dexposed、AndFix、Nuwa等。
在Android平台上,动态化更演变成为了插件化,通过动态加载二进制代码来更新应用。2015年到现在国内插件化技术爆发,如DroidPlugin、DL、DynamicAPK、Small等开源框架纷纷涌现,网络上也出现了很多分析插件化技术的文章。
在我们于6月24日北京举行的GMTC全球移动技术大会上,为应用架构和动态化技术准备了丰富的议题,如滴滴、微博、天猫都会来分享他们的客户端架构经验、JSPatch、Small等框架作者都会来讲他们对于动态化的思考。
移动开发技术每年仍然在迅速的更新,有些新技术试图取代现有技术,虽然它们看起来暂时还很弱小,但如果你忽视它们,过几年你就发现你落伍了。比如下面这些新技术。
Swift
Swift从发布到现在已经两年了,两年间Swift取得了飞速的发展,也获得了众多开发者的喜爱,但在国内仍然使用率不高。
有些人不用的理由是要兼容iOS 7,Swift运行时会增大包大小,Swift API不稳定,升级麻烦云云,但下下周WWDC上Swift 3.0就会发布,再过几个月,苹果发布新iPhone以及iOS 10正式版,兼容也将不再成为理由。
预计2016年下半年一些公司的新项目将采用Swift开发,如果你现在学了Swift,你就有可能搭上新班车,或者至少比其他现学的同学领先一步,否则就只能落后于人。
React Native
React Native自发布以来一直热度不减,虽然它仍然还有许多坑,但它代表了移动开发的发展方向,即移动和前端的融合。很多公司或个人纷纷出手,为打造增强方案,如ReactWeb、ReactMix等,甚至还有受它影响的类似方案Weex,也让学习React Native的热潮更加高涨。
不过,有些移动开发者对于React Native有些抵触,认为掌握了原生开发就不用学习React Native了。有的人被公司要求自学React Native开发新项目甚至还不愿意,认为是浪费时间。
但这只是暂时的,因为React Native并没有足够有分量的成功案例。一旦出现了这样的案例并且在节省开发成本上取得成功,大多数公司一定会去用React Native或类似技术进行开发,并裁减原来的原生开发团队,到时候,你就一定能保证你是留下来的那一个吗?
因此,现在学习Swift和React Native对于提高自己的竞争力非常有必要,虽然它们暂时不能用在工作中,但人要往前看,不能永远停留在现在。
在这次GMTC全球移动技术大会中,我们也开设了Swift和React Native的议题,来自ThoughtWorks、猿题库的专家以及RxSwift布道者会向我们分享Swift内容,而React Native入门和实战作者、QQ空间RN项目负责人则会向我们分享React Native的实践。
今年以来,VR和直播是非常火的两个领域,人们称为VR元年、直播元年。值得一提的是,VR和直播原来在PC平台已经有实现,但一直不温不火,直到都冠上移动的名字之后才一飞冲天,比如VR里现在最火的是头戴式VR,也就是移动VR,直播里最火的也是映客、17等手机直播平台。
对于移动开发者,了解这些前沿和热门领域的技术,有助于在适当的时候抓住风口,在这些新兴技术领域大展拳脚。
VR/AR
到目前为止,国外几大互联网公司,除了苹果之外,基本都已经布局VR领域。在国内,BAT以及乐视、暴风等等也不甘落后,在VR领域投入巨资。虽然,VR技术现在还处于早期,我们仍然在争论VR带来的眩晕是否真的能消除,但是,它有着成为下一代计算和内容平台的潜力。如果你相信VR的未来,从现在开始学习并不晚。
直播
从今年以来直播和网红成为人们津津乐道的关键词,很多应用都在添加直播模块,或者变身为直播应用,直播成为一种潮流。目前移动直播技术渐渐成熟,国内也出现了不少优秀的实践分享,有很多服务商也提供了解决方案。到现在,直播的技术并不成为门槛,也许你并不需要开发直播相关的模块,但了解这项技术会给你的未来带来更多可能性。
在这次GMTC全球移动技术大会中,我们也设置了VR和直播相关的议题,让开发者能够学习当前最前沿和流行的技术。
当然,移动开发绝不仅仅只是这些技术,还有性能优化、移动测试、音视频等等,也都非常值得学习。但是,如果要我选择的话,上面这些技术的优先级更高一些,如果你还在犹豫学习哪些技术,上面这些将是很好的选择。