服务粉丝

我们一直在努力
当前位置:首页 > 科技 >

软件开发的七条原则是什么?

日期: 来源:八米卢郞收集编辑:系统

原则#1:存在的原因

软件系统存在的原因:为用户提供价值。所有的决定都应该考虑到这一点。在指定系统需求之前,在关注系统的各个功能之前,在确定硬件平台或开发过程之前,问问自己以下问题:这是否能为系统真正增加价值?如果答案是否定的,那就不要去做。所有其他原则都以这一条为先。

原则#2:KISS

软件设计不是一个偶然的过程。任何设计工作都需要考虑许多因素。所有的设计应该尽可能简单,但不要过于简化。

复杂性是你的敌人。任何傻瓜都能让事情变得复杂。反之则很难。

——Richard Branson

这有利于拥有更易于理解和易于维护的系统。但并不是说应该以简单的名义抛弃功能,甚至是内部功能。当然,通常而言,更优雅往往意味着更简单。

简单是终极的复杂。

——Leonardo Da Vinci

简单也并不意味着快速和肮脏。事实上,为了简化,我们经常需要大量思考和多次迭代工作。收获是更易于维护且不易出错的软件。

这一直是我的一个座右铭——集中和简单。简单或许会比复杂更难;你必须花很多力气使自己的思维变得简单、有条理。

——Steve Jobs

原则#3:维护愿景

明晰的愿景对于软件项目的成功至关重要。否则,项目最终基本上都将陷入左右摇摆的境地。没有概念的完整性,系统就很有可能成为不兼容设计的拼凑物——被错误的螺丝钉连接在一起。

概念完整性是系统设计中要考虑的最重要因素。

——Fred Brooks

建立一个干净的内部结构对构建一个易于理解、可扩展和重组、并且可维护和可测试的系统而言至关重要。

——Stroustrup

只有清晰认识系统架构,才有可能发现常见的抽象和机制。利用这种通用性最终将使得系统更简单,因此也会更轻巧、更可靠。

- Grady Booch

妥协软件系统的架构愿景会削弱并将最终破坏系统,甚至是设计得尽善尽美的系统。拥有一个能够实现愿景和执行合规性的授权架构师有助于确保软件项目的成功。

原则#4:生产其他人消费的东西

很少有工业级的软件系统是在真空中构建和使用的。其他人将以某种方式,或者其他依赖于能够理解系统的方式使用、维护、记录。因此,始终指定、设计,以及实现了解他人将有助于了解你在做什么。任何软件开发产品的受众都可能很大。

指定用户。设计,牢记实施者。关注那些必须维护和扩展系统的代码。有的人可能需要调试你编写的代码,这使得他们成为你的代码用户。方便他们工作可以为你的系统增添价值。

原则#5:面向未来

寿命较长的系统具有更大的价值。在今天的计算环境中,当规格在刹那间发生变化并且硬件平台过几个月就变得过时时,软件寿命常常用月来衡量而不是用年。然而,真正的工业级软件系统必须能坚持更长时间。要做到这一点,系统必须能够适应这些改变。可以成功实现这些目标的系统都是从一开始就以这种方式而设计的。切勿在设计时自找麻烦。总是问“假使这样,那会怎么样”,并通过创建解决一般问题,而非仅仅是具体问题的系统来准备好所有可能的答案。这很可能促使整个系统的重用。

滥用这个原则是我看到很多开发者出错的地方。拥有多年的经验和其中许多人致力于单个项目的好处之一是你可以了解YouArentGonnaNeedIt的优点。作为开发者,除非我们也是该领域专家,否则我们经常会猜错系统将如何改变。

系统确实发生了变化,但通常会殊途同归,因而广义的解决方案就变成了包袱。

——Sal Mangano

原则#6:预先规划重用

重用可节省时间和精力。实现高水平的重用可以说是开发软件系统最难的目标。代码和设计的重用已被宣称为使用面向对象技术的主要优势。但是,这项投资的回报并不是自动的。为了利用面向对象编程提供的重用可能性,我们需要预先考虑和规划。在系统开发过程的每个级别都有很多技术可以用来实现重用。详细设计和代码级别的重用技术不但众所周知而且是有文档的。

新的文献正在以软件模式的形式寻觅设计的重用。然而,这只是战斗的一部分。与组织中的其他人交流重用的机会至关重要。如何重用你不知道的东西?提前规划重用可降低成本并提高可重用组件及其所在系统的价值。

