《从打工仔到程序员——我的IT之路》
第50节

作者: Hello2020
收藏本书TXT下载
  何银花也是很和蔼可亲的模样,两口子很联相。
  不过现在这个项目属于国际开发三部的。
  项目成员还有四个年轻人,估计也是刚毕业的,是公司内,定位成设计的人群。
  公司为了节省成本,招了他们这两批共70人左右,定位为编码的人员,专门组成编码部门。
  同时也招收了一批定位为设计的人员,分别分配在各个既存的部门,比如国际开发一部,国际开发二部,国内开发一部这样的。
  号称软件设计书就是一个接口,这个接口做的好了,就可以用很便宜的人做编码,又保证进度质量,又降低成本。
  那四个人目前主要就是跟着焦宪军和叫何银花做设计书。

  编码部门的8个人,还是在一楼,卫部长拒绝他们搬上去。只是在一楼将8个人调在一起。
  项目经理季莲等其他人员都在二楼。
  项目正式开始前,国际开发三部的部长,孟振兴,先给大家开了个培训,关于Oracle的。
  叶奕凡很有兴趣的参加了,发现孟振兴讲的确实挺好,难易度正适合自己,听完感觉提高了不少。
  田晓峰和孟部长很熟,好象他的上一个项目,也是他的部门的,在那里很受认可。
  项目正式开始了,叶奕凡和田晓峰很快发现,虽然卫部长分了两个组,但实际上他们也没法做什么管理。
  因为那四人设计年轻同事,被分配好了,两人一组,各负责四个编码人员的进度,设计的理解等工作。
  他们俩人能做的,只是大家有技术问题时,帮一下忙而已,所以两人就都没有兴趣管理了。
  工作很快就进入正轨,这个项目,光辉公司派在日本的负责人,姓邓,听说上一个项目干砸了,所以这个项目玩命的要做完美,给了这边很大压力。
  整个细节要求的非常严,包括注释什么的,风格是绝对的要求统一。

  刚开始不适应,习惯了后,觉的确实应该统一,这样的放在,代码看起来舒服多了。
  叶奕凡很快完成了第一个功能,当时要求四天,功能不复杂,他两天就加班赶出来了。
  但是结果出乎意料,二楼专门有一个测试人员,测他的程序时,发现个很?显的BUG。
  这下麻烦大了,本来卫部长很自信的问季莲,叶奕凡怎么样,他以为能得到和杨红,佟泰新相同的回答,结果季莲轻吐五个字:
  “干活有点粗。”

  这句评价几乎毁了卫部长对他以前的好印象,做对和软件最忌讳的就是这个粗。
  卫部长很快把这个评价和那个BUG反馈给叶奕凡。
  他这种及时反馈是特别正确的,可以使人及时认识到自己的问题。
  接到反馈后,叶奕凡陷入思索了。
  工作在质量和速度之间,是要有个合理的平衡的,自己有些追求质量了。
  接下来的工作分配很有意思,季莲分配给叶奕凡四个模块,一个模块一周时间。

  这些模块都是难度不大的,其中有一个还是用户名密码登录的界面,手顺了半天就能出来。
  看来季莲不信任他了,所以把简单的给他。
  但叶奕凡还真是接受教训了,拿出了小学时就有的考试精神,绝不提前交卷,剩一秒钟也要用在检查上面。
  老老实实的,一周交一个模块,力争把每一行代码,每一行注释弄的象工艺品一样。
  做这个项目,SQL语句的使用可实在是太锻炼人了,往往要从10来个表中,结合查询,调出数据来。
  语句稍微有一点问题,就检索不到准确的数据。
  在中间测试时,基本所有人的SQL语句都有问题,后来一起开会研究了一下,后来再慢慢好。主要是有些左连接,右连接大家都没处理好。
  这四个模块做好后交了上去,再没有出现以前的问题。
  后来又分给他一个活,这回复杂一些,要编写在数据库服务端运行的存储过程。
  这个比直接运行SQL语句要速度要快,因为是直接在数据库端执行的。叶奕凡以前没做过这个,不过服务器上有参考的例子,只要有例子,那就什么都不怕。

  这个代码量很大的存储过程做的差不多之后,有一次何银花过来看他的成果,叶奕凡起身让她坐着。
  她就用翻页键往下一页一页翻着这个存储过程看。实在是太长了,只能翻页。
  翻着翻着忽然停了下来,又往回翻了一页看了一会。
  “这个地方的SQL语句里,这两个表的查询条件写的不对。”
  叶奕凡仔细和她看着,慢慢发现,确实不对。
  这一下有些震惊了,这得对表熟悉到什么程度才能这么看着就能发现问题啊。
  后来听孟振兴部长说,何银花在项目开始前,会把数据库的各个表,在一个大纸上面都写好,详细标记出表之间的关系,把这些关系下功夫完全吃透。

  当初,和国人对这个项目也是特别重视,生怕出问题。
  但当他们得知光辉公司这边,把何银花放到项目中后,就宣布说,这个项目在光辉公司这边,肯定不会有问题了,只要我们和国这部分别出问题,项目就成功了。
  叶奕凡一听,大为赞叹,这可真是“但使龙城飞将在,不教胡马渡阴山”的架势。
  存储过程执行完,生成一些数据后,还要打印报表,这个报表可废了很大的劲,格式调起来太麻烦了,特别费时间。
  叶奕凡在做这个项目的过程中,发现有问题的话,问其他人用处不大,他自己如果不会了,就只能问田晓峰,而田晓峰也同样如此。
  所以这两个人之间的关系越来越近,以前中午和吴亦辉一起吃饭,现在他们三人一起。
  现在吃饭的地点有进步了,不用非得食堂,公司附近的小餐馆也接受公司的饭票,他们随便到哪里吃都行。
  有一次田晓峰叫他过去,有一个存储过程里的问题调试了许久解决不了。
  代码大概是这样,
  如果x等于``那么就A,否则就B。
  而这个x是从数据库中取的,当时赋值的时候,赋的就是``。
  这里的``可不是指两个单引号本身,两个单引号是数据库里用于包含字符串用的。这时候两个并列的单引号就是指一个长度为零的字符串。
  结果x明明就一个长度为零的字符串,但程序总是流向B。
  田晓峰调了一上午没明白怎么回事。
  叶奕凡坐下来看了一会儿,确实,程序总是往B走。
  来回又调了很长时间,看着给数据库里赋值时的两个单引号,突然想起以前和潘志强的做项目时,那个关于向表里插入两个单引号时,潘志强的判断。

  “实际上在Oracle里,这么赋值的话,就相当于赋了一个空。”
  也就是说,当向数据库里赋值两个单引号时,它就已经是空了,那么x实际上就是空。
  而空,和任何数值做比较,结果都是否定的。
  空只能用一个函数来判断是否为空,也就是isNull.
  在这里,只能用isNull(x)为真,则A,为假,则B。
  按这个改了下代码再一试,果然成功了。

  这个项目中,用到的数据库的知识太复杂,更多的时候,他俩还是要到论坛上去查,去问。
请按 Ctrl+D 将本页加入书签
提意见或您需要哪些图书的全集整理?
上一节目录下一节
【网站提示】 读者如发现作品内容与法律抵触之处,请向本站举报。 非常感谢您对易读的支持!举报
© CopyRight 2011 yiread.com 易读所有作品由自动化设备收集于互联网.作品各种权益与责任归原作者所有.