基础方面的书还是要认认真真,仔仔细细的看,下面推荐一部分:
C: 《The c programming langage》
C++:《Thinking in C++》,《The c++ programming language》,《effective c++》,《more effective c++》,《exceptional c++》,《more exceptional c++》,《inside the c++ object model》
Java:《Thinking in java》,《Core Java》,《effective java》,《Java Puzzlers》,《Java Network Programming》,《java concurrency in practice》,《深入Java虚拟机》
windows:《Windows核心编程》,《Windows Internals》
linux:《Advanced Programming in the UNIX.Environment》,《Understanding Linux Network Internals》,《UNIX Network Programming》
network:《TCPIP Illustrated Volume I》,《The Linux Networking Architecture》
我没有在装B,也不是看过以上所有的书,不过上述书籍的确是程序员必藏书,我也只不过是在用到的时候翻开相关章节看看。
然而给大家的建议是,在做项目的时候,千万不能够做什么就只知道什么,与此相关基础知识也应该多看一些。面试的时候也经常遇到这种情况,就是面试者号称做 过socket,问到tcp/ip拥塞控制却一无所知,会简单使用socket client端和server端几个简单函数人太多了,如何保证你能够脱颖而出呢?
其实很多事情我们觉得不可能,但是这个世界上就是有牛人确实做到了,比如英语六级能够考99分(满分100),就是把答案全给我,就让我写作文,我也做不 到啊,再如高考满分750分,山东的状元730+分,也就意味着数理化全对,语文140+,英语140+,我的天,也是把答案给我,就让我写语文和英语的 作文,我也做不到啊。
然而读以上书籍却没有上面两个例子难的不可想象,我所知道的身边的人就有C, C++, linux, network这几个分支全读过的,而且不止一个。