开发之道——读《移山之道——VSTS开发之道》后感

  《移山之道——VSTS开发之道》(下简称《移山之道》)是邹欣老师的另一本书。相传很有名的《构建之法》我未曾拜读不过从这本书中对邹欣老师的水平可见一斑。读这本书花费了我将近一周的时间,然而我感觉这笔投入还是相当值得的,让我从能够编写程序,到对软件开发这个过程有了一定的认识,获益匪浅。

  《移山之道》使用的VSTS版本其实是比较老旧的(VS2005),但是并不妨碍这本书的价值。这本书更注重的是操作性,如何从生疏到熟练,如何在不怎么完善的开发环境下工作。阅读本书不仅能够了解到像MS这样的大公司推荐的开发方式更为重要的是,它没有端着架子,而是从基础入手,由浅入深。并且《移山之道》提到了许多项目困窘时的权宜之计,较为实用。

  精心设计的场景也是这本书的一大亮点,从建立项目到最后的发布,每一个阶段都展示了一些我们开发时会遇到的问题,而且说法平易近人,易于理解。

  我因这本书中而生的感悟主要在以下几方面:首先是敏捷开发和测试方式的学习。在项目开发中,测试总是与项目开发相伴而生。但是在我以前的程序编写中,测试一直是人工进行的,而且我对于IDE的使用并不熟练。有时一个小小的bug就要耽搁一晚上的时间。如果debug的话,很难有效地完成作业。如此一来,编程在个人的时间安排中占据了相当大一部分。于是我一直有这个想法,却难以提高个人的工作效率。本书给了我在自己的项目中进行自动化测试的一个较为客观的指导。虽然仍然对测试这方面所知不是很多,但重要的是我了解了一条解决途径。

  另外一个方面。这本《移山之道》详尽地讲述了VSTS的具体使用方式。项目管理并非一个空洞的概念,也并非完全应由或能由人完成,需要基于一定的工具(VSTS就是其中之一)。拓展开来讲,善于使用工具也是一种非常重要且实用的能力。在日新月异的现代社会,随着分工的越来越精细化和知识前沿的不断延拓,我们并不可能也并不需要在操作过程中完全了解某些工具的原理,但是熟练掌握工具确实大大提高自己效率的好方法。就拿我自己来说,在不会使用IDE来debug之前,printf大法是我掌握的最好的debug方式,尽管如此,将一个程序调试成功也需要很长时间。而在掌握了IDE的使用方法之后,花费的无用功是原来的一成左右,这充分展示了善于使用工具的重要性。在今后的日子里,我们还会和越来越多的工具打上交道,努力学习如何使用好它们,是亟待我们解决的问题。

  最后是关于结对编程的一些想法。这学期邓老师给出的任务清单中结对编程占据了不小的一部分,作为一种创新的编程方法,这种方法有着比较大的益处。例如在有小伙伴的支持下,编程总是多了一份底气的;再加上两个人的思维碰撞,往往能够诞生出一些巧妙的点子来;再加上两者在编程过程中的交流,能够让双方都能有效地提高。但是每种方法并不只有好的一面,首先如果主要追求效率,这样的1+1在平常的任务中难以发挥出更好的效率来(人的惰性使然)。再者如果两个人的思维习惯迥异,强硬结对的后果可能是灾难性的,因此我们结对编程前选择队友要谨慎一些,而且并不是所有情况下都适合结对编程。我认为在以学习为主的编程中,结对编程不失为一种极好的学习手段。

  总的来说,这本《移山之道》的确给了我许多帮助,拓宽了自我的视野,并且在一些实际问题上给出了解决办法。不得不说,这的确是一本好书,值得很多人去翻阅。

05-11 13:43