`

继承和组合的关系

 
阅读更多

个人工作的感触:

     首先框架的编写是难度很大,而工具类的编写相对比较容易,在工作中,已有的成熟的开源框架,基本上的主要功能都已经的实现,对于框架的实现固然要按照框架编写的规范(自认为有些规范),工具类的编写是相对与框架不能实现的,或不通用的,现有框架没有实现,比如在rcp中的表格的导航,这个功能实际上用的很多,但是有不能做成通用的,因为你不知道这个界面要怎么导航,到了下个界面根据业务要怎么导航,所以框架就没有实现这个功能,这就要实现一个工具类,来实现这个功能,它只能是工具类,因为你不可能覆盖原有框架的设计自己在搞一套出来.

下面说下框架的目的和工具类的目的是一样的都是要实现某个功能,框架相当于从零开始全方解决,而工具类则是在现有个框架之上实现某个帮助功能,这个功能不能纳入框架中,因为它是面向前台的或者是不够通用,不能纳入框架的模块之中.

以下是自己的感触:

框架要设计某个功能的时候先用接口定义,然后让类去继承这个接口然后就实现了这个功能,这个类可以是抽象的或者是不抽象的,接口的设计要分主次,就是说一个接口设计成一个主功能点,然后还有很多辅助的功能点,要设计成不同的接口这样,在实现的时候可以先继承主接口的实现类,若要加入别的功能,则要在另外实现接口,这样做的好处是可以把主要功能和次要功能分解开,所以在框架编写的时候就要用到继承和,在设计的时候要用大体思路,和分支思路.

 

而工具类编写相对比较考虑的因素较少,因为你不是覆盖框架只是提供了功能点,这个功能点是个开关拿掉和加上去,不能影响框架的运行.复杂的工具类可以借组框架的设计来实现功能点,但是这个功能点总体上是开关式的.

分享到:
评论

相关推荐

    再论组合和继承

    总结来说,继承和组合是面向对象编程中的关键概念,它们分别代表了“is-a”和“has-a”的关系。理解并熟练掌握这两者,将有助于开发出更加高效、可维护的代码。在C++中,灵活运用继承和组合,能够实现丰富的类层次...

    编程思想14章继承和组合的介绍

    此外,由于组合关系不是固定的,所以更易于扩展和修改。然而,组合也可能带来额外的内存开销,因为每个组合的对象都需要独立存储。 继承和组合的选择通常取决于具体的设计需求。如果需要表示一种“is-a”的关系,...

    C++学习笔记——继承和组合

    根据给定的文件标题、描述、标签以及部分内容,本文将深入探讨C++中的两个核心概念:继承与组合...在实际开发过程中,应根据具体需求选择合适的实现方式,合理运用继承与组合可以使程序结构更加清晰、易于扩展和维护。

    10丨理论七:为何说要多用组合少用继承?如何决定该用组合还是继承?1

    在面向对象编程的世界里,设计...在设计系统时,应权衡继承和组合的利弊,优先选择能够更好地支持代码的可读性、可扩展性和灵活性的结构。在实际编程中,遵循“组合优于继承”的原则,可以提高软件的稳定性和可维护性。

    组合和继承的联合

    在编程世界中,组合和继承是面向对象编程的两种核心机制,它们允许我们构建复用性和可扩展性极强的代码。本章我们将深入探讨这两种概念的联合使用,以及它们在C++中的实现。 组合(Composition)是创建复杂对象的一...

    2022年Decorator模式中遭遇继承与聚合Java教程.docx

    标题中的“遭遇继承与聚合”指的是Decorator模式在处理继承和组合关系时可能遇到的问题。继承是一种“is-a”关系,而组合则是一种“has-a”关系。在Decorator模式中,子类(Decorator)继承父类(Component),同时...

    c++类的一个练习

    本节我们将探讨 C++ 中的继承和组合关系,通过实现一个计算机的类层次结构来加深对这两种概念的理解。 继承 在 C++ 中,继承是一种机制,允许我们创建一个新类,从而继承已经存在的类的特征和行为。继承关系是"is-...

    CSS中的继承关系

    在CSS(层叠样式表)的设计...综上所述,CSS中的继承关系是前端开发中不可或缺的一部分,它简化了样式设置过程,增强了代码的可维护性和一致性。理解并熟练掌握继承机制,对于提升网页设计的效率和质量具有重要意义。

    c++实验\C++实验\继承

    c++实验\C++实验\继承

    Java持久性和休眠指南(S. Hennebrueder)Guide to Java Persistence and Hibernate (S. Hennebrueder)

    对于继承和组合关系,Hibernate提供了注解和XML两种配置方式。 ### 13. 继承映射策略 继承映射允许开发者以面向对象的方式来处理继承结构的数据。Hibernate支持单表继承、连接继承、联合继承等策略,每种策略各有...

    Python面向对象之继承和组合用法实例分析

    本文将深入探讨Python面向对象编程中的继承和组合(Composition)。 **继承**是面向对象编程中的一个重要特性,它允许一个类(子类或派生类)从另一个类(父类或基类)继承属性和方法。在Python中,通过在子类定义...

    UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别

    在UML中,有六种主要的类间关系:继承、实现、依赖、关联、聚合和组合。理解这些关系对于设计高质量的软件架构至关重要。 1. **继承**: 继承是类与类之间的一种层次结构关系,表示一个类(子类)可以从另一个类...

    java中继承和组合中图形的简单类的定义

    ### Java中的继承与组合在图形类定义中的应用 在Java编程语言中,继承与组合是面向对象编程(OOP)的两大核心概念。通过继承,一个类可以从另一个类那里继承属性和方法,从而实现代码的复用;而通过组合,则是在类...

    UML中继承实现依赖关联聚合组合的联系与区别_线条箭头.doc

    在 UML 中,还有泛化关系、关联关系、聚合关系、组合关系等多种关系,这些关系都是类与类、或者类与接口之间的关系,可以用来描述类与类、或者类与接口之间的继承、实现、依赖、关联、聚合、组合等关系。 泛化关系...

    Python面向对象类继承和组合实例分析

    类继承和组合是面向对象编程中实现代码重用和组织类结构的重要机制。本文将详细探讨Python3中的类继承和组合的原理、用法以及在实际应用中的技巧。 首先,我们来看继承的概念。在Python中,继承主要指的是子类继承...

    C++中继承与组合的区别详细解析

    在C++编程语言中,继承和组合是两种重要的面向对象设计原则,它们分别提供了不同的方式来实现代码的重用和类之间的关系。了解这两种机制的区别对于编写高效、可维护的代码至关重要。 首先,继承是一种机制,它允许...

    UML类图关系泛化、继承、实现、依赖、关联、聚合、组合.doc

    UML类图关系泛化、继承、...例如,你和你的大脑之间的关系就是组合关系。 这七种关系所表现的强弱程度依次为:组合>聚合>关联>依赖。需要注意的是,这些关系都是语义级别的,所以从代码层面并不能完全区分各种关系。

    基于面向对象的图书管理系统的设计说明书.doc

    这些类之间的关系通过继承和组合关系来实现。 4. 系统约束: 系统约束包括: * 图书管理员定期或不定期对图书信息进行入库、修改、删除等图书信息管理 * 快速恢复系统和故障处理,方便系统升级和扩充 * 硬件约束...

    UML学习之依赖_关联_聚合_组合_继承

    聚合和组合都表示类之间的整体与部分关系。它们之间的区别主要在于整体与部分之间的关系强度。 1. **聚合(Aggregation):** - 特点:表示整体与部分之间的弱关系,部分可以独立于整体存在。 - 示例代码: ```cpp...

    Java语言类和对象

    游戏开发通常涉及大量的类和对象,比如角色类(Character)、地图类(Map)、游戏状态类(GameState)等,它们之间通过继承和组合关系构成复杂的系统。在实际开发中,我们可能会使用工具如Eclipse、IntelliJ IDEA等...

Global site tag (gtag.js) - Google Analytics