《当程序员的那些狗日日子》
第40节

作者: tangtdd
收藏本书TXT下载
日期:2011-07-04 18:39:17

  (二十八)开展新工作
  杰把软件公司负责兑换系统开发的其中一个开发人员特地约到公司来,让他向我介绍兑换系统有关程序方面的大概情况。这位开发人员名字叫锋,据他自己介绍说比我大三岁,人长得挺结实俊朗,也很健谈,言谈举止间倒像是个做业务的,而不像是个程序员。
  锋给我介绍说,系统用了一个叫ORM.NET的代码生成器来生成数据访问层(简称数据层)的代码,只要在SQL Server 2000中将数据库的表、视图、存储过程按一定的规则建好后,就可以用ORM.NET来生成数据层的代码,对于对表数据的查询、插入、更新、删除,对视图数据的查询,对存存储过程的调用,等等,都可以直接调用代码中相应的方法,这就免去了要手写相应代码的繁琐,提高程序开发的效率。锋重点给我介绍了ORM.NET的使用及如何调用生成代码中相应的方法,此外还大概介绍了系统的架构及系统各部分的基本情况。看得出来锋的技术水平应该还不错。

  就是从这里开始,我接触到了代码生成器,知道了用代码生成器生成代码对程序开发的好处及直接调用生成代码中某些方法的不足。好处自然就是提高开发效率,不足就是直接调用某些方法会导致程序执行效率降低,但是还是可以从中找到一个平衡点。对于要求很严格的系统,代码生成器无疑不被推荐,但对于一些要求不是很严格的系统,代码生成器无疑是个很好的开发辅助工具,尤其对于软件开发公司来说,开发效率就是金钱,所以这家软件公司也用了代码生成器。但是对于眼前这么重要的兑换系统来说,我还是觉得不应该用代码生成器所来生成代码。

  兑换系统的每一部分作为一个独立的程序项目来建立的做法,还是比较可行的,作为WinForm程序的银行数据处理引擎和供应商数据处理引擎,自然必须要这样做,而对于作为WebForm程序的礼品兑换网站、客服后台和系统管理后台,因为三者面向的用户各不一样,礼品兑换网站是要放到互联网上的,客服后台和系统管理后台则是要放到公司内部的局域网上的,所以将三者分别作为独立的网站项目来建立,而不将三者均放在一个网站项目下,这很符合安全性的原则。相比之下,之前门票公司的电子商务平台网站则是将供应商后台、销售商后台、管理员后台、网站前台等几大部分都放在同一个网站项目下,这是因为除了管理员后台不必须外,其他各部分都要放到互联网上,所以为了开发方便,就用了这种处理方法。

  事实上后来我到了另一家公司后,在程序开发中也用到了这个ORM.NET代码生成器及参照了兑换系统的程序布局和架构。
  锋还给我介绍了TortoiseSVN的使用,一个类似于VSS的版本控制工具,其最大不同就是可以通过互联网进行远程操作。软件公司将开发出来的程序通过TortoiseSVN更新到他们的外网服务器上,我们则可以通过TortoiseSVN远程获取最新的程序,双方可以更方便地开展工作。
  经锋介绍后,在杰的安排和带领下,我开始对系统的功能进行测试,用专业术语来说,就是要做所谓的“黑盒测试”了。当然杰也要做测试,我和他各负责一部分。虽然这有点偏离了我本来是要做程序开发的方向,但在这个时候,我还是欣然接受了。
  真是不测试不知道,一测试“吓一跳”,系统的功能竟存在很多错误,有的功能根本无法正常操作。除了将这些情况记录下来,我还特别查看了对应的程序代码,结果发现程序中竟存在很多逻辑或语义上的错误,尤其是在数据处理的细节上,更没有做到细致、严谨的处理,所以就导致了系统功能出现很多错误。很明显软件公司在开发过程中并没有进行过所谓的“单元测试”就将程序提交上来了。这使我很难接受,虽然我是半路出家,但在代码的编写上,我却一直尽量要求自己将代码写到最规范,并严格要求自己做到使程序逻辑准确无误,我认为这是一名合格的程序员的基本素质。但是此时软件公司开发出来的程序却完全没有达到这样的要求,很明显这是软件公司为了追求开发效率,为了尽早交单收钱,而忽视了程序开发中的最基本的要求。这无疑会使我们的测试工作变得吃力不讨好,因为很多问题,如果在程序开发过程中开发人员对程序进行过测试,是很容易发现并处理掉的,但如果等到程序开发完后再由测试人员进行测试,则处理起来可能要花上两三倍甚至更多的时间和精力。在我看来,这些已经是属于程序代码本身的测试,是不应该由我们来做的,而应该由软件公司的开发人员去做,程序开发完成后功能上的测试才应该是我们所要做的。

  我将这些情况向杰说明后,杰却跟我说,我们所要做的就是要进行这样的测试,尽快将问题发现并反馈给软件公司进行修正,其他的不用过问。这使我觉得很奇怪,软件公司将程序写成这样,我们怎么不用过问呢?我们可是他们的客户啊,对他们提一些开发上的基本要求应该不过分吧?但既然杰已这样说了,我也不便多问。
  杰除了做测试外,还在处理一些很重要的工作。他不时通过电话或电子邮件跟中国银行及名礼品供应商联系以做新的需求分析,同时也要跟客服部的相关同事进行沟通和讨论,根据客服人员的实际操作需要做需求分析,确定客服后台的新的功能模块,再将新的开发需求提交给软件公司进行开发,并不时了解他们的开发情况。
请按 Ctrl+D 将本页加入书签
提意见或您需要哪些图书的全集整理?
上一节目录下一节
【网站提示】 读者如发现作品内容与法律抵触之处,请向本站举报。 非常感谢您对易读的支持!举报
© CopyRight 2011 yiread.com 易读所有作品由自动化设备收集于互联网.作品各种权益与责任归原作者所有.