软件设计与软件架构 [英] Software Design vs. Software Architecture

查看:180
本文介绍了软件设计与软件架构的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有人能解释一下软件设计和软件体系结构之间的区别?

Could someone explain the difference between Software Design and Software Architecture?

更具体;如果你告诉别人present你设计 - 你会期望他们present?同样适用于架构。

More specifically; if you tell someone to present you the 'design' - what would you expect them to present? Same goes for 'architecture'.

我目前的理解是:


  • 设计:UML图/流程图/简单线框(对于UI)的系统的特定模块/部件

  • 架构:组件图(示出了该系统的不同模块如何与彼此和其它系统进行通信),什么语言被使用,图案...?

纠正我,如果我错了。我已经提到维基百科对 http://en.wikipedia.org/wiki/Software_design 和<一个文章href=\"http://en.wikipedia.org/wiki/Software_architecture\">http://en.wikipedia.org/wiki/Software_architecture,但我不知道我是否正确理解他们。

Correct me if I'm wrong. I have referred Wikipedia has articles on http://en.wikipedia.org/wiki/Software_design and http://en.wikipedia.org/wiki/Software_architecture, but I'm not sure if I have understood them correctly.

推荐答案

您说的没错没错。一个系统的体系结构是它的骨架。这是一个系统的抽象的最高水平。什么样的数据存储是present,怎么模块互相交流,有什么回收系统到位。就像设计模式​​,有架构模式:MVC,三层分层设计等。

You're right yes. The architecture of a system is its 'skeleton'. It's the highest level of abstraction of a system. What kind of data storage is present, how do modules interact with each other, what recovery systems are in place. Just like design patterns, there are architectural patterns: MVC, 3-tier layered design, etc.

软件设计是关于设计的各个模块/组件。什么是模块x的职责,功能,?的Y级?它能做什么,什么不是?什么样的设计模式可以用吗?

Software design is about designing the individual modules / components. What are the responsibilities, functions, of module x? Of class Y? What can it do, and what not? What design patterns can be used?

因此​​,在短期,软件架构更多的是整个系统的设计,同时软件的设计强调模块/组件/一流水平。

So in short, Software architecture is more about the design of the entire system, while software design emphasizes on module / component / class level.

这篇关于软件设计与软件架构的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