zoukankan      html  css  js  c++  java
  • 设计是为了方便开发和维护

    很多人学习面向对象和设计模式,往往是为了技术而技术,只是学到了形式,很僵化。这都是因为没有把握好技术的目的是为了什么。对于设计来说,他的目的就是为了方便软件开发和软件维护。 

    不提倡滥用设计,在于设计是和你当前的软件开发需要是相匹配的。对于你这个项目的要求,可能平铺直叙,直观的方式是最有效率的。因为只有你一个人在干,你就没有必要通过设计来分配功能任务给若干个开发人员,没有这种需求,就没有这个设计的必要。又因为你这个项目很小,设计一个高度抽象的架构出来,却只有一个简单的实现,框架的灵活性完全排不上用场,结果设计的成本比你开发的成本要高太多太多,也就没必要了。 除非你是在做教案,才有必要对每一个细节都那么关注,以达到高度的设计要求,日常开发是需要考虑成本的,而设计本身就是成本之一。

    况且,设计是有风险的,你不能保证你的设计一定是完美无缺,越复杂的设计,对你的设计能力要求越高,你可有信心驾驭得了?

    因此,我提倡要将设计的目的时时刻刻放在心上,你要关注,现在的设计是有否有效提高你的开发效率,提高你以后软件维护的效率,并且应该基于项目的现实,而不是理论上的,理论上任何一个同等耦合性的设计都相同,但是实际上,具体的项目往往也就有少数几个地方的需求经常改变,需要你后期维护而已。

    如果你不能估计出这个设计是否对自己有利,那你为何非要不断的苛求完美的设计?这难道不是一种为了设计而设计,走火入魔的行径么?!

  • 相关阅读:
    RUST实践.md
    redis.md
    opencvrust.md
    aws rds can't connect to mysql server on 'xx'
    Foundation ActionScript 3.0 With Flash CS3 And Flex
    Foundation Flash Applications for Mobile Devices
    Flash Mobile Developing Android and iOS Applications
    Flash Game Development by Example
    Actionscript 3.0 迁移指南
    在SWT中非UI线程控制界面
  • 原文地址:https://www.cnblogs.com/Nobel/p/1712578.html
Copyright © 2011-2022 走看看