待兔 待兔
3年前
理解软件设计的基本原则
任何软件唯一不变的真理是变化,毕竟软件是"软"的。软件研发需要快速响应市场、需求的变化。为了快速响应,我们可以通过增加人手来达到部分目的,但软件开发属于知识密集型工作,当人数增加到一定数量后,不仅不能够提升研发效能。反而增加管理成本,沟通成本及由于人与人沟通、理解上产生的歧义而最终造成软件实现的混乱和复杂度。所以软件本身需要能够轻易的扩展,适应各种需
Wesley13 Wesley13
3年前
java之设计模式
看了设计模式,感觉自己很多不理解什么意思,通过看博客别人写的理解,总结了一下,方便查阅。一、设计模式六大原则1、单一职责原则:定义:应该有且只有一个原因引起类的变化。注意:这里的类不光指类,也适用于方法和接口,比如我们常说的一个方法实现一个功能。2、开放封闭原则:定义:类、模块、函数等
待兔 待兔
2年前
面向对象设计原则之 - 高内聚
通常在面向对象设计中,我们经常听到,高内聚,低耦合,那么到底什么是内聚呢?内聚究竟是什么?参考百度百科的解释,内聚的含义如下:内聚(Cohesion),科学名词,是一个模块内部各成分之间相关联程度的度量。我自己的理解是:内聚指一个模块内部元素之间的紧密程度看起来很好理解,但只要深入思考一下,其实没有那么简单。首先,“模块”如何理解?一定会有人说,模块
架构师日记-深入理解软件设计模式 | 京东云技术团队
本文从设计模式与编程语言的关系,设计模式与架构模式的区别,设计原则和设计模式的关系等几个维度进行了分析和解答。关于设计模式应该如何学习和应用的问题,给出了学习意见和实践心得。
待兔 待兔
2年前
面向对象设计原则之 - 低耦合
耦合到底是什么?耦合(或者称为依赖)是程序模块之间的依赖程度。从定义上看,耦合和内聚是相反的:内聚关注模块内部的元素的结合程度耦合关注模块之间的依赖程度理解耦合的关键有两点:什么是模块?模块和内聚里面提到的模块是一样的,耦合中的模块其实也是可大可小的。常见的模块有函数,类,包,子模块,子系统等什么是依赖?依赖这个词很好理解,通俗地讲,就是
Stella981 Stella981
3年前
RestFul服务介绍
1\.REST介绍REpresentationalStateTransfer(REST)是一种架构原则,其中将web服务视为资源,可以由其URL唯一标识。RESTfulWeb服务的关键特点是明确使用HTTP方法来表示不同的操作的调用。REST的基本设计原则对典型CRUD操作使用HTTP协议方法:POST创建资源GET
Wesley13 Wesley13
3年前
Java设计模式之三种工厂模式
工厂模式实现了创建者和调用者的分离,实现了更好的解耦。详细分类:1)简单工厂模式(静态工厂模式);2)工厂方法模式;3)抽象工厂模式面向对象设计的基本原则:1)      OCP(开闭原则,OpenClosedPrinciple):一个软件的实体应当对扩展开放,对修改关闭。2)      
Wesley13 Wesley13
3年前
360°透视:云原生架构及设计原则
云原生(CloudNative)的概念,由来自Pivotal的MattStine于2013年首次提出,被一直延续使用至今。这个概念是MattStine根据其多年的架构和咨询经验总结出来的一个思想集合,并得到了社区的不断完善,内容非常多,包括DevOps、持续交付(ContinuousDelivery)、微服务(MicroServices)、敏捷基础设施
京东云开发者 京东云开发者
1个月前
「软件设计哲学」于延保代码改造中的实践
作者:京东保险王奕龙本文主要给大家分享软件设计中的两个理念,为什么我称软件设计是“理念”而不是“方法”或“原则”呢?这个想法主要受《Aphilosophyofsoftwaredesign》的影响,它将软件设计称为“哲学”,而哲学本身没有严格的定论,同样地,