转载

从双11分析苹果及iOS开发目前的处境

目前,iOS开发的水深火热被广大iOS程序员所自嘲。其实不仅iOS开发,涉及整个移动开发、前端开发、web开发都处于水深火热之中。软件开发门栏变低,各行各业转向软件开发。软件开发这行中,也如其它传统行当一样。变成了廉价劳动力,不像若干年前,一提起软件开发,自带高光逼格。

诚然,即使行当里水深火热。但是真正掌握技术的人还是有很好的发展前景。例如:

  • 学历高:985/211 硕士博士等,在某个领域研究深入。学历高,可以从事更加专业的软件开发工作。往往从事水很深的行业。不得不提大数据与人工智能…

  • 资历深:十年从业经验。经验也是互联网这个行当的敲门砖。从2000年那会开始,互联网崛起到现在这个时间段。拥有超过10年经验的人,现在基本上实现财务自由。更多的是对人生,对事业的追求。他们的经验转化为财富。

  • 技术强:有些技术很厉害的人,他们并没有超高的学历,也没有很深的资历。但是他们在技术的造诣上很高。软件工程这门学科,归根结底更多的是实践开发。拥有超强技术,可以解决别人解决不了的问题,可以优化已解决的问题。这样的人才也是互联网必须的。更多的企业喜欢用这样可以为公司技术带来提升的人才。毕竟,互联网公司更需要良好的用户体验。

  • 人脉广:人类社会,现在的互联网环境其实和以前的传统市场又有什么分别呢?还是由人来输出价值,良好的人脉,加上过得去的技术,也会拥有一个良好的工作环境,拿得出手的薪水。所以人脉在任何一个行当都是不可或缺的资源储备。

抛开这些大神的传奇案例。还是回归普通程序员的分析方向。大多数的程序员,并没有高学历、深资历,技术也是勉强能实现业务逻辑,甚至连一些新技术的运用都弄不清楚,人脉也局限在当前的工作圈子里。会迷茫,会失去方向。不知道自己工作的前景究竟在哪里。缺少对职业的基本认识,更多的是随波逐流,跟着大环境修改自己的目标。

下面将在实际方向分析一下iOS开发。

很多人说自己在iOS开发遇到瓶颈,觉得没有可以上升的空间。这类人普遍从事iOS开发在2年到3年左右。也不乏3年以上碌碌无为的人。在这段时间里,使用着重复的技术,做着重复的工作,业务实现加上界面制作,占据平时工作60%以上的空间。他们也会迷茫,然而迷茫之后更多的是回归平静。

iOS开发其实只是Apple公司下的一个方向,首先分析苹果公司的业务线。像Mac、iPhone、Apple TV….,像笔记本程序开发、手机程序开发、电视程序开发、智能家居开发(为时尚早,但是你敢保证苹果不会引领下一个智能家居的变革?)。单单讨论iOS开发就涉及到:Apple Watch应用、扩展应用、原生应用、混合开发(hybrid)…涉及的分支很多。涉及的开发模式也极多,例如:MVC、MVVM、单例模式、新兴的路由模式等等.

传统的iOS开发中还会涉及到开发语言的问题。早期的Objective-C语言,近几年越来越稳定的Swift语言。混合开发使用的C++、C语言,加速软件开发的执行脚本Shell、Python等。综合起来iOS开发涉及的语言技术门类也不逞多让。也是一个间距深度与广度的学科。需要投入大量的时间与经历研究不同的方向。综合起来提升自己的开发技能。这之中常听到的鸡汤就是:掌握了这个技术,即使99%不会用到,只要1%用到了,那么你就是独一无二的

