ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【设计模式之旅】04|当谈论面向对象的时候,我们到底在谈论什么?

2022-01-27 20:34:47  阅读:146  来源: 互联网

标签:谈论 编程语言 04 面向对象 面向对象编程 设计 UML 设计模式


前言:提到面向对象我相信很多人都不陌生,随口基本就能说出面向对象的四大特性:封装、继承、多态、抽象。然而实际上面向对象的内容并不止这些。由于面向对象的设计思想将贯穿我们整个设计模式之旅。所以我们今天聊一下谈论面向对象时经常用到的一些概念及知识点。

什么是面向对象编程(OOP)和面向对象编程语言(OOPL)

面向对象编程中有两个非常重要、非常基础的概念,那就是类和对象。

  • 面向对象编程是一种编程范式或编程风格。它以类和对象作为组织代码的基础单元,并将封装、继承、多态、抽象四个特性,作为代码设计和实现的基石。
  • 面向对象编程语言是支持类和对象的语法机制,并有现成的语法机制,能方便的使用面向对象四大特性编程语言。

一般来讲,面向对象编程都是通过使用面向对象语言来进行的。

如何判定某编程语言是否是面向对象编程语言?

严格意义上讲面向对象编程语言是支持面向对象四大特性并通过类和对象作为组织代码的基本单元的编程语言,但还有一种非严格意义上定义编程语言的就是通过类和对象组织代码比如javascript。其实按照严格意义上很多编程语言都不是面向对象编程语言,但是按照不严格意义定义来讲,现在流行的大部分编程语言都是面向对象编程语言。

什么是面向对象分析和面向对象设计

之所以前面加上了面向对象这几个字,是因为我们是围绕着泪和对象来做需求分析和设计的。设计和分析的最终产物就是类的设计,包括程序被拆解成哪些类,每个类有哪些属性和方法,类与类之间如何交互等等,它们比其他类更加具体、更加落地更加贴近代码,更能顺利的过渡到面向对象编程环节。简单点讲面向对象分析就是要搞清楚做什么,面向对象设计是搞清楚怎么做,面向对象编程就是把分析和设计的结果翻译成代码。

什么是UML?我们是否需要UML?

讲到面向对象分析、设计、编程,我们不的不提到另外一个概念UML,统一建模语言,很多讲解面向对象或设计模式的书籍都会用它画图来表达面向对象和设计模式的设计思路。但是,事实上UML是一种非常复杂的东西,它不仅仅可以画类图还有用例图、顺序图、活动图、状态图等。其实就单单对类图来说其学习成本也是很高的,就单说类与类之间的关系就有很多种,比如泛化、实现、关联、聚合、组合、依赖等。要想完全掌握,并且熟练运用这些类之间的关系,来画UML类图肯定要花很多的学习经历。而且根据个人经验来说UML在互联网公司的使用可能并不大,大部分情况下我们随手画的图就能够满足讨论的需要,因为基本只要能达意和方便沟通就够了,完全为了满足UML规范来画图付出的代价是不值得的。

标签:谈论,编程语言,04,面向对象,面向对象编程,设计,UML,设计模式
来源: https://blog.csdn.net/qq_29819209/article/details/122722673

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有