有人可以解释系统设计和面向对象设计之间的区别吗?
面向对象设计涉及对象建模并使用面向对象的概念,例如抽象、封装、分解和泛化。两种设计都涉及建筑设计和概念设计。
设计范例之一是其他设计范例的子集吗?
有人可以解释系统设计和面向对象设计之间的区别吗?
面向对象设计涉及对象建模并使用面向对象的概念,例如抽象、封装、分解和泛化。两种设计都涉及建筑设计和概念设计。
设计范例之一是其他设计范例的子集吗?
系统设计是设计软件/应用程序作为一个整体[高级],可能包括分析、建模、架构、组件、基础设施等。而面向对象的设计是一组定义的规则/概念,用于在一个内部实现功能软件。
打个比方,一场足球比赛。
所以系统设计涉及足球场的设计、球门杆、地面上的草、地面的位置、地面的长度/宽度、在地面上放置线标记、记分牌、定义比赛球队、比赛人数等等
现在,以面向对象的设计为例:需要如何玩游戏是由一组需要遵循的规则来定义的。因此,玩家需要在定义的规则内玩游戏。因此,球员对这些规则了解得越多,他们就越能在不犯规的情况下进行比赛。同样,面向对象概念的规则是继承、组合、抽象、封装。因此,我们对这些概念了解得越多,我们就能做出更好的设计。
@Prashant,希望它能解释一下
假设您要设计一个在线购物网络应用程序(如 amazon.com)。因此,在制作该 Web 应用程序之前,您必须考虑:
因此,所有这些都将属于系统设计,因为它们是任何系统工作所必需的。
现在,一旦你完成了所有这些事情并去实现(编写代码)系统的任何部分,那么你就可以按照面向对象的设计来制作类、接口等。
例如,您开始实现通知微服务(例如在 Java 中),所以现在您必须设计类、接口等,为此,您可以使用 SOLID 等面向对象的设计原则。
所以我们可以说面向对象设计是系统设计的一部分,当我们开始为系统的任何部分进行实际实现时,它就会出现。
System in System Theory can be everything. (Facets of Systems Science, George Klir, 1991) System is on TOP of TREE, Superclass of other categories.
In overall, System Development included 2 major phases:
1- System Analysis: including Planning, requirements, analysis and etc. These items related to specific methodology in system theory.
2- System Design: including design, implementation, test, deploy, maintenance and etc.
As I said, System can be everything. For example:
Mechanical systems, Psychological systems, Social systems, Aircraft Systems and so on. Each category may have detailed and specific analysis and design steps based on mentioned 2 major phases.
In computer world, Software Systems is one of System categories. Each software Analysis and Design method is based on mentioned 2 major phases too.
Additionally, In Software Systems, we have some paradigms to analysis and design like:
Structural/Process Centered
Data Centered
Object Oriented
Service Oriented
and etc.
Each of them has it's own Analysis and Design Steps. These steps are based on 2 major phases as well. But in details, they have some differences.
To sum up, Systems Analysis and Design is a big picture to all other type of systems. Learning System Analysis and Design helps to understand all other systems analysis and design and specially helps to compare and evaluate them.
对象是系统的一部分。您可以认为面向对象设计是系统设计的一部分。您可以在高级(带有概述)或低级(带有详细信息)中设计系统。它将突出显示
在进行面向对象设计时,您可以认为您必须使用一些对象并在它们之间建立关系。但在制作对象之前,您需要设计一些类。所以实际上OOD(面向对象设计)是