在C++的圈子里混了三年了,算是有点经验,也跟后来者提供点有用信息吧!
首先谈一下C++吧!
关于C++怎么样我不是没想过,我想得比较多,但是想着想着就不敢想了,虽然我以后用C++,但是,我想站在一个客观的立场上,说实话对想学C++的程序猿不是很有利,我自己也感觉写出来一定会被很多人抨击。
我不说,大家自己想,学C#和Java容易,还是学C++容易?
大家别耍酷啊,其实我当初就是不知道为什么学C++,就是学了,现在也不想转也没那个时间和精力去转,不过,要是站在商用立场,站在老板的立场,早出人才,快出人才,出便宜人才,Java和C#,PHP也算,就是不能算C和C++,为啥,学起来费劲,程序员学习成本高,自然价格也高,同样的功能,用Java实现,程序员满地跑,用C++实现,老板抱着程序员大腿哭,恐怕程序员都未必肯应聘,太少啦,也太贵啦。
在这里我也声明一句,我一点歧视Java和C#这些程序员的意思都没有,仅仅是请大家比较一下,Java、C#程序员多,还是C++程序员多。
不过,这反过来证明了另外一个问题,大多数中小型企业,在研发上投入不会很大的企业,急于做出成绩,快速获得市场表现的企业,在同等条件下,即Java和C++都能满足需求的时候,会选择Java、C#、PHP等语言作为公司的主流开发语言,而不会选C++。 而C++呢,虽然端着架子,但是,由于没有太多公司选择C++作为开发语言,因此,反而市场越来越小,找不到工作,即使找到,也得降价销售,这就是市场规律。
C++程序员,主要就是不好找工作,工作机会太少,没有太多的选择空间,而Java的朋友们,由于选择空间大,其实很好谈价,而且薪水也比C++高很多。
再谈谈工作方向吧!
只知道编译器很多都是C++写的,大型的操作系统是C语言写的,但是这些东西都已经稳定,而且需要很少的人都能维护。
C++主要是用在图像和游戏开发,服务器开发等。现在领域越来越少,公司很少,选择范围很少。做图像的算法工程师还没写HTML工资高,在游戏和服务器开发中,C++受到C#,JAVA严重冲击,前途很惨淡。
但是也很难讲,C++比Java主要就是速度,但是,很多网页游戏其实用PHP已经够了,这个,C++程序员的工作空间也受到挤压。
在嵌入式平台以及Linux下,C和C++又是对立的两个门户,一些一直坚持用C的怪兽那是真的很怪兽,C++的不断发展,让门槛变得越来越低,社会上出现了好多半吊子C++程序猿,没有一点代码规范.....
其实,Java等脚本语言,针对C++最主要的优势就是没有很多费解的东东,学习曲线低,程序员容易学出来,还有就是底层已经处理了很多细节,上层更多地专心与用户的业务,更容易受到用户的青睐,还有就是,不处理复杂数据结构,大家都调用基本库,程序成功率高,bug率低,开发成本低,公司容易赚到钱。
说白了,Java相对C++,不是技术在推动,而是钱在推动,所以,C++必败。 纯UI,纯数据应用,其实已经被Java和C#牢牢占据了,C++也没什么事了。
学习方向!
估计看过上面我写的一些话,很多人就该放弃学习C++了,我也后悔当初为什么选择了C++,但是我坚信自己能一直走下去。
不过还是要说一下学习方向啥的,对出初学者我建议C++基础要学,但是,出于好找工作的目的呢,我建议还是学点其他好找工作的语言,等到以后有机会可以再转去C++,你要懂得不要毕业了还要找父母要钱。
如果这辈子就要做一个C++程序员,(我总觉得纯正的C++程序员有点曲高而和寡,不好找工作),我建议多学点东西,不要忘记黑窗口,买本C++ Primer Plus ,没事的时候翻两眼,熟练掌握Windows程序设计,客户端方面建议不要碰MFC,而直接学QT,对于各种数据库的访问做到滚瓜烂熟,现在的我也就会一个增删查改,网络编程,可以看一下现在电脑上的软件哪个不需要网络,基本的数据结构和算法这不说了,要熟悉的,想找一个好工作的话还是直接入手项目吧!
这样起码能帮助你在毕业后,能找到饿不死饭碗,当然还有一步就是面试技巧,这在下一篇中我将会讲到。
总结一下吧!
但是不可否认的一点,一些大公司里面还是需要C++的,一个大公司不可能没有C++团队,虽然不知道他们在公司里主要做什么,但是他们就是不可缺少的。
嗯,还是那句话,程序员就是程序员,写得出程序就是程序员。程序员不要在自己脑门上加太多修饰,什么C++程序员,什么Java程序员,什么Windows程序员,什么Linux程序员,这些加了修饰的程序员,其实不容易存活的。 要能掌握程序设计的通理,什么语言,什么平台,掌握了基本的程序设计道理的时候,其实都一样。
C++不是永恒的,C不是,Java也不是,C#更不是,没有永恒的语言,没有永恒的平台,只有永恒的程序设计技术。
原创: 叫我张晨晨好了
出处:微信文章
网友评论