前言:前端
本文面向于广大 iOS开发者,不少时候,咱们看待技术的方向老是以目前所处的环境、或者项目。java
但咱们应该意识到,咱们是以开发者自居,而不是某某公司的开发者自居,咱们学习储备技术应该从自身出发,让本身技术范畴的选择更加的宽阔,而不是随着经验的积累反而变得更加狭隘,缺乏了一些创造性和选择性,程序员
咱们是独一无二的,咱们应该作独一无二的事,用尽心尽力的态度去追逐,你会发现那些曾经偷偷设想的事正一步一步的朝你走来,人最珍贵的就是咱们的思想,去开拓的思考,像守护生命同样,守护你坚守的梦想。web
任何技术也只是工具,须要掌握的一种理念和思考问题的方式方法,在提高专业技能的同时更快地提高职业技能才是最重要的目的,在技术编程这一行业永远要有尝新和突破自个人态度,这是一个优胜劣汰,适者生存的大环境!面试
做为一个开发者,有一个学习的氛围跟一个交流圈子特别重要这是一个个人iOS交流群:638302184,无论你是小白仍是大牛欢迎入驻
,分享BAT,阿里面试题、面试经验,讨论技术, 你们一块儿交流学习成长!
Swift怎么样?编程
得益于swift的开源,以及苹果的号召力,swift发展的很好。已经获得了广大开发者的一致承认。苹果本身也很重视,新的一些lib和app已经用swift编写。国外大厂好比Uber、LinkedIn已经用swift开发了很长时间。小程序
这些行动证实了swift已经不是一门玩具语言能够大胆的在开发中使用。虽然眼下还有ABI不稳定,和Xcode索引会让人以为慢等问题。可是相比OC的巨大进步,更多开发者选择了忍受,但愿苹果可以持续优化。swift
可是OC的runtime依然是无可取代,从商业角度看也没有理由取缔它。因此二者还会互相存在一段时间。可是我相信swift占有率超过OC的节点很快就会到来。微信小程序
我以为不少人坚持OC是由于他们只会OC。微信
移动市场已经饱和
2008年苹果发布第一个SDK,同年年底安卓1.0发布。移动开发元年。移动开发从无到有,至今已经遍布生活各个方面。从今年手机的出货量和身边的观察很容易获得这样的结论:移动开发这块蛋糕的高速增加已经结束了。
这意味着什么呢?在一个行业高速增加的时候,人才必定是供不该求。因此公司被迫接收不少新手,对新人很友好。相信你们也见证了过去一两年里的就业奇迹:是我的就能上。
因此对于不少只是为了糊口的人而言:这扇门已经关闭了。大家继续去追下一个热潮吧。据说JavaScript要统一天下了,要不您去21天学个前端?
言归正传,那移动开发是否是就要大势已去了呢?
朋友,恕我直言:不是移动开发不行,是你不行。
在移动浪潮前,互联网流量全在桌面,问2008年的时候有条件坐在电脑前上网的人群有多少?再看如今,微信这个季度的活跃用户5亿多。虽然iOS的份额只有百分十几。可是这是没法被忽略的百分之十几,公司但凡是有移动业务确定会作iOS客户端。
因此iOS开发的市场依然存在,并且不是一块小蛋糕。
在移动开发前几年的时间里,想在移动端作功能只有开发Native app这么一条路。可是商业就是如此,随着需求增大最后老是会有提升效率或者一些自动化的方案出来。
相信不少人都有看到相似的文章:你不须要开发一个app只须要一个公众号就能够了。前阵子微信推出小程序没见过世面的吃瓜群众们也是激动了一番。
其实这只是一笔经济帐。如今对于产品而言,有了更多的选择。若是一个产品自己对native的能力要求就很低,固然会选择更便宜的方式了。
除了微信小程序这样嵌入在微信里的方案。由传统web端发起的新技术Progressive Web App也很值得关注。简单的说web也能够有一个方便的渠道生成一个本地的app,得到一些推送、本地存储等一些能力。
稍微有一些无奈的是iOS目前还不支持pwa。苹果去年宣布5年内会支持这个标准,然而除apple外其余厂家已经所有支持,如今安卓上是支持的。因此虽然这件事如今还没发生,可是不久的未来应该会有新的进展。
总而言之,不少移动产品再也不须要开发一个native app了。
可是,凡事不要难过的太早,说不定还有更惨的呢?
React Native VS Weex
我以为那些用RN的人最后都会哭。算了,我知道大家会选择倔强。
先从感情上说。你是相信马云爸爸仍是相信404伯格?
RN如今的硬伤有:
一、包没法增量更新
二、长列表没有优化(灾难性tableview cell没有复用)
三、不支持web
固然了这些不是实现不了,是的,你彻底能够本身实现上面的三个难题。可是若是已经有一个现成的方案呢?
是的,阿里的weex已经走在RN的前面。我不知道是阿里的996更努力仍是马爸爸砸的钱就是多,可是事实就是如此。RN是一个纯开源的项目,因此不可能未来RN有个杀手级的功能weex没有。比的就是谁走的更快,看的更远。
你们要有自信,在移动开发上,咱们的实力已是世界一流了。
因此,对于native不幸的消息来了:即使是native的app,不少功能也要交给前端实现了。这笔帐是很是清楚的:原来须要一前端,一个iOS,一个安卓。如今只须要前端写一次。粗粗一算节省了三分二的成本。可是就像java一开始就吹的run anywhere。什么技术都有它的应用场景,不是能用你们就用这个技术。
但是根据个人观察,在优化了性能问题后,一个app里有很是多的页面确实不须要native写了,用这种weex的方案就能解决了。并且开发效率的提高是如此的明显,未来会有大量的页面再也不须要native写代码发版了。
移动开发者的将来
首先你要接受一个事实,咱们生活在一个科技变革最快的时代。很不幸软件行业又是全部行业变化最剧烈的行业。摩尔定律每18个月计算能力翻一倍。在其余行业什么东西能每两年增长一倍并且持续几十年?
换句话说,选择了软件开发,过去二十年里除了C++,C,Java至今依然大量需求,选择其余技术或者语言都经历了潮起潮落。那么从开始有程序员至今有多少语言呢?因此说,一门技术兴起而后被冷落,若是用十年的尺度来看是很是正常的。咱们的父辈在七十年代也不相信国企会下岗。你也不要抱有熟悉了一门技术能够养活你一生。
你怎么理解 iOS 编程?
某门技术或者某个编程语言说到底只是工具罢了。原来你用筷子,后来你来到了西餐厅,只有刀叉你就吃不了饭了?活该你饿死。
不是iOS没有人要,不少公司如今都在招iOS的开发者,主要是不少iOS的开发者已经没有那种创新的想法跟不上市场需求公司需求,可是本身也没有认清本身,因此被淘汰了才来怪这个行业 ,每一个行业都是会饱和的,趋于平稳的,可是优胜劣汰是一直存在的,因此只要你的技术一直创新符合市场的需求,那就不存在没有人要 ,归根结底,仍是本身淘汰了本身
做为一个开发者,有一个学习的氛围跟一个交流圈子特别重要这是一个个人iOS交流群:638302184,无论你是小白仍是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 你们一块儿交流学习成长!