首先现在PHP很火,我不是盲目的去要搞C++开发的。我是有机可趁。
我是大专学历并且不是计算机专业(电子商务),毕业后自学PHP入行有5年了。以前在学校也学过C,和一些网络相关的课程,不过都没学深。
最近我接手到了公司的一个C++项目,凭借工作和学习经验很快就学了C++的基础。一开始在老司机的带带下改业务逻辑完成工作,到现在自己通过gdb调试解决BUG需求完成。算是入门了吧。目前正在学linux环境C。
于是我有了野心,想趁此机会转型为C/C++程序员。但我不是科班出身计算机基础薄弱。主要是算法思维,网络协议等。这些基础知识只有了解的水平。想搞C/C++估计就不同了,想搞C++开发估计还得继续学习。
好了,我的问题是:
我去招聘网站看了一下C++工程师的要求, 基本全是本科+计算机专业。也就是说就算我学得好也可能缺少一块敲门砖?没有科班背景估计会导致我学好了也难以找到C++的工作。
.net
php
html/js
oc
...我都搞过。如今在做Unix下的C程序开发。语言本身不是问题,但是Unix的基础概念、计算机系统基础、各种可移植性问题、各种构建系统,这些确实有很多难点,而且复杂。另一方面CC++标准化力度不够,你会发现第三方库往往不一定能直接引入项目。所以,门槛确实略高。推荐三本书必看:Unix环境高级编程
Unix网络编程
深入理解计算机系统
PS: 个人觉得选C++不如选java,C++目前比较鸡肋。实在要追求底层和效率,C更合适一点。