计算机专业应该读得书
来源:互联网 发布:国际象棋棋谱软件 编辑:程序博客网 时间:2024/05/17 01:38
列一下我所认为的,你面试微软前必须要读的十本书:
- Code: The Hidden Language of Computer Hardware and Software (《编码的奥秘》)
- Computer System: A Programmer’s Approach (《深入理解计算机系统》) / Windows via C/C++ (《Windows核心编程》 / 《程序员的自我修养》
- Code Complete 2(《代码大全》)/ The Pragmatic Programmer (《程序员修炼之道》,我也把这本书称为《代码小全》)
- Programming Pearls (《编程珠玑》) / Algorithms / Algorithm Design / 《编程之美》
- The C Programming Language
- The C++ Programming Language / Programming: Principles and Practice Using C++ / Accelerated C++
- The Structure and Interpretation of Computer Programs (《计算机程序的构造和解释》)
- Clean Code / Implementation Patterns
- Design Patterns (《设计模式》) / Agile Software Development, Principles, Patterns, and Practices
- Refactoring (《重构》)
(注:1. 以上同一条目下用“/”隔开的表示任选,当然你也可以都读了,相信我,时间是足够的。2. 读这些书并不意味着逐字逐句从第一页读到最后一页——当然你也可以这么做。怎么是聪明高效的读法,可以参考我之前写的关于如何阅读和查找/鉴别书籍/资料的博文)
注意:以上是我个人认为你面试微软开发职位前必须要读的10本书,它不代表我的雇主的观点。它也只是一个初步的书单,肯定会受到我个人经验和眼界的限制。欢迎大家提意见。
此外,IT不同子领域的必读书单可能千差万别,所以在发布之前我把这篇文章发给了一些朋友,他们给出了自己的书单(你是不是能看到一些有趣的共同点呢):
云风(中国游戏编程先行者,前网易游戏部门资深程序员,简悦创始人):
如果面试,我会挑以下的我自己读过的书,让人选择他也读过的部分,再了解他对这些书的理解。这些书其实本质上就是两类,对所面对的东西(程序语言也好,操作系统也好,底层设施也好)本身的理解程度。以及另一类:对设计思想和原则的理解:
- C++编程思想
- Effective C++
- 深度探索C++对象模型
- C++语言的设计和演化
- C专家编程
- C陷阱与缺陷
- C语言接口与实现
- Lua程序设计
- Linkers and Loaders
- COM本质论
- Windows核心编程
- 深入解析Windows操作系统
- 程序员修炼之道
- 代码大全
- UNIX编程艺术
- 设计模式
- 代码优化:有效使用内存
- 深入理解计算机系统
- 深入理解LINUX内核
- TCP/IP 详解
冯大辉(丁香园CTO,贝塔咖啡创始人):
- 软件随想录
- 黑客与画家
- 重来
- UNIX编程艺术
- 编程人生
洪强宁(豆瓣技术总监):
StackOverflow上有一个程序员必读书单帖子,这里仅列出top10,更多参考这里。
- Code Complete 2
- The Mythical Man-Month (《人月神话》)
- Code: The Hidden Language of Computer Hardware and Software (《编码的奥秘》)
- TAOCP (不解释)
- The Pragmatic Programmer (《程序员修炼之道》)
- Design Patterns (《设计模式》)
- The Structure and Interpretation of Computer Programs (《计算机程序的构造和解释》)
- Refactoring (《重构》)
- The C Programming Language
- Introduction to Algorithms (《算法导论》)
张峥(微软亚洲研究院副院长):
- Algorithms (by Sanjoy Dasgupta, Christos Papadimitriou and Umesh Vazirani)
- Data Structure and Algorithms
- The C Programming Language
- The Design of the UNIX Operating System
- Compilers (龙书)
- Computer Architecture: A Quantitative Approach
- Flow
- Outliers (why hard work and luck are both important)
读好书是如此的重要,因为好书往往带领你去到更好的书,更大的世界。
- 计算机专业应该读得书
- 计算机专业应该看得100多本书-2010-[转]
- 计算机专业研究生应该怎么读
- 计算机专业到底应不应该读研?
- 计算机专业应该学习什么
- 计算机专业应该学习什么
- 计算机专业的学生应该看的几本书
- java应该看得书和敲得代码
- 学习C++ 应该看得书
- 计算机应该看得100本书
- 计算机专业学生应该学什么
- 计算机专业学生应该学什么
- 计算机专业学生应该学什么
- 计算机专业生应该学什么
- 计算机专业学生应该学什么
- 计算机专业学生应该学什么
- 计算机专业学生应该学什么
- 计算机专业学生应该学什么
- IE页面关闭前弹出窗口 是否保存信息
- [oracle] MySql 与 Oracle 的迁移 1
- v4l2图片获取
- sql server各个数据类型的优先级
- 手把手教你写专利申请书·如何申请专利
- 计算机专业应该读得书
- 装声卡驱动时出现英文VIA AC97 Audio Chipset is not found on this system!的解决方法
- 黑马程序员--SQL Server 中将日期转换成中文格式
- linux下ImageMagick,Jmagick安装说明(linux64)
- 计算机能思考吗?图1专题9:“计算机会不会有创造力?”
- Linux GPIO - gpio.c(GPIO各个接口的实现)
- IE6兼容问题
- 去掉sudo 每次需要密码
- Hibernate学习笔记1