软件设计和软件架构之间的区别

作者简介:

        高科,先后在 IBM PlatformComputing从事网格计算,淘米网,网易从事游戏服务器开发,拥有丰富的C++,go等语言开发经验,mysql,mongo,redis等数据库,设计模式和网络库开发经验,对战棋类,回合制,moba类页游,手游有丰富的架构设计和开发经验。

       并且深耕深度学习和数据集训练,提供商业化的视觉人工智能检测和预警系统(煤矿,工厂,制造业,消防等领域的工业化产品),合作开发商业性游戏

(谢谢你的关注) 

===================================================================== 

          软件设计和软件架构是软件开发生命周期中最重要的两个阶段。两者有时听起来很令人困惑,现在很多的软件开发者仍然对于软件设计和软件架构之间的差异化,以及他们各自在软件开发过程中承担的角色和任务感到困惑,那么这篇文章我们来看看二者有什么区别? 

          ok,直接来正题,让我们清楚地理解它们的区别。

差异:

Topic软件架构软件设计
这是我们正在构建“什么”我们“如何”构建
定义软件架构是指软件系统的基本结构以及创建此类结构和系统的学科。每个结构都包含软件元素、它们之间的关系以及元素和关系的属性。软件设计是定义软件方法、功能、对象以及代码的整体结构和交互的过程,以便最终的功能能够满足用户的需求。
等级结构 – 专注于可由多种设计使用的抽象实施——计划实施架构
例子建筑物的结构包括房间结构、楼梯、水、供暖、通风等基本服务。建筑物的设计包括室内设计、地板、室内材料、装饰、家具和附加服务等。
识别需要包含在软件中的组件和元素。它重点关注如何构建软件。
是关于软件架构是关于软件的整体结构以及各种软件组件所处的位置。这是关于我们想做的事情。软件设计是关于单个软件组件和模块的。这是关于我们想要如何实现这一目标。
特征整体系统设置 - 包括要构建的软件的结构
基本元素 - 核心功能和核心元素
高层结构 - 描述可用性、规模、性能、可靠性、容错、监控、维护等。
正在构建的内容– 满足股东的需求和要求
正确性 – 根据软件要求
效率 – 根据消费者期望高效且有用
不稳定 – 易于理解且易于沟通
可维护性 – 易于维护
文物文档、图表、图表或任何其他有助于堆栈持有者沟通的内容。设计规范文档、流程图、图表、已知限制、设计模型、线框图、UML 图等。
图案无服务器架构、事件驱动架构、微服务架构、SOA、MVC、三层等。GOF(四人组)模式,SOLID 原则, 

 

相似之处:

软件设计和软件架构有几个共同点。这就是这两个术语非常令人困惑的地方。这是软件开发过程中的两个独立阶段,通常会重叠。

  • 它们都关心软件中各种组件和元素的交互和关系
  • 软件设计应与软件架构保持一致
  • 软件设计使用软件架构

 

因此软件架构和设计既要保持各自的完整性,同时又是相互之间依赖的。

欢迎关注订阅:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值