正保教育|建筑网校|选课中心|网校名师|建筑文苑|政策法规|专业资料|建筑实务|专题|邮箱|论坛|建筑书店|学习卡|首 页

建设工程教育网 > 建筑文苑 > 其他相关 > 正文

关于开发效率和项目周期的问题

2006-12-15 16:02    【  【打印】【我要纠错】

  在项目开发的过程中,经常会遇到市场人员急命的催,开发人员玩命的写,但还是赶不上进度,每个人都感觉很累,却没有太大效果。 怎么办呢?我想这种情况是可以避免的,退一步说,最起码应该不会像这个样子。这里总结一下自己的一些心得和体会:

  1.经常总结完成模块中共性的代码,封装成方法或组件,方便以后调用。

  比如,数据访问,XML配置操作,分页控件,数据校验,加密等等我都总结成一个个独立的模块或组件,使用的时候拿来调用就行了,为项目争取了很多时间,也留出更多的时间来想业务逻辑的处理。

  2.复杂业务简单化

  对一些复杂的业务系统,可以通过抽象的方式,来简单化,把复杂的问题抽象成简单的模型,变成人们容易理解的业务模型。能用简单的方式解决的问题我们为什么要搞的那么复杂。我们开发软件就是来解决问题的,不是来做秀的。

  3.代码简洁,通读易懂。特别对团队开发很是重要。

  我不知道有些程序员怎么了,个人英雄主义很重,总是把代码写的稀奇古怪,这样好像来表示自己的不同凡响,技术水平高。其实,我认为作为现在的团队开发,这样会给企业带来很大的隐患。同时我个人觉得这也不是一个好的编码习惯,因为写代码也是人一种表达思想的方式,用最少的话和最精辟的词表达出人们容易理解的问题才是最厉害的。就像人穿衣服注意整洁一样,再高贵的衣服,如果不注意整洁,给人的感觉一样很糟糕的。

  4.注意高内聚和低耦合。

  减少模块间的耦合度,抽离出通用的模块,每个模块就像一块积木。这样做一个系统时,如果能充分利用这些资源,会起到事半功倍的效果。省时省力。我总结的角色权限管理摸块就是这样,用到了很多项目,也确实为我节省了不少时间,也可以说为公司创造了不少效益。

  5.做好架构设计。

  好的架构会给开发人员一个明确的导向,且不会让程序员作太多的无用功和重复劳动和返工。并且好的可扩展性设计会对项目善变的需求有好的应对能力。

  6.采用OOP,分层开发等经典的开发模式,从一定程度上减少重复,增强扩展性。

  7.尽量采用成熟可靠的技术。

  这句话我想有两种理解,

  一:采用最合适的技术,而不是选择“最先进”的。不能因为“用技术”而“用技术”。它给项目带来的后果是不可估量的,风险也是很大的,以至甚至延期等等。当然学习好它还是很好的,但是在做商业应用方面还要考虑好。

  二:去用那些已经存在的成熟的模式或代码,不要自己再去“造车”了。一来缩短开发周期,二来降低风险。所以,我们平常开发时,还是要有一定的“拿来主义”,这没什么不好的,相反,应该是一个明智的选择。

  8.学会改变世界。

  写了很久的程序,养成一个习惯,就是坚持用尽量少的代码实现尽量多的事情,所以一般能共用的代码,我就写成共用的,这样基本上就减少了不少的代码量。另外,通过一定的抽象过程,本人已经总结出一定规律,并成功的开发出一个.Net(C#)代码自动生成器工具,基本上我尝试了一下,一个有二十几个表的系统,二十分钟内,我就完成了三层架构的构建,生成了80%的代码,这个过程如果纯手工的话,我觉得效率高的也要一两周吧。人类的进步是从使用工具开始的,我们要进步也比须制造工具来替代人工,改变世界,其实我们的生活可以很精彩。

项目管理网

收藏分享:论坛
分享到:
相关新闻
  • 特色班
    4大班次+2-3套全真模拟题
    提升学习效果
  • 精品班
    4大班次+2-3套全真模拟题+1套预测试题
  • 实验班
    3套全真模拟题+2套预测试题+考前冲关宝典
  • 定制班
    3套模拟题+3套预测题+考前冲关宝典+考前重点
  • 移动班
    以知识点为单元授课练习,
    强化重点、难点、考点
版权声明

  1、凡本网注明“来源:建设工程教育网”的所有作品,版权均属建设工程教育网所有,未经本网授权不得转载、链接、转贴或以其他方式使用;已经本网授权的,应在授权范围内使用,且必须注明“来源:建设工程教育网”。违反上述声明者,本网将追究其法律责任。
  2、本网部分资料为网上搜集转载,均尽力标明作者和出处。对于本网刊载作品涉及版权等问题的,请作者与本网站联系,本网站核实确认后会尽快予以处理。
  本网转载之作品,并不意味着认同该作品的观点或真实性。如其他媒体、网站或个人转载使用,请与著作权人联系,并自负法律责任。
  3、本网站欢迎积极投稿。