自学编程

来源:互联网 发布:乳胶沙发知乎 编辑:程序博客网 时间:2024/04/29 08:06

1)C语言:这个是计算机界的中流砥柱,大多计算机类公司面试都会出这方面的东西,学它不能走马观花,一定要深入到骨子里面去,对于其精髓(指针的使用,内存规划),必须要有非常深的了解,这是学习以后比较底层技术的基础,也是高级程序设计的基础。
推荐书籍:《The C Programming 2nd》,《Prentice Hall-Expert C Programming Deep Secrets》,这两本书是我看的最多的书(加起来大概50多遍吧)。

2)汇编:不要认为它低级和落后,没有JAVA的强悍,没有.net框架下的语言来的方便,但它的确是很重要的,对于一个计算机体系的了解与掌握程度用汇编衡量再好不过了,对于想致力于嵌入式开发的同胞们,底层开发的同胞们,学好它是必要的。
推荐书籍:《PC Assembly Language》( Paul A. Carter November 11, 2003),非常适合入门。

3)算法与数据结构:这个重要性,体现了一个程序的运行复杂程度和合理程度,算法的进步比硬件的进步要重要的多(并不是贬低硬件的发展重要性),一个好的算法的诞生,意味着10倍或者百倍的效率提升,也是程序员水平的根本体现,所以算法和数据结构被称之为程序员的正真能力!
推荐书籍:《Introduction to Algorithms 2nd Edition》,美国MIT大学指定教材,值得你看100遍的书籍!
《Wrox.Beginning.Algorithms.Nov.2005》,也值得一看,也很经典。

4)设计模式:这个不用多说,启发你的模式思维,如何构建一个项目,构建一个合理和优秀的产品
推荐书籍:《Head First Design Patterns》,Head First 系列又一经典之作。

5)操作系统原理:全面了解计算机系统的构成,对于任何的开发者都是必修课,升华水平的难点之一。
推荐书籍:《Operating Systems Principles》,经典教材,非常有深度,很难啃的~。

6)计算机体系结构:如果学习计算机,连体系是什么样子都不清楚,做开发也只是程序打字员!
推荐书籍:《Computer Systems: A Programmer's Perspective》,经典教材,从浅显到难,适合自学

原创粉丝点击