首页 > 其他分享 >软件开发、设计、架构的其他原则

软件开发、设计、架构的其他原则

时间:2023-05-03 13:11:40浏览次数:54  
标签:架构 软件开发 原则 Principle KISS 单元

  • LOD:迪米特法则(Law of Demeter)
  • CRP:合成复用原则(Composite Reuse Principle)
  • DRY:不要重复你自己原则 (Don’t Repeat Yourself Principle)
  • KISS:KISS原则 (Keep It Simple and Stupid Principle)
  • YAGNI:你不需要它原则 (You aren't gonna need it Principle)

迪米特法则

又叫最少知识原则(Least Knowledge Principle)。只和你的直接朋友交谈,不跟"陌生人"说话。

一个软件实体应当尽可能少的与其他实体发生相互作用。每一个软件单元对其他的单元都只有最少的知识,而且局限于那些与本单元密切相关的软件单元。

比如下图所示,客户端不需要了解各子系统间的调用关系,只是对外观类进行访问即可。

外观模式应用

详细讲解请阅读软件开发、设计、架构的其他原则

本文由IT文艺男(微信公众号itwenyinan) 原创!

标签:架构,软件开发,原则,Principle,KISS,单元
From: https://www.cnblogs.com/appsucc/p/17368950.html

相关文章

  • 一文搞懂 x64 IA-64 AMD64 Inte64 IA-32e 架构之间的关系
    想要搞清楚x64、IA64、AMD64指令集之间的关系,就要先了解Intel和AMD这两家公司在生产处理器上的发展历史。x86处理器1978年Intel生产了它的第一款16bit 处理器8086,之后几款处理器名字也都以86结尾,包括80186,80286,80386,80486,这些处理器的架构被统一称为x86架构。其......
  • CS520 计算机架构
    CS520ComputerArchitectureProject4–Spring2023Duedate:5/8/20231.RULES(1)Youareallowedtoworkinagroupofuptotwostudentspergroup,wherebothmembersmusthaveanimportantroleinmakingsureallmembersareworkingtogether.Besides,you......
  • 携程 x TiDB丨应对全球业务海量数据增长,一栈式 HTAP 实现架构革新
    作者:TiDB社区小助手导读携程作为全球领先的一站式旅行平台,旗下拥有携程旅行网、去哪儿网、Skyscanner等品牌。携程旅行网向超过9000万会员提供酒店预订、酒店点评及特价酒店查询、机票预订、飞机票查询、时刻表、票价查询、航班查询等服务。随着业务量迅速增长,携程需要更敏......
  • C#开发 B/S架构的实验室管理系统 云LIS系统(MVC + SQLserver + Redis)
    一、云LIS系统是将各种样本、免疫、临检、放免、及实验用的分析仪器,通过网络管理和传输实验分析过程中全部数据。对每一专业,实现检验申请、样本采集、样本核收、联机检验、质量控制、报告审核到报告发布的全环节的信息化管理平台。二、基于B/S架构的云LIS系统,整个系统的运行基于WE......
  • 使用 Semantic Kernel 实现 Microsoft 365 Copilot 架构
    3月16日,微软发布了微软365Copilot[1]。Microsoft365Copilot将您现有的Word、Excel、PowerPoint、Outlook和Teams与大型语言模型(LLM)的强大功能以及来自MicrosoftGraph和Microsoft365应用的数据相结合,以创建前所未有的体验。正如您在官方视频中看到的那样,Microsoft......
  • 软件开发人员短缺,低代码等新技术或成解决途径
    导读Reveal发布的一份2023年度软件开发人员调查报告指出,开发人员短缺已经连续第二年成为行业最大挑战。该报告基于对2000多名软件开发人员和IT专业人员的调查数据。超三分之一的受访者(37.5%)表示,掌握熟练技能的开发人员在2023年将非常紧缺,其中DevOps工程师......
  • 17、架构师面试题系列之Maven面试专题及答案(18题)
    架构师面试题之Maven专题篇一、Maven有哪些优点和缺点优点如下:1.简化了项目依赖管理:2.易于上手,对于新手可能一个"mvncleanpackage"命令就可能满足他的工作3.便于与持续集成工具(jenkins)整合4.便于项目升级,无论是项目本身升级还是项目使用的依赖升级。5.有助于多模块项目的开发,......
  • 吴恩达Prompt课 - 02 构建原则
    吴恩达和OpenAI一起制作了节一个半小时的,面向开发者的关于《ChatGPTPromptEngineering》的课,对自己Prompt提高非常有帮助。英文课程地址:https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/我反复学习后,针对每小节的例子和关键部分按......
  • 如何避免单点风险:基于实践经验分享服务拆分原则的一些思考
    缘起:系统崩了具体情况:1%的请求影响了剩余90%的请求架构演进:拆分热点服务【进程级隔离】复盘总结拆服务的经典实践 不能变形的变形金刚也叫变形金刚?缘起系统崩溃了?别惊慌!这里有快速恢复的方法!分析发现,网站崩时服务X被流量打垮,继而依赖服务X的其它服务开始......
  • KISS原则
    KeepItSimple,Stupid(通常缩写为:KISS),是计算机编程中的一个很有名的原则。KISS原则目的是简单,就是一目了然的简单,和“简单就是美”是一个概念。stupid在这里没有贬义,和“傻瓜机”里的“傻”是一个用法,就是易上手,易操作的意思。......