`
从此醉
  • 浏览: 1089775 次
  • 性别: Icon_minigender_1
  • 来自: US
社区版块
存档分类
最新评论

程序员将面临再次洗牌,你作何选择?

    博客分类:
  • Java
阅读更多

程序员将面临再次洗牌,你作何选择?

 

记得那大概是2009年,Java因为在网络互联网开发和跨平台的优势,开始盛行。当时几乎铺天盖地都是对Java语言的褒奖和对C/C++的贬低,以至于微软都得整出C#来对抗它。虽然很多文章的观点很幼稚,分析方向也不对,甚至根本对Java特性都没搞懂。然而,对很多初涉编程的程序员来说,这些文章对他们还是产生了相当深远的影响,外加一些小企业转向的灵活性,引领了学习Java的一个高潮,这可以说是程序员在语言选择上的第一次洗牌。

再往后,乔布斯的出现,从感官和定义上改变了人们对手机的认识,智能手机开始在人们的生活中占据越来越主导的地位,基于MacOSObject C 和基于安卓OSJava开始大力发展,逐步击退C++,进入到编程语言排行榜的前三强。

我从开始至今,一直选择C/C++而没有更换过,其原因有四。首先:这是因为在第一次洗牌开始时我已经从事了将近五年的编程开发,对C/C++语言有了较为深入的研究,随着对其精髓的一步步窥探,我是越来越爱这门语言,其他语言的吸引力也就相对笑了很多,而且我也深信他会长时间在语言市场上占据一定的空间,所以我没有必要去更换语言;其次:随着编程经验的逐步增长,在每个项目中地位的不断提高,给予项目的关注也从点到面再到整体,对技术掌控能力也在逐步提高,要思考的问题和思考方式也已变换,已经超越了语言本身;再次:一个大的平台,并非用一种语言编写,我要做的是根据项目的不同需求和功能特点,从编程效率、运行消耗、性能考量,依据每种编程语言的优缺点,拍定用不同的语言来进行开发,以达到最佳开发效率和质量保证,很多时候,除了核心代码架构和构思外,也不需要自己亲力亲为的去写大量代码。因此也就更没有更换语言的想法。

而更多的程序员是:要么刚加入程序员大军一两年,要么正准备加入程序员行列,亦或编程仅仅是为了生计,没有太多的兴趣,那么这些程序员,在编程语言的选择上,就必然会经历一番折磨,当然,如果不想从事程序开发另当别论。

为什么说程序员将再次面临洗牌呢?首先要明白的是:每种编程语言的背后,归根结底是和支撑他的公司有很大关系。Object C之所以能火,那时因为苹果,C#是因为微软,Java是因为谷歌,数据库脚本语言是因为Oracle。所以这几个公司只要不会倒闭,那这些语言就不会消失。当然也有不完全依托一两家公司的。如C++虽然没有所具体依托的公司,但是他却是很多语言依托的基础。基于Linux的开发,特别是服务器开发,他还是具有当仁不让的优势的。C++虽然竞争不过火爆的JavaObjectC 甚至C#,但因为有IBMHP、华为、中兴等做服务器的公司的存在,也因为Linux系统在服务器方面德天独后的优势,C++的市场占有率在下降到一定程度后就会稳定。C语言依然会强势则,因为嵌入式上没有操作系统,驱动开发要相对接近底层的语言,没有操作系统的地方就是他的用武之地。不可能任何科技领域的东西都非要用操作系统,比如电饭锅、电瓶铛等而生产这些的厂商不在少数,因此它仍会强势存在。

既然和公司相关,公司会千方百计的发展自己,打击敌人,所以这些语言支撑背后的公司的兴衰,也就决定了语言的兴衰。

在理解了上面的这些分析后,再回到核心话题上。

首先:微软最近的动作频繁,Win10马上就要发布,该系统的强大在于,他的上线发布,将使Windows系统第一次真正的像苹果的MaxOS一样,在PC、平板、移动终端通吃。这意味着应用程序几乎可以直接在这三者上面运行。PC机一直是Windows独霸的场面,外加Windows系统是可以向任何公司授权,而苹果为了自我更大的盈利,将MacOS系统紧握在手,几乎不怎么对外开放。何况MacOS是给予Linux系统开发而来的,针对PC机来说,对用习惯了Windows系统的用户来说,相当不习惯苹果的MacOS。依据在PC上的优势,微软借助Win10的特点,在平板上的发力会越来越大。更何况苹果在移动领域本身就是定位为高端市场的,这就很难有扩大的可能,随着用户的饱和和后续产品的乏力及无特点,定会有一些人抛弃苹果,转投WinPhone的怀抱,毕竟他也是高大上。

其次:微软收购诺基亚手机业务,推出了Lumia手机,从此有了自己的手机业务,苹果相对于微软的优势几乎荡然无存了。诺基亚,就仅仅这个响当当的牌子,就是质量和性能的保证, 用这样的手机绝对不会被人鄙视为山寨。而Androd系统,虽然他的系统底层也是基于Linux,但因为要用Java进行开发,就会引入虚拟机,而为了好看的Ui,必然内存虚耗大,性能和内存消耗以及虚拟机这些原本是优点的东西,却同时成了其固有的缺点。一个安卓的2G内存的机子,在使用平顺性上几乎连WinPhone 512M的都不如,外加因为系统而引起的应用程序打开关闭后并非真正关闭,还在虚耗内存和流量。这些造就了安卓操作系统本身就不高大上,而目前市场上,几乎80%的智能手机又都是安卓的,用户越多负面影响就会越大,缺陷也会越发扩大。如果一直用安卓的手机,必然会烦,下次换手机,大多数会想换个操作系统来体验吧。苹果遥不可及的卖肾名声,让大家首先想到的肯定是WinPhone系统的手机。而对于其占有率已经到了极限的安卓,物极必反,接下来肯定会下降无疑,此消彼长,WinPhone的市场占有率就会越来越高。

再次:微软宣布VS2015不但会同时支持MacOSLinux Windows三种系统下的软件开发,而且会支持安卓应用的开发,这在IDE市场,引起了渲染大波,有夸有骂以骂为主,想必这些人在骂的时候,已经明白开发语言此消彼长已不可避免了。特别是Java,其开发者的奶酪会被大踏步分割。原因是,除了微软发布VS2015外,安卓应用的饱和,外加谷歌安卓之父的出走,谷歌、三星、小米、华为等推出的由安卓演化来的新系统,都对其造成了不小的打击,让从事安卓应用开发的人无所适从。又有新闻说华为、中兴、三星甚至小米等都将推出WinPhone系统的手机,这样,安卓系统占有率下滑成为必然并且下滑应该还不小。

最后:仅仅2014年一年,给予WinPhone系统开发的程序员从20万变为了57万,应用软件从不足15万个到现在的近40万个。那如果Win10系统通用,程序员会更多,应用也会更多,体验WinPhone的用户也会随着应用的增加而增多。这必然造成更多的公司加入到WinPhone系统下App的开发,而这些公司在语言选择上,恐怕会优先考虑C#吧。个中原因,不肖多说。这对使用一种语言相对较长时间的人来说,不会造成太大影响,但对初学者或者刚刚开始编程语言不久的人来说,可能会更倾向于选择C#了。

综上所述,因为操作系统在移动终端的市场占有率的变化,程序员在编程语言的选择上,将再次面临洗牌,未来几年,格局应该会逐步演变为这样的:安卓系统市场占有率第一,但会比现在下降很多,WinPhone系统超越Iphone上升至第二,三强鼎立的局面将会形成。

3
10
分享到:
评论
9 楼 zhuchao_ko 2014-12-04  
这个世界上只有两种语言 一种没人用的 一种被骂 的 我一直相信这种说法

至于.NET的开源和发展 是的微软的步子很大很开 但是你看过源码吗

我同事说 尼玛 连句注释都没有 我只能 呵呵
8 楼 ljmomo 2014-12-01  
微软 手机  现在 已经不挂 诺基亚logo 。还有就是 微软的高端手机 也不便宜。现在是个硬件过剩的时代。
7 楼 benwg 2014-12-01  
楼主,MacOS是基于BSD系统的,真怀疑你是否从事多年的软件开发。
6 楼 cwqcwqmax9 2014-11-30  
说的  没道理  照这样说 人家 汇编 早挂了
5 楼 abc08010051 2014-11-30  
这些说法确实太片面了,按照楼主的说法,根本没有人能跟微软竞争了
4 楼 系统程序 2014-11-30  
虾扯蛋。。。。扯虾蛋。。。。
3 楼 icemaya 2014-11-30  
兄弟想的有点多了。 c#得买微软的操作系统和数据库,这一点就搞的大公司不可能用他了。
2 楼 gefyuan 2014-11-30  
扯虾蛋。。。。
1 楼 三单联咖啡色 2014-11-30  
虾扯蛋。。。。

相关推荐

    洗牌算法思路讲解(程序员面试题)

    本文将探讨三种不同的洗牌算法思路,它们各有优缺点,适用于不同的场景。 首先,我们来理解洗牌算法的核心目标:生成一个足够随机的序列,确保每个元素在序列中的位置不可预测。在扑克牌的场景中,这意味着每张牌在...

    程序员怎么选择发展方向

    随着技术日新月异的变化和个人能力的不断提升,每位程序员都会面临多重选择。本文旨在从不同的角度探讨程序员可以选择的职业路径,并深入分析每条路径的特点与挑战。 #### 专家级程序员 对于对特定技术领域充满...

    程序员如何防止颈椎病??

    程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病程序员如何防止颈椎病...

    程序员的九重境界,你是第几重?

    程序员的九重境界,你是第几重?看看这位高手写的有关程序员的境界。从第一层到达最高层,你是第几层?请进来看看。程序员 java 境界 php SSH struts

    程序员表白神器 love-master

    程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 程序员表白神器你值得拥有-程序员表白神器你值得拥有 ...

    程序员危机如何破?你确定要写代码吗?

    程序员危机如何破_你确定要写代码吗_

    什么样的人适合做程序员?程序员应该具有什么样的素质程序员四大禁忌

    在IT行业中,程序员是至关重要的角色,他们负责创建和维护软件、应用程序以及各种技术解决方案。那么,什么样的人适合成为程序员呢?程序员应具备哪些素质?同时,又有哪些禁忌需要避免呢? 首先,程序员需要耐得住...

    程序员教程(pdf)

    《程序员教程》是一本针对初学者和有一定经验的程序员精心编写的教材,旨在全面介绍编程基础...通过阅读和完成书中的任务,你将逐步成长为一名合格的程序员,具备解决复杂问题的能力,为未来的编程生涯奠定坚实基础。

    程序员求职专用简历模板

    在程序员的求职过程中,一份优秀的简历是至关重要的第一步。这两份专门为程序员设计的简历模板——"简历模板二(明快).doc...记得定期更新简历,保持其时效性,这样你就能随时抓住机会,顺利开启你的程序员求职之旅。

    程序员记事本,供程序员保存经常用到的代码

    8. **个性化设置**:提供多种主题和字体选择,满足程序员个人喜好。 在【³ÌÐòÔ±¼Çʱ¾】这个文件中,我们可以预见到它包含了程序员在工作过程中积累的各类代码示例和经验总结。这不仅有助于个人的成长...

    程序员专用 编程输入法

    标题中的“程序员专用编程输入法”指的是专门为程序员设计的特殊输入法工具,旨在提升编码效率。这类输入法通常具有以下特点: 1. **快捷代码输入**:程序员输入法能够通过快捷键、组合键或者自定义短语来快速输入...

    程序员简历程序员简历.pdf

    程序员简历程序员简历.pdf

    程序员的人生该将如何规划

    在职业生涯初期,程序员们往往会面临目标设定的问题。一个清晰明确的目标能够帮助他们更好地规划自己的职业道路。这些目标可以是短期的,比如掌握一门新的编程语言或技术框架;也可以是长期的,例如成为某一领域的...

    java程序员面试交流项目经验

    java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流项目经验java程序员面试交流...

    程序员给女朋友用HTML5制作的3D相册

    在这个项目中,程序员利用Canvas API绘制出3D效果,使得相册中的图片可以在多个维度上旋转和展示,增强了视觉效果。 其次,CSS3也是实现3D效果的关键。CSS3引入了3D转换,允许开发者对元素进行旋转、缩放和平移等...

    一个程序员的奋斗史

    标签表明文章将聚焦于程序员的专业成长,尤其是面临职业选择和技能提升过程中的种种问题,以及个人理想与现实的碰撞。 在文章部分内容中,段伏枥的形象是一个普通到不能再普通的大学毕业生,成绩平平,生活无常,...

    程序员项目交接文档

    本文档概要将对程序员项目交接文档的主要内容进行概要介绍。 人事模块是程序员项目交接文档的重要组成部分,它涵盖了人事管理的所有方面,包括人事数据的存储、查询、修改和删除等功能。在该模块中,程序员需要详细...

    java程序员面试简历 WORD 模版

    下面我们将详细探讨如何利用提供的"JAVA 个人简历模版"来创建一份吸引人的Java程序员简历,并理解其中包含的关键知识点。 首先,标题"java程序员面试简历 WORD 模版"表明这是一个专门为Java程序员设计的Word文档...

    程序员个性电脑桌面壁纸

    【程序员个性电脑桌面壁纸】这一主题,其实涵盖了两个主要方面:一是程序员文化,二是电脑桌面壁纸的个性化选择。这两者都是IT行业中与个人工作环境和精神风貌紧密相关的元素。 首先,我们来谈谈程序员文化。程序员...

Global site tag (gtag.js) - Google Analytics