借助开源项目,学习软件开发
2013-08-16 11:20
567 查看
借助开源项目,学习软件开发——目录
开放文档:《借助开源项目,学习软件开发》。诚邀您的参与!
著作权申明
本作品选择采用:署名-非商业性使用-相同方式共享 的CC协议。您可以:复制、发行、展览、表演、放映、广播或通过信息网络传播本作品。以及创作演绎作品。
惟须遵守下列条件:
署名 — 您必须按照作者或者许可人指定的方式对作品进行署名。
署名方式为:在转载或新作品开头的显著位置,注明原作者的姓名、来源及其采用的知识共享协议,与本作品在Teamhost上的原发地址建立链接
非商业性使用 — 您不得将本作品用于商业目的。
相同方式共享 — 如果您改变、转换本作品或者以本作品为基础进行创作,您只能采用与本协议相同的许可协议发布基于本作品的演绎作品。
如何参与这个写作项目
直接对本文档的各个章节,做出点评与指正,我们将会修正各个相关的章节。目录
开始之前这份文档的目标读者
基本条件
你需要明确的一些事情
开始
学习软件开发的几条主要途径
为什么借助开源学习是最有效的
选择一门语言
必须初步掌握的基本功
关于开发工具
关于开发工具的分类(by 李路)
各种参考资料
选择一个开源项目
到哪里去寻找开源项目
什么样的开源项目适合初学者
值得推荐给大家的开源项目
Hello World
下载源代码的N种办法
关于源代码管理与版本控制
寻找早期开源项目的源代码
SVN、Git、Mercurial快速介绍
基于包管理的方式获取源代码
让代码运行起来
Ruby版
PHP版
Java版
Python版
JavaScript版
C/C++版
如何克服可能遇到的困难
理解开源项目
静态理解
目录结构
包名与文件名
类名、函数名与变量名
注释与Readme
UML图
外部文档
动态理解
输出日志
设置断点与单步跟踪
抛出异常
修改代码,破坏性尝试
主线与支线
寻找入口
跟踪关键流程
寻找挂接点
外围代码
必须存在的外围功能
demo/example
单元测试
知其所以然
修改开源项目
从需求出发,修改代码
顺藤摸瓜,寻找可以参考的代码
动一个大手术——结构性的调整
寻求认可的艰难历程
为开源项目做贡献
提bug与建议
帮助完善文档
提交代码(功能代码与测试代码)
周边代码(demo/扩展/子项目)
外部宣传
其他各种杂务
成为组织的一员
交流圈
组织结构
开源项目的组织方式*
基本礼仪
自己发起一个开源项目
延伸阅读
贡献者
开源问答
转载自:http://sbbs.me/view_article/50606ecb08158efb55000009
相关文章推荐
- 借助开源项目,学习软件开发
- 借助开源项目,学习软件开发
- 借助开源项目,学习软件开发
- 借助开源项目,学习软件开发
- 借助开源项目,学习软件开发 .
- 读《借助开源项目,学习软件开发》总结
- 借助开源项目,学习软件开发 (learn-with-open-source)
- 借助开源项目,学习软件开发 (learn-with-open-source)
- 借助开源项目,学习软件开发
- 借助开源项目,学习软件开发 .
- 借助开源项目,学习软件开发——理解开源项目
- 《借助开源项目,学习软件开发》
- 借助开源项目,学习软件开发
- 借助开源项目,学习软件开发
- 借助开源项目,学习软件开发
- 借助开源项目 学习软件开发
- 借助开源项目,学习软件开发——开始
- 《利用开源项目,学习软件开发》内容回顾与作者采访
- 发现一个好的开源项目:lomoX(挑着看,每天看一点,看一年就ok了)——用Webkit开发桌面软件,炫
- PHP项目小团队的开发流程中常用开源软件