`
gdpglc
  • 浏览: 93707 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

OO的环境下,需要控制对象

 
阅读更多
对象已经存在,但没有你需要的功能。这时需要在已有对象的基础上编写逻缉,这样的逻缉作为控制逻缉存在是合适的。

比如:String的 非null非空串判断

又如:调用别人提供的webservice API,一样存在类似的情况。

这说明,在现实的OO编程中,还是需要一部份逻缉是独立存在的,而它相关的数据不是和它在一个地方的。

这样的逻缉,因为不能随着对象的出现而出现,因此可能会写死到业务逻缉中,从而形成重复代码。
软件中的Helper或Util类就是用来放这种逻缉的地方。可以在任意位置使用。
分享到:
评论
2 楼 gdpglc 2011-11-18  
呵呵... 这例子很有启发。

我说的情况是对已有对象加入新功能时,需要Helper和Util。
你说的情况是多种操作之间存在共同的逻缉,这种重复不是因为没有恰好的对象分解,而是因为过程间存在相同的步骤,这些相同的内容可以封装,但是调用点以及调用结果对调用者控制流转的影响是无法避免重复的。

这时你说的方法很有效,这更向是AOP。
1 楼 悲剧了 2011-11-18  
比如在web开发里,登录用户信息存放到session里面,需要使用用户信息,就需要每次都判断session是否存在,还要判断里面是否存在user找个对象,造成很多冗余代码,而且污染了业务逻辑 代码也很难看

同一封装这些东西,写一个Helper或者util 比较好

但结合web可以根据路径对进入这下面的请求都所拦截,如果你找个请求里面不存在user,那么统一给处理

然后开发时候,在下面写的代码也不需要做任何判断,直接取接ok了

相关推荐

    oo面向对象

    - **集成环境:** 可以在Quest3D接口选项卡中添加面向对象编辑器,增强项目的开发效率。 **操作指南:** - 为了添加面向对象编辑器,可以通过右键点击Quest3D接口选项卡并选择相应的菜单项。 综上所述,面向对象...

    在VB中利用OO4O技术操作Oracle中大对象的应用研究.pdf

    【描述】: 这篇文章探讨了如何在Visual Basic(VB)环境中使用Oracle Objects for OLE (OO4O)技术来高效地操作Oracle数据库中的大对象,如Long Raw、BLOB等类型的数据。 【标签】: Oracle 数据库、关系型数据库、参考...

    实战OO 鲁棒 分析

    在软件工程领域,“鲁棒性”(Robustness)指的是系统在异常或压力环境下仍能保持稳定运行的能力。在面向对象(Object-Oriented,简称OO)设计中,鲁棒分析是一种评估和增强系统鲁棒性的方法。它帮助设计师识别系统...

    OO中对于23种设计模式的整理

    代理模式给某一个对象提供一个代理对象,并由代理对象控制对源对象的引用。代理就是一个人或一个机构代表另一个人或者一个机构采取行动。某些情况下,客户不想或者不能够直接引用一个对象,代理对象可以在客户和目标...

    oracle_sdk(OO4O)

    **二、VC++环境下的设置** 在使用OO4O前,首先需要在VC++项目中包含必要的库和头文件。这通常涉及以下步骤: 1. 添加引用:在项目设置中,添加Oracle OLE DB Provider(如msdaora.dll)作为项目的引用。 2. 包含...

    5-第五章:面向对象的数据模型和对象关系数据模型.pdf

    这些途径包括在面向对象的程序设计语言环境中扩展数据库功能,为OO语言提供数据库支持的类库,以及在关系数据库上增加面向对象的DDL和DML。此外,还探讨了开发全新面向对象数据库的数据模型或数据语言的可能。 最后...

    Oracle oo4o vs2010 c++

    在VS2010中使用Oracle OO4O进行数据库操作,首先需要确保已安装了Oracle的客户端库和必要的开发组件,例如ODAC(Oracle Data Access Components)。安装完成后,开发者可以在项目中引入Oracle的头文件,如`ORACL.H`...

    Java OO 试题.doc

    Java面向对象编程(Java Object-Oriented Programming,简称Java OO)是Java编程语言的核心特性,它基于类和对象的概念,提供了封装、继承、多态等关键功能,使得代码更加模块化和可重用。 1. **字节码**: Java源代码...

    面向对象的嵌入式系统设计方法

    在面向对象(Object-Oriented,OO)设计中,核心概念包括类(Class)、对象(Object)、继承(Inheritance)、多态(Polymorphism)和封装(Encapsulation)。类是具有相同属性和行为的对象模板,而对象则是类的实例...

    关于面向对象的哲学体系及科学体系的探讨

    - **持续学习和发展**:面向对象设计是一个不断学习和改进的过程,开发者需要不断地探索新的技术和方法,以适应不断变化的需求和技术环境。 #### 后记 通过对面向对象的哲学体系和科学体系的深入探讨,我们可以更...

    面向对象软件测试及测试用例设计1

    例如,模拟对象、桩对象和驱动程序等工具可以用于创建和控制测试环境。 总结来说,面向对象软件测试需要理解和适应面向对象技术的特性,采用适应这些特性的测试策略,确保软件的质量和可靠性。这包括深入理解对象...

    面向对象系统分析与设计

    OO分析(OOA)专注于识别和定义问题域的对象,而OO设计(OOD)则涉及构建这些对象的结构和交互,以满足系统需求。面向对象编程(OOP)是实现这些设计的实际编程技术,如Java、C++或Python等语言。 统一建模语言...

    基于Oracle数据库OO4O技术的应用研究.pdf

    在C++环境下,OO4O提供了一套完整的C++类库,这些类封装了访问Oracle数据库的主要API函数。这些API函数为数据库访问提供了丰富的方法和接口,使得开发者能够更加直观和高效地编写与Oracle数据库交互的代码。其中,...

    Data-OO.rar

    它的API设计遵循了Python的面向对象特性,易于理解和使用。 2. **数据操作**:在PyQt中,我们可以利用SQLite数据库进行数据操作,SQLite是一个轻量级的、文件式的数据库,无需单独的服务器进程,可以直接嵌入到应用...

    学习OO设计概念和Java中的MDI应用程序开发的项目_Java_下载.zip

    在这个项目“学习OO设计概念和Java中的MDI应用程序开发”中,我们将深入探讨面向对象(Object-Oriented, OO)设计的基本原则以及如何在Java环境中实现多文档界面(Multiple Document Interface, MDI)应用程序。...

    基于OO4O和VC 6.0实现Oracle数据库操作.pdf

    通过OO4O和VC++ 6.0的混合编程,开发者可以方便地实现对Oracle数据库的各种复杂操作,不仅限于基础的CRUD(创建、读取、更新、删除),还可以涉及存储过程、触发器、索引、事务控制等高级功能。这种技术在开发企业级...

    oo_lib.rar_oolib_oolib官网_图书馆系统

    "OO_lib.rar"是一个包含"OOLib"(Object Oriented Library)的压缩文件,这是一个专门用于构建图书馆管理系统的对象导向软件。"OOLib"的设计理念是利用面向对象编程的思想,提供一个高效、灵活且易于维护的解决方案...

    OO第一次作业1

    在完成这个作业时,学生需要掌握C语言和Java语言的基本语法,理解一元多项式运算的逻辑,熟悉控制流图的绘制,以及掌握在控制台环境下进行输入输出操作。此外,还需要具备良好的编程习惯,编写清晰的文档,以及处理...

Global site tag (gtag.js) - Google Analytics