在乐高王国这一章中,我看到了“牛仔程序员”,就如同老师所讲的四种人,第一等人是有能力有责任,第二等人是有责任没能力,第三等人是有能力没责任,第四等人是无能力无责任。老师所说,一人英雄的时代已经结束,对于这种人就是一匹独狼,团队里的毒药。在《梦断代码》中提到,软件界中关于“牛仔程序员”的说法由来已久。所谓牛仔程序员,就是那些不守规矩、偏好独干、喜欢挑战的程序员。对于许多经理来说,牛仔程序员简直就是噩梦;而在许多程序员眼中看来,他们是英雄。这在我们团队开发时,也是如此。无论是哪个同学,都希望找一个什么都会干,什么都肯干的同学一组。然而,这并不可能,不是每个同学都能写好代码,会写代码。一个团队,如果只是一个人在干活,这个团队迟早会解散。
在搞掂设计方案这一章中,我看到了书中提到的边缘案例,这就如同我们目前所做的结对开发中的数组中的子数组最大值超过了int32的表示范围时,我们该怎么办。程序员们经过训练要巨细靡遗通盘考虑,他们太执着于警惕会出问题的情形,结果难免会迟钝不灵。他们在边缘案例上绞尽脑汁,以至于偏离了中心店。
里面有一句安德森说的话,“我在那当经理时,自己不写代码,这和你只是五个人中的一个,写五分之一代码可不太一样了。我要么自己写大部分代码,要么管理整个团队。”身为Leader,要么有超脱众人的能力,要么有激发众人工作效率的能力。还有一句,“事情很少因为时间不够而停滞,而是因为没有确定怎么做而停滞。”这句话说明了,动手做某件事情,一个完美的计划很重要,没有计划,遇到问题就会停滞不前。
李纳斯·托沃兹说过,“我致力于Linux达13年之久,我想后面还得花上好些时间。如果一早就妄想做个大东西,可能现在还没动手呢。”也许面对一个复杂的程序,我们并不用一气解决这个程序中的所有难题,我们可以把它分为很多个模块,一个模块一个模块的去解决,这样,我们可以一直处在前进之中,到了最后,也许我们会发现,我们做到了自己认为不可能的事情。
个人感受:我们在目前的学习中,我们先考虑的都是怎么实现老师要求的这些功能,并没有把用户想像成一些根本不懂程序的人来看待,我们所做的程序,唯一用户就是任课老师。但是实际工作中,用户群体很大,我们需要考虑的因素往往很多。所以以后写作业时会多多听取其他人的意见。