开源程序架构和《500 Lines or less》资料

http://top.jobbole.com/5133/

《500 Lines or less》是开源程序架构系列的第四本,和系列中的其他书籍一样,所有的写作素材遵循创作许可共享协议,所有的代码遵循MIT许可,所有的收入都将捐给国际特赦组织。

使命

所有建筑专业的学生都会在求学期间学习居家建筑、公寓、学校以及其他类型的建筑的设计。同样的,每一个程序员也应该知道编译器如何编译指令,电子表格如何更新单元格,浏览器如何渲染页面,这本书的目标就是帮助读者从宏观的视角,理解程序设计中的思维方式。

这本书不会专注于算法细节、使用的语言等,而是重点讨论在开发程序中如何做出决策、在软件架构的时候做出何种妥协,比如:

  • 为何将程序设计成这些模块,为何提供这些接口?
  • 这里为什么用继承或者是合成?
  • 这里为什么用多线程,那些为什么不用?
  • 什么时候程序应该依赖插件,插件应该如何被配置,如何载入?

方针

写作应该是有趣的,所以我们尽量精简流程,这里是习作流程的最小集。

  • 当你开始编写的时候,尽量早些提交一个pull请求,这样我们可以尽早获得我们没有意识到的问题。
  • 第一次提交以后,你可以按照你的意愿继续提交。
  • 当你的第一稿完成的时候,在提交中注明,或者直接给我们发邮件,我们会为你的工作分配一两个核查者。

500 Lines or Less代码库:https://github.com/aosabook/500lines 

这个库包括一些大约500行写出的一些toy project,用了多种语言,还是很不错的。
这个库是AOSA系列一本书的源码。
AOSA官网在这里:http://aosabook.org/en/index.html
AOSA第一本书中文翻译在此: http://www.ituring.com.cn/book/1143
http://aosabook.org/en/index.html

开源程序架构:https://github.com/aosabook/aosabook





你可能感兴趣的:(开源程序架构和《500 Lines or less》资料)