
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的人都在学习计算机编程开发等互联网技术,而本文我们就通过案例分析来简单了解一下,面向对象设计都有哪些方法。
1、什么是面向对象分析和面向对象设计?
前面我们讲了面向对象编程(OOP),实际上,跟面向对象编程经常放到一块儿来讲的还有另外两个概念,那就是面向对象分析(OOA)和面向对象设计(OOD)。面向对象分析英文缩写是OOA,全称是ObjectOrientedAnalysis;面向对象设计的英文缩写是OOD,全称是ObjectOrientedDesign。OOA、OOD、OOP三个连在一起就是面向对象分析、设计、编程(实现),正好是面向对象软件开发要经历的三个阶段。
关于什么是面向对象编程,我们前面已经讲过了。我们现在再来讲一下,什么是面向对象分析和设计。这两个概念相对来说要简单一些。面向对象分析与设计中的“分析”和“设计”这两个词,我们完全可以从字面上去理解,不需要过度解读,简单类比软件开发中的需求分析、系统设计即可。不过,你可能会说,那为啥前面还加了个修饰词“面向对象”呢?有什么特殊的意义吗?
之所以在前面加“面向对象”这几个字,是因为我们是围绕着对象或类来做需求分析和设计的。分析和设计两个阶段终的产出是类的设计,包括程序被拆解为哪些类,每个类有哪些属性方法,类与类之间如何交互等等。它们比其他的分析和设计更加具体、更加落地、更加贴近编码,更能够顺利地过渡到面向对象编程环节。这也是面向对象分析和设计,与其他分析和设计大的不同点。
看到这里,你可能会问,那面向对象分析、设计、编程到底都负责做哪些工作呢?简单点讲,面向对象分析就是要搞清楚做什么,面向对象设计就是要搞清楚怎么做,面向对象编程就是将分析和设计的的结果翻译成代码的过程。今天,我们只是简单介绍一下概念,不展开详细讲解。在后面的面向对象实战环节中,我会用两节课的时间,通过一个实际例子,详细讲解如何进行面向对象分析、设计和编程。
2、什么是UML?我们是否需要UML?
讲到面向对象分析、设计、编程,我们就不得不提到另外一个概念,那就是UML(UnifiedModelLanguage),统一建模语言。很多讲解面向对象或设计模式的书籍,常用它来画图表达面向对象或设计模式的设计思路。
实际上,UML是一种非常复杂的东西。它不仅仅包含我们常提到类图,还有用例图、顺序图、活动图、状态图、组件图等。在我看来,即便仅仅使用类图,学习成本也是很高的。就单说类之间的关系,UML就定义了很多种,比如泛化、实现、关联、聚合、组合、依赖等。
要想完全掌握,并且熟练运用这些类之间的关系,来画UML类图,肯定要花很多的学习精力。而且,UML作为一种沟通工具,即便你能完全按照UML规范来画类图,可对于不熟悉的人来说,看懂的成本也还是很高的。
所以,从我的开发经验来说,UML在互联网公司的项目开发中,用处可能并不大。为了文档化软件设计或者方便讨论软件设计,大部分情况下,我们随手画个不那么规范的草图,能够达意,方便沟通就够了,而完全按照UML规范来将草图标准化,所付出的代价是不值得的。
所以,我这里特别说明一下,专栏中的很多类图我并没有完全遵守UML的规范标准。为了兼顾图的表达能力和你的学习成本,我对UML类图规范做了简化,并配上了详细的文字解释,力图让你一眼就能看懂,而非适得其反,让图加重你的学习成本。毕竟,我们的专栏并不是一个讲方法论的教程,专栏中的所有类图,本质是让你更清晰地理解设计。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!请读者仅作参考。更多内容请加抖音太原达内IT培训学习了解。