标签:测试驱动开发 响应式设计 敏捷开发 结对编程 开源项目
作为一家收费较高的外包公司,交付的代码质量也应该相当的高。刚开始真正在项目上写代码的时候,每次我写完的代码都被作为重构的示例。好在只是在结对编程的时候,并没有带来多少的不快,作为一个实习生,只能感叹原来编程还可以这样。
在学校的时候,看过很多书,书上教了一个又一个的方法,只是这些都没法用在自己的项目上。因为没有深入的理解,以至于在一开始的时候,我写出来的代码(ps:如最小物联网系统设计)不够让自己满意。而在一次次的学习会发现,在我开始重新写一个开源项目——墨颀 CMS,为了获取更充足的经验。而所谓的那些敏捷开发的思想,都不会在公司内部的一些课上出现,更多的是在项目上的实践。
在实习的时候结对编程,对技能的成长,和项目上的学习等等都带来很大的帮助。多数情况下,结对编程的都是团队中相当有经验的,可以从中学习到现在多的经验,不仅是在项目上,还有一些如在Mac OS的使用上。于是,在这时候降低了学习上的成本,可以有效地在实践中学习。结对编程的时候经常会对问题进行讨论,讨论的时候会加强其中一些代码思想的理解。
因为大家在不同的项目上实践,国外的项目更多的是在一些大的平台、大的用户量及大数据,自然也然的可以实践那些走在前沿的技术。这些技术的一些思想及技术可以自己的小项目上进行实践,如上面说到的移动CMS一些前沿技术的实践。或许这就是为什么一些服务类公司不容易撑不下去的原因,技术上是先进的,实践的经验也相当丰富。
在这个项目上或者那个项目上,总会接触到和自己技术栈不同的东西,久而久之,需要不同的能力去解决问题。从产品的开发、测试、再到上线,总会经验到写shell脚本、linux环境、产品优化等等。成为全栈工程师的捷径也许就是维护一个博客,然而我们可以在不同的领域,从后台到前台,再到浏览器调试。或许,交付项目更容易成为这样的程序员。
同样的因为项目不是一个新的项目,因此多半的时间都花费在调试bug,跑测试,站会等等。
在项目的某个子项目中,代码是从十年前开始的,这也就意味着我们需要去深入理解代码的逻辑。有时,一天我们没有写任何代码,只是在调试,看看代码如何真正的运作起来。对于,一个项目来说,要让他能跑起来,可能是要几个星期之后才可以。同时,作为一家交付公司,我们还需要花时间去站会,和客户,而这些都差不多会花费半小时的时间。真正在修改代码上的时间少之又少,相信这是在大项目上要经历的。
如果你想知道的话,可以留言。
标签:测试驱动开发 响应式设计 敏捷开发 结对编程 开源项目
原文地址:http://blog.csdn.net/phodal/article/details/37960959