在技术提升的道路上有什么规划呢?接下来,就来围绕几方面对提升来进行规划。

  • 开发语言

    • Java:Java作为近几年常年盘踞编程语言排行榜的状元秀。日常生活中即使用不到,也要作为日常开发语言进行掌握。不追求掌握大多框架的使用,Java语言的基础语法教程是大多数程序员必须掌握的技能。这样即使日后转岗也不是0基础的程序员。

    • Python:伴随着人工智能与大数据,Python崛起。大量的第三方支持者Python开发者高效稳定的开发效率。无论是C、C++等都可以拿过来直接使用。作为一个脚本语言,它的优势被发挥到极限。也是近几年能多次进入编程语言榜单前五的实力。

    • shell:常用的脚本,用来处理一些日常重复的工作。

    • HTML:简单的网页开发,简单的网页了解。HTML的DOM概念,控件基础等等。不求精。

    • JavaScript:也是目前程序员应该掌握的一项技能。JavaScript已经广泛的运用到移动端、服务端、前端开发中。该门语言的地位也可想而知。

    • C语言。首先OC是C语言的超集,当你想优化一个OC程序的时候,部分使用C来实现会提高一定的效率。

    • C++语言。也是不可或缺的,C++更多的是优化与硬件的交互。C和C++在日常开发中可能会接触到的领域,例如:音视频编码、解析等。

    • 为什么C、C++我放在iOS基础语言后第二推荐。要知道,Xcode在你创建文件的时候,是可以便以为C、C++语言文件的。

    • Swift雨燕:更安全的开发语言

    • Objective-C运行时:传统开发语言,运用广泛。运行时特性等

    • 作为iOS开发这2门语言是必备的,基本上ABI的部分是通用的,不排除个别ABI在swift中进行了优化。

    • 基本开发语言

    • 进阶开发语言

    • 高级开发语言

  • 设计模式与架构:

    • 常见的设计模式:代理、工厂、观察者等等

    • 常见的程序架构:MVC/MVVM以及基于其上做的更多扩展。联动路由、hybrid开发等。

  • 算法与数据结构:

    算法与数据结构的结合。考察基本知识,万变不离其宗。就像厨师切菜的基本功一样。软件开发者的基本功就是算法与数据结构。了解算法与数据结构会让你在软件设计当中提升自己的硬实力,做出更好更合理的设计。这里边的水也很深。要了解常规的算法,常规的数据结构作为根基。每一个知识点都会研究好久。 

  • 新特性的开发与使用

    每一项新的小科技都应该去挖掘他们的实际使用,以及与项目相结合。给用户提供更加便捷的操作方式。

    • 3DTouch

    • TouchID

    • Today

    • FaceID

    • 。。。

  • 程序开发进阶:

    • 项目结构优化

    • 国际化

    • 多主题

    • 跳转动画

    • 页面fps优化

    • 数据存储优化

    • 网络请求优化

    • 混合开发

    • 响应式开发

    • 等等在应用中是应用更加完美高大上的小技能


以上,是本人在开发上的一点小理解。接下来转回Apple的相关分析。就双11数据进行的苹果开发前景分析。

今年双十一的数据如下,其中京东与苏宁的自营电商3C更加让人值得信赖。毕竟淘宝体量太大,滥竽充数的也多。无可避免。

  • 淘宝

    • 品牌销售金额榜
      从双11分析苹果及iOS开发目前的处境

    • 品牌销售台数榜
      从双11分析苹果及iOS开发目前的处境

    • 单品销售金额榜
      从双11分析苹果及iOS开发目前的处境

    • 3000元以上销量榜
      从双11分析苹果及iOS开发目前的处境

  • 京东

    • 销量
      从双11分析苹果及iOS开发目前的处境

    • 销售额
      从双11分析苹果及iOS开发目前的处境

  • 苏宁

    • 双线销量top10
      从双11分析苹果及iOS开发目前的处境

    • 各价位销量排行
      从双11分析苹果及iOS开发目前的处境

综合来看,苹果在高端销售与销售额、销售数量上都有自己的优势。高端方向,苹果具有更加广阔的空间。毕竟定位在那里放着。结合数据来看,苹果用户数量仍然在增长。伴随着用户数的增多与应用质量的需求,iOS开发市场还是具有一定的战术地位。在短期内不会被市场淘汰,希望在过饱和的iOS开发市场能迎来属于自己的平稳发展期。

本文纯属个人观点,与广大iOS开发工程师无关!蜜汁尴尬/(ㄒoㄒ)/~~

[原文链接](http://wangjiawei.wang/2017/11/13/从双11分析苹果以及iOS开发目前的处境/)

正文到此结束
Loading...