`
hbkh2000
  • 浏览: 203705 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java package的设计原则

阅读更多

典型的J2EE项目,package的设计有成熟的套路可循,如分为domain、dao、service、action等等,职责已经分解的比较单一和清晰,循环依赖这样的情况出现并不多。而在一般的java项目,如服务器程序、客户端程序和通用性框架的开发中,包的设计并没有套路可循,毕竟由于应用和业务种类的不同,想得出通用性的设计套路是不大可能的。这时候遵循一些原则比之生搬硬套更为重要。在《敏捷软件开发》一书中对包的设计有深入的讨论,虽然针对的是发布的二进制包而言,但是对于java package的设计同样有借鉴意义,如对包的内聚性、可重用性、稳定性的强调,对于依赖的探讨,这些都是比较笼统的概念,不是那么直观,需要在实际运用中认真归纳和重构,向这些原则靠拢。

    我所想到一个比较直观的方法就是:对于一个包的描述,你是否能用一句简明扼要的话概括,也就是包的功能或者说介绍能否做到简明扼要,这是衡量一个包的设计是否合理的最简单的方法。如果可以,显然这个包的内聚性很好,所有的类都服务于一个目的,从而带来了重用的可能(其实我对重用性并不感冒,除了工具类外真正能重用的东西少之又少,内聚性才是需要关注的);反之,这个包可能承担了太多的职责或者依赖过多,仔细的重构和分离是需要做的。包的设计同样要遵循接口分离的原则,将接口与实现隔离在不同的包之中,客户程序就不会知道具体的实现,并且也保证了实现对接口的单向依赖。当然,这时就需要引入工厂类、插件或者IOC容器来负责实例化实现类。

分享到:
评论

相关推荐

    java 程序设计思想

    本书的核心目的是帮助新手程序员理解和掌握这些设计原则和最佳实践,从而提升他们的编程水平和思维方式。下面将详细讨论Java程序设计中的关键知识点。 1. **面向对象编程(OOP)**:Java是一种面向对象的语言,其...

    《Java程序设计》教案

    《Java程序设计》是计算机科学领域的一门重要课程,它主要教授如何使用Java语言进行...通过系统的教学和实践,学生不仅能学会编写Java程序,还能理解面向对象设计的原则和最佳实践,培养良好的编程习惯和问题解决能力。

    java编程规范编程原则

    ### Java编程规范与基本原则 #### 一、引言 Java作为一种广泛应用的编程语言,其代码的质量不仅直接影响到软件系统的稳定性与可维护性,而且对于团队协作有着不可忽视的影响。因此,建立一套统一且高效的编程规范...

    面向对象(Java)思想与设计原则.ppt

    本讲座将深入探讨面向对象思想及其在Java中的应用,同时结合设计原则,帮助你理解和掌握如何高效、优雅地编写代码。 一、面向对象的基本概念 1. 对象:面向对象的核心是对象,它代表现实世界中的实体,具有属性...

    java应用架构设计

    3. **模块化设计原则** - 单一职责原则(Single Responsibility Principle, SRP):每个模块应只负责一项功能,避免功能混杂。 - 开闭原则(Open-Closed Principle, OCP):模块应可扩展,但不可修改。这意味着新...

    Java语言程序设计

    这门课程主要涵盖Java语言的基础概念和面向对象编程的核心原则。清华大学出版社出版的《JAVA与面向对象程序设计实验指导与习题集》是学习此课程的一个推荐教材,结合上海大学春季学期的教学计划,学生可以有效地掌握...

    这是《面向对象程序设计-Java语言》第五周“设计原则”中城堡游戏如何改进代码,让代码易于维护的全流程记录.zip

    这是《面向对象程序设计——Java语言》第五周“设计原则”中城堡游戏如何改进代码,让代码易于维护的全流程记录城堡游戏_java翁老师真是我Java网课里见到的最好的老师,讲课简洁明了,在《面向对象程序设计——Java...

    java课程设计敏感词汇分析

    这种分层结构体现了面向对象的设计原则。 8. **包的生成和引用**: - 在实际的项目中,为了代码的组织和管理,会使用包(package)结构。学生需要了解如何创建和引用自定义包。 通过这个课程设计,学生不仅能够...

    面向对象设计原则

    ### 面向对象设计原则详解 面向对象设计(Object-Oriented Design,简称OOD)是一种软件设计方法,它强调将复杂系统分解为简单的、相互协作的对象。在面向对象编程中,遵循一定的设计原则是非常重要的,这些原则有...

    java面向对象程序设计

    Java面向对象程序设计是计算机科学领域的一个重要主题,尤其对于初学者来说,它是理解现代软件开发基础的关键。本文将深入探讨Java语言中的面向对象概念,帮助初学者建立坚实的编程基础。 1. **面向对象编程(OOP)...

    JAVA程序设计第四章课后习题答案

    10. **包(Package)**:包是Java中组织类的一种方式,它提供了命名空间,避免类名冲突,同时也可以帮助进行访问控制。 课后习题通常会围绕以上知识点进行设计,包括但不限于创建类和对象、实现继承和多态、理解...

    《Java面向对象程序设计(第2版)》

    《Java面向对象程序设计(第2版)》是一本深入探讨Java编程语言的教材,尤其注重面向对象的设计原则和实践。面向对象编程(Object-Oriented Programming,简称OOP)是现代软件开发中的核心概念,Java语言正是这种编程...

    Java面向对象程序设计期末复习试题(附解析)

    1. **封装**:Java面向对象的基本原则之一,它通过类和对象来隐藏内部实现细节,仅对外提供公共接口供其他部分使用。这样可以防止代码被错误地修改,同时增加代码的健壮性。 2. **继承**:Java支持单一继承,即一个...

    雍俊海的Java程序设计的一些课件

    Java程序设计的核心概念包括面向对象编程(OOP)原则。OOP是一种将数据和方法封装到类中的编程范式,强调数据和行为的紧密结合。在Java中,类是程序的基本单位,它定义了对象的状态(域)和行为(方法)。类可以被...

    java面向对象程序设计PPT

    8. **包(Package)**:包是Java中用来组织类的一种方式,它可以避免命名冲突,提高代码的可维护性。Java标准库中的许多类都位于特定的包下,如java.lang、java.util等。 9. **异常处理**:Java提供了异常处理机制...

Global site tag (gtag.js) - Google Analytics