前面假如软件方面的轮廓(这里本应该是来表达业务方面的轮廓,但是由于自身水平限制,
目前还不能完整的表达)。这样这里只能讲讲软件工具方面的。
有一套书,叫《程序员修炼三部曲》,分别介绍了软件开发中的3个主要工具:测试,版本控制和构建工具。
其实我也没有看完这3本书,就大概的看了下,我可能理解会有误。所以,有兴趣的话可以大家自己去看看。
我这里并不介绍什么是测试,什么是版本控制和什么是构建工具,以及它们的优缺点。就做一下相应软件的
列表吧。
+------------------+---------------------------------+
| 版本控制器 | git svn cvs |
+------------------+---------------------------------+
| 构建工具 | make ant maven gradle |
+------------------+--------------------------------- +
| 测试工具 | junit selenium ... |
+------------------+----------------------------------+
我主要想表达是学习它们的顺序是至关重要的。在这个宣传敏捷开发的世界里(我并不是不看好他),测试往往
会被重点突出。比如说TDD开发方法,重构开发技术,软件质量保证都需要测试,但是,这些技术都对老鸟来说
的(尽管这里可能会有争议),菜鸟事实更要注重的是编程,学习如何去模仿表达,而不是过分的注重正确的表达。
另一方面,阅读代码是程序员水平进步很好的一个途径,而阅读代码主要先学会让程序去运行,构建就是发生在
代码运行之前。 第三,需要考虑的是如何获得源代码,这个世界上有很多开源软件库,对,我们就是从哪里获得源
代码。例如github,sourceforge, google code。获得相应软件版本的源代码,这是版本控制器应该做的。
综合上述 A -> B -> C
A :版本控制器
B : 构建工具
C :测试工具
我主要从阅读代码的角度考虑。