要说计算机现在什么最火,无异于网络。看看各大计算机网站,满眼尽是网络工程师,什么IP啊,路由啊,虚拟机啊,总之,操作性的计算机技能牢牢占据了半壁江山。这些技巧当然重要,但是也不能没有软件开发性技能吧,咋们亲情奉上C/C++工程师成长道路,为立志成为软件开发工程师的同学们提供指导。
第一、成为C/C++工程师,需要学习哪些内容?
从速成的角度,成为C/C++工程师的成长图如下:
上面已经列举了很多课程,但是我仍然认为是“速成”,因为我认为:
1、学习计算机编程,真的不是一朝一夕就可以做到的,需要学习很多的基础和专业课程,而这些课程在上图中并没有显示。比如《计算机组成原理》、《汇编语言》、《编译原理》、《运筹学》、《计算机图形学》、《密码学》等等,还有很多,这里不一一列举了。这些课程培养的是素质,是一种气场,你要想在百家争鸣的计算机界站稳脚跟,就必须有这么一种气场,有这么一种自信,无论计算机发展多么的快,你都能抓住他们的核心。
2、学习计算机编程,真的不是只学会计算机专业知识就可以的,它最需要跨界,需要学习专业的知识。软件编程,只需要计算机知识。编好软件,就必须需要其他知识。举国外的例子(前一段时间我带着小孩去美国大学游,感触很大),美国的常青藤大学,一般都需要学习四个专业才能毕业。比如斯坦福大学计算机专业就必须要学习人类学专业才能毕业;耶鲁大学接待我们的女生是物理系的,她还学习了计算机、金融和艺术专业,即将去华尔街摩根投行工作。当然中国的国情不同,但是大家多几门兴趣爱好,总是好的。(比如鄙人,除了计算机,还懂金融,所以成为了湖南大学金统学院的研究生导师)。
3、其实众多语言软件开发工程师的学习成长路程相差无几,上面很多课程,Java工程师照样需要学习。
4、很多大学一般会开设上图中圆形部分的课程,而其他课程则需要学生自学。
第二、C/C++语言的从业方向
要说以前那真的啥都能行,现在缩水很多了。最常见的是:Unix/Linux服务器程序设计(C语言)、嵌入式程序开发(C语言)和Windows桌面程序设计(C++),当然如果你特别牛皮的话,也可以进入微软、INTEL、NBA等大型公司的研发部门。