`

Thinking in Java对象设计的一些tips

 
阅读更多

2009-06-20

 

Guidelines for object development 
These stages suggest some guidelines when thinking about developing your classes: 
   1. Let a specific problem generate a class, then let the class grow and mature during the solution of other problems.
   2. Remember, discovering the classes you need (and their inter-faces) is the majority of the system design. If you already had those classes, this would be an easy project.
     3. Don’t force yourself to know everything at the beginning. Learn as you go. This will happen anyway.  
     4. Start programming. Get something working so you can prove   or disprove your design. Don’t fear that you’ll   end   up   with   procedural-style spaghetti code—classes partition   the   problem   and help control anarchy and entropy. Bad classes   do   not   break good classes.  
   5. Always keep it simple.   Little   clean objects with   obvious utility are better than big complicated interfaces. When decision points come up, use an Ockham’s   Razor   approach:   Consider   the choices and select the one that is simplest, because simple class-es are   almost   always best. Start   small and simple, and you can expand the class interface when you understand it   better. It’s   easy to add methods, but   as time   goes   on,   it’s   difficult to remove methods from a class. 
开发类时:
       1. 为特定问题生成一个类,然后在解决其他问题的过程中,让这个类成长并成熟。
       2. 记住,发现你所需要的类(和接口)是系统设计的主要工作。如果这些类已经有了,那么这将是个简单的项目。
       3. 不要强迫自己在开始阶段就明白所有事情。在学习的过程中,随时可以了解某些事情。
       4. 开始编程。做出可以运行的某些东西,才可以证明或者反驳你的设计。不要担心你的代码会变成意大利面条式的过程行代码——类可以讲问题分解,并有助于对无序和混乱的状态进行控制。不好的类不会破坏好的类。
       5. 保持简单。功能明确、短小而清楚的对象,好过庞大而复杂的接口。需要做决定的时候,可以使用Ockham的剃刀法则:考虑最简单的选择,因为简单的类总是最好的。由短小而简单的开始,在更好的理解问题之后,可以扩展类或接口。向类中添加方法总是容易的,但随着时间的推移,从类中删除方法可就困难了。
                                                                             -----------摘自《Thinking in Java》第三版16章

 

 

分享到:
评论

相关推荐

    Thinking in java .txt

    《Thinking in Java》强调面向对象编程的核心理念,即一切皆对象。书中通过实例讲解如何定义类、创建对象,并介绍对象的属性和行为。 #### 2. 继承与多态 继承是面向对象编程的一个重要特性,它允许创建一个新类来...

    Thinking in Java 4th Edition Annotated Solutions Guide

    《Thinking in Java》是由Bruce Eckel编写的Java编程书籍,旨在帮助读者深入理解Java语言的面向对象特性,以及如何有效地使用Java进行编程。该书籍在Java学习者中享有很高的声誉,被认为是学习Java的经典之作。第四...

    Thinking in Java 4 源码 导入IDEA可直接运行

    《Thinking in Java》是Bruce Eckel的经典之作,第四版(TIJ4)更是Java程序员必读的书籍之一。这本书深入浅出地介绍了Java语言的核心概念和技术,包括面向对象编程、集合框架、多线程、网络编程等众多主题。源码是...

    Thinking in Java 练习题答案

    以下是对"Thinking in Java 4Edition 练习题答案"的一些关键知识点的详细解释: 1. **基础语法**:在书中,读者会遇到关于类、对象、封装、继承、多态等基础知识的练习题。解答这部分问题时,你需要理解Java如何...

    《thinking in java》第三版完整PDF书籍+习题答案(中文版)

    《Thinking in Java》是Bruce Eckel的经典之作,被誉为学习Java编程的权威指南。该书以其深入浅出的方式,详尽地介绍了Java语言的核心概念和技术。第三版是此书的一个重要里程碑,它涵盖了Java语言的诸多关键特性,...

    Thinkingin Java电子书

    10. **设计模式**:《Thinking in Java》还涵盖了多种设计模式,如工厂模式、单例模式、装饰器模式等,这些都是软件工程实践中常用的设计思路。 总之,《Thinking in Java》这本书以其详尽的实例和深入的理论解析,...

    Thinking in Java 4th Edition + Annotated Solution Guide (代码)英文文字版 带书签 有答案

    《Thinking in Java》是Bruce Eckel的经典之作,第四版涵盖了Java编程语言的广泛主题,适合初学者和有经验的程序员。这本书深入浅出地讲解了Java的核心概念和技术,旨在帮助读者建立坚实的编程基础,并理解面向对象...

    Thinking in java 电子书

    2. **面向对象编程**:《Thinking in Java》深入讲解了面向对象编程(OOP)的核心思想,包括类与对象、封装、继承、多态性等。作者通过丰富的实例帮助读者理解和应用这些概念,强调了OOP在解决复杂问题中的优势。 3...

    thinking in java 第四版 源码

    源码是程序员与计算机交流的语言,通过阅读和分析《Thinking in Java》的源码,我们可以更直观地理解书中的编程思想和设计模式。第四版的源码反映了Java SE 5.0及之后的版本特性,如枚举类型、泛型、注解等,这些都...

    Thinking in Java Second Edition.doc

    《Thinking in Java》第二版是Bruce Eckel所著的一本权威性的Java编程教程,由MindView, Inc.出版。这本书受到了读者的高度评价,被认为是比其他Java书籍更出色的学习资源,其深度、完整性和精确性都是同类书籍中的...

    Thinking in Java 习题答案

    《Thinking in Java》是Bruce Eckel的经典编程教材,它深入浅出地介绍了Java语言的核心概念和技术。这本书以其详尽的解释、丰富的示例和实践性强的习题深受程序员喜爱。"Thinking in Java 习题答案"是配套的解答集,...

    Thinking In Java 源码

    《Thinking in Java》是Bruce Eckel的经典Java编程书籍,它深入浅出地讲解了Java语言的核心概念和技术。这本书不仅适合初学者,也对有经验的程序员提供了深入理解Java的宝贵资源。现在,我们有机会免费下载这本书的...

    thinking in java 源码

    以下是基于《Thinking in Java》这本书的一些核心知识点和在实际编程中可能遇到的相关内容: 1. **面向对象编程基础**:Java是一种完全面向对象的语言,源码中会涵盖类、对象、封装、继承和多态等基本概念。理解...

    thinking in java annotated solution guide 电子书格式

    《Thinking in Java》的知识点覆盖广泛,包括基础语法、面向对象编程、集合框架、多线程、网络编程、异常处理、输入/输出等核心概念。解答指南通常会解析书中的实例和练习,帮助读者巩固这些知识,提高编程实践能力...

    Thinking in Java 自学笔记——第一章 对象导论

    Thinking in Java 自学笔记——第一章 对象导论 本章节总结了面向对象程序设计(Object-oriented Programming, OOP)的基本概念和原则,以帮助读者更好地理解 Java 编程语言。以下是对标题、描述、标签和部分内容的...

    Thinking in Java 自学笔记——第二章 一切皆对象

    ### Thinking in Java 自学笔记——第二章 一切皆对象 #### 重要概念解析 ##### 2.1 用引用操纵对象 在Java中,一切都被视为对象,这意味着无论是字符串、数字还是其他数据类型都可以被视为对象来进行操作。当...

    Thinking in Java

    习题涵盖了各种难度,从基础的语法练习到复杂的面向对象设计问题,都能帮助读者不断提升。解答部分提供了详尽的解析,有助于读者理解和应用所学知识。 本书的中文版使得非英语背景的读者也能无障碍地学习,这对于...

    Thinking in Java (中文版)-经典书籍

    Bruce Eckel是MindView公司的总裁,他在面向对象技术和设计模式方面提供公开的和内部的培训研讨会、咨询、指导和设计评论。他发表过150多篇文章,有20多年世界各地的研讨会和演讲经验,他是C++标准委员会拥有表决权...

Global site tag (gtag.js) - Google Analytics