原则#7:三思而后行!

这最后一条原则可能是最容易被忽视的。在行动之前形成一条清晰和完整的思路几乎总能够产出更好的结果。只有你考虑到了某个问题,你才更有可能解决它。你还可以从中获得有关如何再次正确做这件事的知识。

如果你确实考虑到了某件事情,但仍然做错了,那么这就是你宝贵的经验。思考还有一个成果是可以学习到当你不知道某个东西,此时该如何研究答案的过程。

明确的思想进入到系统,就会产出价值。应用前六个原则需要深入的思考,当然潜在的回报也是不可估量。

英文原文:Seven Principles of Software Development

相关阅读

  • 西峰区 “互联网+智慧医疗”守护老年人健康

  • 1月5日,甘肃省庆阳市西峰区安定路街道社区卫生服务中心医疗组组长李红霖一边问诊,一边根据电脑内的人工智能辅助诊疗系统提示,录入主诉、现病史等基础信息,结合系统弹出的AI辅诊
  • 一键清除系统垃圾文件的bat批处理

  • 电脑使用久了,系统或者软件就会产生大量的日志文件、临时文件等垃圾文件。这些垃圾文件日积月累,不仅会大量占用磁盘空间,也会严重拖慢系统运行速度。所以定时清理垃圾文件十分
  • 武汉首座!已基本建成

  • “四季恒温”要来了!
    日前武汉首座大型集中分布式能源站——中法生态城能源站项目一期工程已基本建成
    这座“超级中央空调”将具备运行条件可分季节为辖区103万平方米建筑提
  • 年年都说性能过剩,为啥你的手机还是会卡?

  • # 卡顿这件 “ 小 ” 事手机,为啥会卡顿?这个问题相信差友们都有不少自己的看法,毕竟换手机的原因千千万,系统卡顿占一半。谁也不希望咱们在寒风中打开镜头拍摄或者扫码,结果需要

热门文章

  • OPPO k1的低价高配真实么?网友:不看不知道

  • 近日OPPO一款新机OPPO k1,摒弃了高价低配,就连自家老大哥r17都要怼一下。更是放弃了请代言人,以往的OPPO手机还没出来,各路流量小生,花样美男的代言就先来了。还有线下销售人员的
  • 一招教你手机无限制成为一台新设备

  • 大家平时用手机去注册app,肯定会遇到检测设备异常,交易关闭,等问题 这个都是手机已经不止1-2次注册过此app,不断更换手机仅是一个暂时的方法,却不是长久之计,手机总归会用完
  • 从零开始如何开网店

  • 随着互联网的高速发展,人们的生活发生了翻天覆地的变化,生活节奏越来越快,网购已经成为家家户户生活中离不开的一种购物方式了。网购的发展使得越来越多的人想要涉足电商事业,那

最新文章

  • 考评前五名区市奖励500万元—100万元

  • 大小新闻1月9日讯(YMG全媒体记者 孙长波 高少帅)在今日上午举行2023年度首场新闻发布会,市政协副主席、市发展改革委主任王松杰说,关于推动经济首季良好开局的若干措施包括十条:
  • 烟台举行2023年度首场新闻发布会

  • 大小新闻1月9日讯(YMG全媒体记者 孙长波 高少帅)为更好统筹疫情防控和经济社会发展,稳定社会预期,昨天,市委常委会审议通过了推动经济高质量发展“一揽子”政策措施,并以市政府名
  • 2022,综艺十大“关键词”

  • 很难用简单的一句话去概括2022年的综艺。文娱产业提质减量的大背景,综艺自然身处其中;不过,综艺赛道自身的发展阶段,也决定了它面临着更复杂、更严峻的问题。根据云合数据发布的
  • 腾讯投资原点安全,持股12.31%

  • 科技边角料获悉北京原点数安科技有限公司日前发生工商变更,注册资本从890.5632万元增至1033.0533万元,股东新增广西腾迅创业投资有限公司(持股12.31527%)、珠海市国资旗下珠海苹
  • 倾力为民!全力打造政务服务的新罗样板

  • 近年来,新罗区按照省、市、区关于“放管服”改革工作的部署精神,迈出打造政务服务环境新罗样板的坚实步伐,提高政务服务效能,不断提升企业、群众的获得感和满意度。坚持“简便快