2017 年里我读了不少的书,但大多数的书要么是囫囵吞枣,要么是浅尝辄止,认真读完的书非常少。最近也常常感觉到自己的知识深度太浅了。
对于编程类的书籍,我通常的做法是先阅读自己目前需要解决的部分,然后再看其他的部分,这样就导致了我对这个方面没有系统性的认识,知识不连贯。感觉这样下去以后很难有大的发展。
是时候系统性的阅读书籍了。我觉得如果要在系统性学习上下功夫的话,应该做到以下几点:
- 在一个大领域内,至少完整的阅读一本基础性书籍。比如:在渲染这个大领域内,应该完整的阅读完一本《Real-Time 3D Rendering with DirectX and HLSL》这种基础性书籍。
 - 慎重的选择在接下来一段时间内要学习的领域。那么接下来一段时间的课外读物就要专注于该领域,而不是一会儿看这个,一会儿看那个。
 - 阅读的过程中要多实践。这点我自己感觉做得不错。
 
我在这里列举出我认为需要的书籍,括号后面是我当前的阅读进度。会一直更新进度。
- 计算机科学
- 深入理解计算机系统(30%)
 - 现代操作系统(10%)
 - 算法导论(10%)
 
 - 编程语言
- 深入理解C#(50%)
 - Effective C#(40%)
 - C++ Primer
 - Effective Modern C++
 - Lua 程序设计
 
 - 软件开发
- 编码整洁之道
 
 - 游戏数学
- Essential Mathematics for Games and Interactive Applications(40%)
 - 旋度、散度、梯度释义(10%)
 
 - 游戏编程
- 游戏编程模式(60%)
 - Unity & GDC 视频
 
 - 游戏引擎开发
- 游戏引擎架构
 - 垃圾回收算法手册:自动内存管理的艺术
 
 - 计算机图形学
- Introduction to 3D Game Programming with DirectX 12
 - Real-Time Rendering(5%)
 
 - 游戏物理和动画
- 游戏开发物理学(80%)
 - Fluid Engine Development
 - Computer Animation, Third Edition: Algorithms and Techniques
 
 - 游戏AI
- 游戏人工智能编程案例精粹(50%)
 
 - 多人游戏编程
- Mutiplayer Game Programming(70%)
 
 
接下来一年在游戏编程领域的学习会集中在上面列举的方面。当然不是全部都学习,只是说比如,要学习游戏物理的时候,会专注的看上面列举的游戏物理方面的书籍。