`
hgq0011
  • 浏览: 549233 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

低劣的设计,会使你走向泥潭,难以自拔

阅读更多
                              低劣的设计,会使你走向泥潭,难以自拔
 我进这个公司一年多一点了.刚进公司没什么事做,所以经理就让做一个小系统,为公司以后的需求作准备.
 为了快速的完成任务,我也就没有多考虑用最简单,传统的方式(jsp + javaBean)很快完成了项目.系统经过测试员测试通过 这样我才放心了.
      现在公司准备上线系统,这下可把我害惨了.系统写了一年左右了,用户的需求我都不记得了.此时,用户又对系统提出了新的需求,要求修改.我没有办法,系统是我写的,那么更新维护自然也是我的事情了.我只有拿出原来的文档,重新整理思路,才把相关的需求回想起来.随着时间的推移,经验的积累,看到自己写的那些代码实在是难以忍受.现在要维护系统了,感觉是牵一发动全身,真是糟糕透了.当时写出系统时还沾沾自喜,自己又搞定一个系统,很有成就感的.现在我看你还牛到那去.
      回头再审视自己做的设计,写的代码. 发现了不少问题.
      1)层次混乱.我们经常说的表示层,业务逻辑层,持久层相互高耦合,没有一个清晰的分层.系统的架构应当采用现在流行的框架.比如说
        表示层用webwork,struts,spring mvs,jsf等等,
 业务层(事务管理,,,)spring
 持久层用hibernate,iBatis,,,,
      2)没有面向接口编程.整个系统中没有见到一个接口.我还停留在面向类的编程.养成良好的编程习惯.
        oop,aop让你的系统有好的维护性,扩展性
      3)业务实现细节,性能上存在问题.比如说:对基本信息的修改实现方式真糟糕.因为基本信息的属性有40多个,它和另一个表是一对多的
关联关系. 当时觉得那么多属性,懒得用update一个一个得来更新,干脆把相关得信息(包括它关联的另一个表的信息)删除掉.这样造成了很多不
必要的操作麻烦.你修改基本信息,为什么要去删除它关联表的信息,然后又要把它的信息添加进来.这不就是画蛇添足吗?先删除,然后又添加,
一些不必要的操作,造成了性能的下降.系统的开发遵循简单的设计.
     4)业务操作混淆.添加新的基本信息与更新基本信息都放在同一个方法中.每一个业务方法对应一个操作.
     5)系统不稳定.对系统要有好的单元测试,集成测试.
     6)用户操作不方便.要站在用户的角度多考虑,那样的操作是他们习惯的,他们想要的.
     这样的系统真是糟糕,难以维护,难以扩展,很难有好的性能.
     我们开发的系统不能满足于够用,做出的系统要有好的可维护,可重用,可扩展性.
分享到:
评论

相关推荐

    互联网时代下网购包装设计的存在问题及对策.pdf

    4. 创新包装设计:设计师应根据商品特性和运输要求,创新设计实用且美观的包装方案,使包装既能保护商品,又能减少资源的浪费,提升包装的整体环保性能。 5. 优化物流体系:合理规划物流路线,减少运输过程中的破损...

    自考计算机信息系统设计与分析2134

    低劣设计带来的问题包括僵化性、脆弱性、固化性、粘滞性、不必要的复杂性、不必要的重复性、晦涩性等。 二十、输入设计的原则 输入设计的原则包括最小量原则和简单性原则,保证满足处理要求的前提下使输入量最小,...

    建设工程设计合同模板(4).doc

    - 乙方违约:延误交付设计文件或设计质量低劣,乙方需支付违约金或赔偿损失。 以上条款旨在确保双方权益,保证设计工作的高效、有序进行。在签订此类合同时,双方都应清楚各自的责任和权益,以避免纠纷。

    c语言和设计模式技术文档

    项目的成功是偶然的,但是项目的失败却有很多原因,管理混乱、需求混乱、设计低劣、代码质量差、测试不到位等等。就软件企业而言,没有比优秀的文化和出色的企业人才更重要的了。 从软件设计层面来说,一般来说...

    关于建筑工程消防设计审验常见问题及解决方法探讨.docx

    3. 严厉查处业主单位的消防违法行为:对设计单位施加压力,使其不会因迎合业主而降低消防标准。 4. 完善法规,强化对设计单位违法设计的处罚力度:通过立法手段,加大对设计单位降低标准设计的惩处,确保消防设计的...

    复件 建设工程设计合同(1).doc

    设计质量低劣导致损失,乙方需赔偿。 **第七条 其他条款** 未尽事宜经双方协商后以补充协议形式确定,补充协议与本合同具有同等效力,但不得与本合同内容冲突。合同纠纷解决方式按照相关法律法规执行。 这份合同...

    论旅游工艺品设计课程中的创意思维训练

    文章还指出了创意思维在旅游工艺品设计中的紧迫性,随着年龄增长,人们的思维往往会受到经验的限制,形成思维定式,限制创新思维的发挥。因此,旅游工艺品设计专业的学生必须通过系统的训练来突破这种局限,提升创新...

    工业设计史课题研究.pptx

    随着大规模生产的发展,设计往往被忽视,产品既缺乏美观又质量低劣,这引发了艺术家和设计师们的反思。约翰·拉斯金,一位重要的理论家,是这场运动的精神导师。他强烈反对机器生产,认为这剥夺了手工艺人的创造力,...

    电气设计禁忌500例

    - **选择不当的元器件**:使用了不符合规格要求的元器件或质量低劣的部件,会影响整体系统的性能和寿命。 #### 4. 安全防护 - **缺乏必要的保护措施**:例如,没有安装熔断器、热继电器等保护装置来防止过流、过载...

    复件 复件 建设工程勘察设计合同(1).doc

    - **质量问题**:若因设计质量低劣导致返工或延误,承包方可能需要减免或免收部分费用,并可能支付赔偿金。 - **延误责任**:承包方未按期提交成果需支付违约金,发包方延迟付款同样需支付违约金。 - **变更与...

    工程施工设计方案的优化.doc

    - 缺乏或质量低劣的施工组织设计可能导致施工过程中的窝工、浪费,增加预结算纠纷。 - 现场踏勘和详细设计可避免额外费用,如二次倒运费和土方运输争议。 以上内容说明了施工组织设计在施工过程中的核心作用,...

    《简约至上-交互设计四策略》笔记与思考1

    设计师必须认识到,每个不必要的功能都会增加成本,而且简单的设计并不等同于贫瘠或低劣。相反,装饰应该与设计紧密结合,避免无关的元素。理解用户是设计的基础,尤其是在实际使用环境中观察用户的行为。设计师应...

    基于Java的中小型企业人事管理系统的设计与实现.pdf

    基于Java的中小型企业人事管理系统的设计与实现 本文设计和实现了一个基于Java的中小型企业人事管理系统,以解决中小型企业人事管理的手工管理方式,提高企业人事管理的自动化和信息化水平。系统使用Java和MySQL...

    ChutiyaChidiya:使用Phaser制作的低劣Flappy Bird克隆

    中谷千代一个低劣的Flappy Bird克隆。 你可以玩住我的博客上。 在今年(2017年)Steam Sale期间下载PC版《铁拳7》和其他游戏时,我什么都没有做。所以,为了填补空白,我想我会尝试在Phaser中制作一款小型游戏,该...

    旅游纪念品的特征与设计分析报告.doc

    功能分析强调设计时要考虑纪念品的实际应用,使其在美观的同时兼具实用性。语义分析则关注如何通过设计传达出纪念品背后的故事和文化含义。地域文化分析指出,充分利用地方文化资源,使纪念品具有鲜明的地方特色,...

    基于FPGA伺服系统控制器的设计.pdf

    在分析了给定文件内容后,以下是关于“基于FPGA伺服系统控制器的设计”的知识点详细说明: 1. 伺服系统概述:伺服系统是一种根据输入信号自动控制执行机构位置或状态的自动控制系统。在本研究中,特别针对的是导弹...

    2017年建筑工程技术毕业设计论文正文.doc

    建筑工程技术毕业设计论文主要探讨了混凝土裂缝的成因与控制,这是建筑工程中常见的问题,具有重要的实践意义。混凝土裂缝不仅影响建筑物的外观,更可能威胁结构的安全性与耐久性。以下是论文的主要内容: 首先,...

    机械设计自动化设备的安全控制管理 (2).pdf

    机械设计自动化设备的安全控制管理是工业生产中至关重要的环节,它直接关系到生产效率、设备安全及员工的生命财产安全。随着我国工业的迅猛发展,大量工业企业不断涌现,市场竞争日益激烈。在这样的背景下,必须加强...

Global site tag (gtag.js) - Google Analytics