项目管理者联盟 | 中国工程管理网 | 中国研发管理网   会员中心 资料库 论坛 博客

PMI-ACP®认证

适合敏捷开发项目
敏捷项目管理最佳实践

网络课程

PMI-PBA®认证

重视项目商业分析
商业价值与需求分析能力

网络课程

NPDP®认证

产品管理国际认证
全球产品管理最佳实践

网络课

PMP®认证

单项目管理经典指南
年轻项目经理首选

北京 | 直播 | 录播

PgMP®认证

大型复杂项目全球标准
定位高级项目管理层

网络班

PfMP®认证

链接战略与项目
实现组织资源投资回报

全球直播

软考项目管理

信息系统项目管理师
系统集成项目管理工程师

计划 | 报名 | 经验

圈子
志同道合,朋友再聚首
项目管理者联盟PMP培训
会员· 圈友
登录ID
密   码
 
圈子信息
圈名:IT项目管理圈
加入方式: 允许任何人加入

IT项目管理圈

追求高效的软件项目管理方法

圈主:lepu2934112    管理员:暂无管理员   
成员数:271
主题数:1384
排名12
通讯录
圈友列表
加入本圈
管理本圈
 
话题区 投票区 资料区 精华区
标题:分享软件开发项目出现的问题和经验
楼主

fayjie
PMB:40960
省份:四川省
行业:工程设计安装
注册:2009/12/18
  
  
每天最多的时间对着电脑鼓捣着程序,或因为一个问题不能解决而绞尽脑汁苦苦思索,或因为有了点小小的成果而沾沾自喜兴奋异常。 ----《疯狂的程序员》

  软件开发是一个善于思考的职业,写程序都是要经过需求分析、设计、编码还有测试运行的。所以我在写程序的时候自然而然的就形成了一些坏毛病,例如:唯我独尊,不愿测试,不喜欢别人说自己程序烂等等。

  而事实告诉我,我太把自己当回事了。

  最近的最近给学校在做一个关于综合测评的BS项目,项目实现是非常容易的,但是在项目几近结束的时候发现了一个bug。

  这个bug让我好几天都没有睡好觉,每天脑子中都在想是什么导致这个问题出现,怎样才能解决这个问题。

  不过还好,经过了几天的痛苦折磨,在一个夜黑风高的深夜,我终于把它给解决了。

  经过这次问题,我更加深刻的认识到自己在写程序上出现的一些问题,并且总结出来一些思想,今天把这些问题和思想分享给大家,和大家交流沟通,共同努力。

  无风不起浪,你别把自己当个艺术家

  我设计的代码是否非常糟糕,从我一敲击键盘就能察觉到。把一个方法或函数写上成千上万行,那最后不想承受洪水冲击都不行;我把所有的变量都写成i,j,k那么过一段时间之后它认识我,我却不认识它了;我不把注释写好,我还想奢望让团队的每个人都理解我的代码?可能他们到最后连我本人都不想理解了。

  无风不起浪,要想风平浪静,就要运筹帷幄。让自己强大起来,做好运筹帷幄的事情。

  我不是什么艺术家,我也没有那么高尚,我写出来的代码是非常烂的,没有必要把自己奉为神明,唯我独尊,东方不败的样zhi。自己写出来了代码,不去检查,不去调试,那自己做这个高尚的职业又有啥意义呢?

  所以,我不要去挑剔别人的程序,有一天也许我的程序会被人放在聚光灯下挑剔。要保持客观和专业的评论,不要轻易判断。要谦虚,从周围人哪里学习经验,警戒自己不要写出这么糟的程序。

  时刻告诫自己,我不是艺术家。

  不注重前戏,后果很严重

  前戏很重要,需求分析和设计是要要求我们对整个系统的结构和逻辑都有很清楚的理解。需求要到位,这是项目的根基,如果根基没有了,那么大楼是无从谈起的。文档和架构UML都要明确清晰明了,如果这些不明了,那么交流是项目进行中的一个阻碍。前戏阶段思路清晰非常非常重要,否则会一乱到底,乱上加乱。后果不堪设想。

  所以前戏非常重要,为了避免出现意想不到的结果,还是要好好的把前戏做好。

  勿以善小而不为,勿以恶小而为之

  像刚才说到的无风不起浪,我们项目中会出现诸多bug,是什么原因呢?可能有很多,有些是技术上的,有些是非技术上的。

  所以在这里要好好的说说这个代码编写。

  1. 代码的编写,要尽量减少拼写的错误,严禁使用关键字作为变量来使用,要尽量做到代码模块化,并且保证其正确性和可重复使用性

  2. 函数别写太长,功能越单一越好。函数写那么长干哈,又不是写论文,想让看程序的人累死,也想让debug的自己愁死,有木有啊!

  3. 缩进要合理,当debug的时候会感受到这条带来的好处。

  4. 要做代码检查工作,你不要写一万行代码再进行调试,这样增加了排错的难度。如果你把一万换成四五行,你想你的排错是不是更加容易。

  5. 命名是非常有学问的事情,我一刚写程序的时候,一写变量除了i就是j要不就是k。当然我也遇到过这样尴尬的情况--写了一段代码过了一段时间后,我反问我自己,这是我写的程序吗,丫的,那个i是表示的什么变量呀!

  6. 注释。做好注释不仅让自己在debug阶段更加方便而且还会让团队开发更加和谐,也会让代码更加具有亲和力。

  所以编码的规范性是非常重要的,勿以善小而不为,勿以恶小而为之。

回复 | 引用 发表时间:2014/8/12 10:04:34
!  您尚未登录,不能回复主题。    现在 登录  注册
关于联盟 | VIP会员 | 培训服务 | PMP认证 | PgMP认证 | 刊物出版 | 沙龙会议 | 人才服务 | 广告投放 | 联系我们 | 友情链接
建设运营:共创时网络
版权所有 京ICP证070584号 BBS业务许可2007第353号