在软件设计中,"职责"通常指的是一个软件组件(如类、模块或函数)应该做什么。换句话说,它是该组件的功能或行为的描述。例如,一个 "User" 类的职责可能包括 "保存用户信息"、"验证用户凭据"、"获取用户的好友列表" 等。...
想象一下,你正在看着一座正在建设中的摩天大楼。这座大楼的设计和建设,需要多少的专业知识,复杂的工程,以及精密的计算?每一寸土地、每一片砖块、每一根钢筋,都需要经过精心的计划和设计。这就是建筑师的工作,他们通过他们的...
接口隔离原则:(ISP :Interface Segregation Principle)。
MVC(Model View Controller)是一种软件工程中的一种软件架构模式,把软件系统分为三个基本部分:
虽然软件并不会随着时间推移而磨损,但是硬件会,随即也需要对软件做相应改动。硬件更新换代是非常快的。
关于测试,总会有许多讨论,测试是系统一部分还是独立于系统之外?测试分为几种?单元测试和集成测试有什么不一样?质量检查测试,功能性测试,Cucumber 测试,TDD 测试,BDD 测试,分别又是什么?...
架构设计的任务就是找到高层策略和低层细节之间的架构边界,同时保持这些边界遵守依赖关系规则。所谓服务,本身只是一种比函数调用成本稍高的,分割应用程序行为的一种形式,与系统架构无关。...
在所有系统中,总会有一个入口函数,负责创建,协调,监督其他组件的运转。我们通常成为Main函数,在静态编程语言中通常如此。
人们习惯将系统分为三个组件:UI,业务逻辑,和数据库。对于一些简单的系统来说,三个就够了,但是稍微复杂一点的系统组件就不止这三个了。
构建完整的架构边界是一件很耗费成本的事情,在这个过程中,需要为系统设计双向的多态接口,用于输入和输出的数据结构,以及管理相关依赖,以便于划分组件。这里会有大量的前期工作,和后期维护工作。...