内外兼修
《操作系统概念》
俞甲子《程序员的自我修养——链接、装载与库》:这个真是C+ +/C程序员必看。讲dll、lib、堆、栈的原理, linux和windows对比分析
《软件调试》张根奎
BS的《The c++ programming Language》(中高级)
《人月神话》
《设计模式 可面向对象软件基础》(GOF)
《深入探索C++对象模型》
飞升必备
《Windows程序设计》、《windows编程V5》、《深入浅出MFC》
《现代操作系统》
《代码大全》(软件工程)
《敏捷开发》
《UNIX网络编程》
《TCP/IP》《算法导论》
成神之路
《浪潮之颠》
《编译原理》
Moo《C++沉思录》:高级,没到一定的分数不建议看
侯捷《STL源码剖析》:第三本书,中级,深入STL
《C++反向汇编和逆向分析》钱林松
不要只关注一些特殊的编程语言和框架,要让自己的技术技能多样化,像《Structure and Interpretation of Computer Programs》(免费在线阅读 http://mitpress.mit.edu/sicp/full-text/book/book.html)、《Clean Code》和《The Pragmatic Programmer》这些书籍都比较好。
5、如果你对上面一条只是一眼掠过,最好还是再读一下!读读SICP,看看视频讲解,这些训练会让你成为一名出色的程序员。
至少要学一门冷僻的编程语言,它会让你学到很多从像Java这样主流的语言中学不到的东西。我自己比较偏向于Lisp语言,《Land of Lisp》这本书非常棒,为你提供一种有趣的方式来学习Lisp
将项目发布到网上,将源代码放到Github上,也可以经常写一些自己的学习心得,放到博客上。这样你做的项目就会公诸于众,好处就是今后能让招聘单位对你有好的印象,尤其是在面试的时候。
1、能力代表现在,学习力代表未来;
2、确定方向与可执行计划;
3、详细制定软件成长学习计划;
4、书籍;
5、语言只是工具,软件是工程、思想;
6、总结与反思,形成个人的源码库;
7、理论与实践,内外双修;
8、心态、视野广;
9、参加开源项目;
10、知识面;