HackerRank发布了2018年开发技能报告,其中探讨了一些对理解开发人员环境至关重要的事情,本文将摘录编程语言排行部分 。
互联网、物联网、AI , 计算机技术不断迭代升级,传统行业纷纷开始互联网化,并用人工智能武装自己 。在这个潮流下,各个行业开发者都喜欢使用什么编程语言呢?我们各个语言在不同行业的排名 , 看看2018年小伙伴们感兴趣的领域适合学习的编程语言!
01 总体情况:
总的来说,现在的开发语言趋势是:Java,Java,Python,C ++和C,是否后新语言长江后浪推前浪,Go,Rust , 让我们拭目以待吧!
02 汽车 & 运输行业:

在汽车 & 运输行业,编程语言受欢迎度的排名为:Java 、Java 、Python、C++ 、C#
03 计算机硬件:

在计算机硬件行业,C语言更为操作系统时代的老大,当前在计算机硬件行业明显高于其他语言,在底层、中间件应用市场中C和C++两者差距微乎其微,C由于其性能,直接的低级硬件API以及跨多个平台的编译器的可用性而主导硬件 。物联网依然离不开C语言 。排行前三的分别为C、C++、Python.
04 金融服务行业:

在金融服务行业 , 排行前三的分别为Java、Java和Python,其中,Java在金融服务领域已经流行了很多年 。
05 政府部门:

政府部门依然更青睐Java和Java,相较于其他语言,C#在政府机构中更为普遍,排行第三,算是相当不错的成绩 。
06 卫生保健行业:
在卫生保健行业中 , Java排行第一、Java第二、Python第三、C#第四
07 媒体/娱乐/游戏:

媒体/娱乐/游戏行业中,Java排行第一,Java第二 , Python第三,PHP第四
08 零售 & 电商:

在零售&电商行业中,Java 排行第一、Java 第二、Python 第三
09 安全领域:

安全领域,Java 第一、Python 第二、Java 第三、C++ 第四、C 第五
10 技术:

由上可见,不同行业不同编程语言的受欢迎程度不同,其实这主要是由编程语言本身适合干什么工作决定的,开发者对编程语言 应无好恶之心,只有适合不适合 。所以一个语言能不能发展 , 甚至存活主要还是要看它适不适合市场应用 。
虽然如此 , 我们还是能看出一些特点:综合来看,但无论哪个行业,Java,Python,Java,C/C ++都是开发人员的比较喜欢的编程语言 。所以开发者掌握这几张语言是有必要的 。
你好,我从事开发也已经有10多年的经验了,从最开始android开发,到后面的iOS开发,后端开发架构部署都有非常多的经验,对于一款app 的开发没有绝对的语言限制 。
也就是说需要根据公司的业务需求来决定使用哪套方案合适,目的就是为了给公司节省成本创造更多的效益 。无外乎以下几种情况:
跨平台开发,需要同时开发多个平台,比如 h5, android, iOS, 各种平台小程序等,并且是初创公司或者是外包项目 。
- uniapp
这种开发模式优点和缺点都非常突出 。
优点: 极大节省开发成本 , 只需要 1 ~ 2 名前端就能开发一个比较大型项目 , 尤其跟一些ui库的结合比如 uviewUI(使用之前需要调研下,ui库是否能同时支持原生和小程序等,有些ui库无法进行原生渲染), 而且官网还有各种模板,对于学习和开发能提高很大的效率 。

一般情况下只要对体验不是非常高那种,就算要一点体验或者uniapp 没有实现的功能也可以使用原生开发作为sdk 嵌入进uniapp中,对于外包项目可以节约非常可观的支出,小公司也能快速开发投放市场用来试错 , 就算市场对这种app不感兴趣也能有调整的机会,毕竟成本比原生开发少的太多了 。
缺点:同样缺点也极为明显,那就是说一千道一万的体验 , 使用也许没问题,但要是对体验非常挑剔的话还是算了,毕竟是js 渲染,跟原生还是没有可比性 。最重要一点就是iOS的审核比较严格,原生代码必须占有一定比例才能通过审核,机审还是比较牛逼的,目前来说uniapp 仍然可以上架,但苹果要是认为js代码过高,或者有热更新嫌疑的话会不会禁用这种框架的app就不好说了 。
- React Native 也是一种跨平台的方案 。

这种方案其实跟uniapp 差不多,但只能编写android和iOS两个平台 , 优缺点又差不多,国外项目用到的挺多,但国内项目怎么说呢感觉不太适合,国内毕竟平台非常多,如果在现在或者未来一段时间内确认只有android和iOS 版本,那么这也是一个不错的选择,而且在苹果审核的时候也会少一些顾虑 。
- flutter

是google 开源的一套跨平台方案,这个方案个人推荐还是不要使用了 , 现在大厂基本都没在用这个,就算以前用过也改回去了,目前也就闲鱼 app 在某些场景下使用 , 我以前也推广过 但收效甚微,学习成本比较高,同样只有android和iOS平台,感觉跟国内市场水土不服
原生开发,这种比较适合业务比较稳定,能投入一定成本,就算是外包也是那种比较稳定合作的项目,也是现在比较主流的选择方式,纯原生的很少见 , 基本就是混合开发 。
这种优缺点同样的突出 。
优点:可以使用原生的所有api, 能够将体验做得最好 。苹果审核也不会出现任何问题 。
缺点:缺点就是需要投入很高的开发成本,一个大型项目光是原生android,iOS各最少投入两个人 , 还要加上h5相关的开发,不是大公司还真没办法承受这种支出,几乎是跨平台的 3 ~ 4倍的前端投入,这仅是金钱还需要时间的投入,其开发周期会大于跨平台开发 。
如今社会发展的极快,技术也是不断的进步,现在讲究大前端的世界 , 这就要求我们不能局限自己眼下的技术 , 如果只知道android,iOS不懂js,html 或者反过来都是不能成为一个优秀的前端的,因为无论采用什么样的技术 自己都无法独立完成开发,吾辈加油吧~
【大型的app都是用什么编程语言编写的】
技术方式千千万 , 只有一个才是最优解,根据公司的实际情况采取最优的方案 。