根据运行的环境,操作系统可以分为桌面操作系统,手机操作系统,服务器操作系统,嵌入式操作系统等。 阅读目录 面向过程: 面向过程的程序设计POP 面向对象: 面向对象的编程OOP 面向服务: 面向服务的体系结构SOA 面向过程的程序设计采用了节省时间的策略,因为在早期,计算机配置很低并且内存很小,即使运行时间更长,如何保存内存也成为主要任务. 随着硬件技术的发展,硬件不再成为瓶颈. 相反,由于突出了对现实世界的更好仿真和系统的可维护性等问题,因此面向对象的设计应运而生. 如今: 在PC上应用的通用应用系统,由于不需要考虑硬件的限制面向过程程序,但是系统的可维护性要求很高,一般采用面向对象的方法;并且内存需求有限的嵌入式系统,大多使用面向过程的设计和编程. 面向过程(POP)是分析解决问题的步骤,然后使用函数逐步实现这些步骤,然后在使用它们时一一调用它们. 面向对象(OOP)是将构成问题的事务分解为单个对象,创建对象的目的不是完成每个步骤,而是描述解决整个问题过程中某事物的行为. . 这是一个示例,用于说明面向过程和面向对象的编程. 面向服务(SOA)是用于系统开发的新系统体系结构. 在基于SOA架构的系统中,特定应用程序的功能是通过将松散耦合的组件(即服务)与统一的接口定义方法相结合来构建的,从而具有对快速变化的业务环境的良好适应性. 使用面向服务的编程,设计人员只需集成各种服务即可完成系统构建. 通常,面向服务的体系结构主要用于分布式系统的构建. 设计人员集成了一些服务,以通过特定的数据格式完成系统构建. 与面向过程和面向对象相比,面向服务的思想最为细化. . 面向对象,面向过程和面向服务仍然是广泛的指导性编程思想. 它们相互补充,可以帮助我们完成软件设计任务. 首次使用面向流程的内容: 1. 开始游戏, 2. 黑子先走 3. 画画, 4. 判断胜负, 5. 百子轮到了, 6. 画画, 7. 判断胜负, 8. 返回步骤2, 9. 输出最终结果. 上面的每个步骤都作为一个单独的函数实现,问题得以解决. 面向对象设计是从另一个想法解决问题. 整个步步高可分为: 1. 黑白两边的行为完全一样, 2. 棋盘系统,负责绘制图片, 3. 规则系统,负责确定诸如犯规,输赢等. 第一种类型的对象(玩家对象)负责接受用户输入,并向第二种类型的对象(棋盘对象)通知作品布局的变化. 棋盘对象接收棋子的变化,并负责在屏幕上显示此变化. 同时使用第三种类型的对象(规则系统)来确定游戏. 面向对象保证了功能的统一性,从而为扩展奠定了基础. 现在我们需要添加后悔象棋的功能,如果要更改面向过程的设计,则必须更改从输入到判断再到显示的一系列步骤,甚至必须大幅度调整这些步骤之间的顺序. 规模. 如果是面向对象的,则只需更改棋盘对象. 该棋盘系统保存了黑白棋盘. 简单的回溯就足够了,并且不必考虑显示和规则判断. 同时,调用对象函数的顺序没有改变. 更改仅是部分的. 这表明面向对象更容易扩展. 返回目录 顾名思义,面向过程是一种以过程为中心的编程思想. 它也可以称为“面向记录的”. 该过程可以做的是分析解决问题所需的步骤,然后使用该功能逐步实现这些步骤. 使用时,只需一一解决即可. 例如,当我们去计算机房上课时,这是我们开始上课的事件,而这是下课后关闭的事件. 在编程时,我们关心的是某个事件,而不是类本身. 对于面向过程的想法,只要编写针对班级和班级的程序即可编写班级程序,则无需关心如何上班以及其他内容. 返回目录 2.1. 含义 面向对象是一种基于一件事的编程思想. 他允许我们在分析和解决问题时将思考的重点转向现实中的对象,将构成的事物分解为各种对象,并建立对象,以便在解决问题的整个步骤中描述事物的行为,然后通过UML工具阐明这些对象之间的连接,最后使用一种面向对象的语言来实现该对象和对象之间的连接. 2.2. 例子 例如,当我们来到计算机教室上课时,上课和下课就是一种类型的事情. 班级和班级可以具有自己的属性,学生,老师等面向过程程序,也可以有自己的方法,用中文讲课,用英语讲课等. 如何讲授班级行为,而不是课堂上的每个事件. 返回目录 3.1. 含义 面向服务是描述服务之间的松散耦合. 松耦合系统来自业务,而面向对象的模型紧密耦合. 面向服务的体系结构并不是新事物,它是更传统的面向对象模型的替代方案. 模型. 面向服务的设计的三个原则是无状态,单实例和清晰的服务接口. 明确的服务接口是强制性和必要的,但无状态和单实例不是强制性的原则,尽管服务的状态管理会增加服务的复杂性,而多实例也会增加服务的复杂性(需要增加同步性)并发处理等,并会导致访问不确定),但这在许多情况下是不可避免的. 3.2. 例子 播放CD. 您可以将要播放的CD放入CD播放器中. CD播放器将为您播放此CD. CD播放器提供CD播放器服务. 这样做的好处是您可以使用不同的CD播放器来播放同一张CD. 他们可以提供相同的CD播放服务,但是服务质量不同. SOA的思想明显不同于面向对象的编程. 面向对象编程强烈建议您将数据绑定到其操作. 因此,在面向对象的编程风格中,每个CD都有自己的CD播放器,因此无法拆卸. 这听起来很奇怪,但这就是我们构建许多现有软件系统的方式. 返回目录 组件不是一个新概念. Java中的javaBean规范和EJB规范是典型的组件. 组件的特征在于它定义了一种通用的处理方法. 例如,JavaBean具有内部视图功能,因此可以通过工具实现JavaBean的可视化. EJB规范定义了企业服务中的某些功能,因此EJB容器可以将企业计算所需的功能添加到EJB规范兼容的代码中,例如事务,持久性和池化. 因此,组件比对象的进步在于通用规范的引入. 通用规范通常可以向组件添加新功能(如上所述),但也给组件增加了限制,例如,您需要实现一些EJB接口 COP比OOP更进一步. 通常,OOP将数据对象组织成实体. 该方法具有许多优点. 但是,OOP有一个很大的局限性: 对象之间的相互依赖性. 消除此限制的一个好主意是组件. 组件和通用对象之间的主要区别在于可以替换组件. 将一般需求函数与不相关的类分开;同时,它可以使许多类共享一个行为. 行为更改后,只要可以修改行为,就无需修改许多类. AOP是一种获得分散关注的编程方法,它将“关注点”封装在“方面”中. 返回目录 5.1. 面向对象是高度抽象的事物. 5.2. 面向过程是自顶向下的编程 5.3. 面向对象必须首先构建一个抽象模型,然后直接使用该模型. 5.4. 面向过程(OP)与面向对象(OO)之间的本质区别在于分析方法的不同,最终导致了不同的编码方法.
|
温馨提示:喜欢本站的话,请收藏一下本站!