程序员修炼之道--自学编程从小白到大神

我们自己学习编程过程中常常缺乏指导,走了太多的弯路,因此浪费了很多时间。如果可以让你修炼的过程走的更加顺利,为什么不呢?我今年研究生刚毕业,初入职场,正是需要好好规划自己的职业发展道路。作为一名软件开发工程师,最基本的要求就是具备一定的编程基础。本文将介绍自学编程从小白到大神的修炼过程应当掌握的技能及推荐书单。

软件类学习推荐

上面是海格通信研究院的伍思廉专家建议初入职场软件工程师必读的书籍,此书单非常值得借鉴,几乎每一本书籍都值得我们去精读,实践。

下面是给以后想从事IT工作学弟学妹们推荐的书单,适合于所有大学生,包括计算机专业和非计算机专业。非计算机专业编程需要额外学习两门基础理论课,已经标明。此推荐书籍和学习顺序是针对编程学习而言,不是针对计算机专业而言。学习这些书籍后,对于从事软件开发行业,则可以起步更快,而不是等到毕业后才知道。非计算机专业可能转行到软件开发的更是需要学习了。这个安排顺序是以基础学习为基础,不断地加深的学习顺序。每一个课程都是需要消化吸收的,需要动手编程的,不是简单看一遍即可。我们在大学课余,让自己变得更强大,而不必毕业后处处碰壁或者花巨额学费培训。大学的时间也很充足,完全可以自学完毕。

大一上:

C Primer Plus

说明:大一刚进入大学,对于大学是陌生的,需要一定的时间熟悉。只需要自己学好C语言即可。

大一下:

VS使用

C和指针

说明:学习编程需要熟悉开发工具,这是编程的基础。而C语言学习也需要加深。

大二上:

数据结构C语言版

C++ Primer Plus

说明:学习了基本的编程语言后,需要开始了解数据接算法基础了。同时,也需要学习面向对象的编程语言了。C++将作为主要的语言推荐,作为修炼大神必备语言基础。

大二下:

Windows程序设计

Linux系统使用

标准程序库STL

说明:语言学的差不多了,就需要了解操作系统的编程。Windows系统的使用则不必专门学习了,接触的多自然也熟悉。但是Linux系统的使用则需要额外的学习一下。然后对于编程需要进一步的学习程序库的使用,学习使用程序库提高开发效率,打好基础。

大三上:

计算机操作系统(非计算机专业自己学)

Boost入门

数据结构C++语言版

Windows核心编程

说明:学完了C++,因为数据结构是软件开发非常中重要的基础,所以再用面向对象思想来学习加深数据结构。在实际开发过程中,很多时候都是用面向对象的方式来做的。然后就是学习操作系统的基础理论和加深Windows编程,再学习一个程序库Boost,以后将会普及,需要提前学好。

大三下:

计算机网络(非计算机专业自己学)

MFC程序设计

Linux编程

说明:计算机网络也是必学的计算机理论,然后接触实际的开发库MFC。作为Windows开发MFC还是需要学习的,学会使用,然后学会MFC的设计思想等,其他框架其实想通的。Linux也需要开始编程了。

大四:

C++编程风格

C++编程惯用法_高级程序员常用用法和技巧

设计模式:可复用面向对象软件的基础

大道至简-软件工程实践者的思想

说明:大四开始面向毕业了,需要学习更多的开发规范,提高编程质量,提高解决问题的能力,需要学习一些高级层次的软件开发思想,毕竟前面已经有很多基础了。这个可以再根据个人的实际情况扩展。