通过重构技术精通编程

不要只停留在调用 API,开始动手构建它们吧。

大多数开发者每天都在使用框架和库。这些工具能提高工作效率,但它们也隐藏了软件的工作原理。你看到了结果,却忽略了背后的逻辑。

“从零构建 X”(build-your-own-x)的方法改变了这一点。你通过从头开始重构工具来学习深层概念。你这样做不是为了生产环境,而是为了学习。

从底层构建工具可以帮助你:

  • 理解复杂系统。学习协议和数据结构的工作原理。
  • 提升解决问题的能力。将大问题拆解为小部分。
  • 学习基础知识。掌握内存管理和算法。
  • 建立信心。向自己证明你确实理解了这项技术。
  • 更好地进行调试。因为是你亲手构建的,所以你清楚系统会在哪里出错。

从小项目开始。选择一个你经常使用的东西。

初学者项目构思:

  • 一个微型 HTTP 服务器:学习 sockets 和路由。
  • 一个简单的 CLI shell:学习进程执行。
  • 一个基础的键值存储 (key-value store):学习文件 I/O 和哈希表。
  • 一个 Markdown 解析器:学习解析和语法树。
  • 一个版本控制系统:学习哈希和差异对比 (diffing)。

挑选一个项目,今天就开始吧。

来源:https://dev.to/kelvin_kariuki_20f4bec616/master-programming-by-recreating-your-favorite-technologies-from-scratch-1h8