> 一个类应该代表一个逻辑部件,封装数据和行为: 不要只封装行为,也不要只封装数据。
> 类是面向用户的,为用户提供服务: 设计类时,首先考虑一个类对用户有没有用,其次考虑一个类要提供哪些接口来满足用户的要求。
> 类应该向用户提供少而准的接口: 少即最少,目的是使类尽可能简练。准即准确,目的是使类能准确完成任务。公共接口少但是要完整,不能缺少行为,否则就不能准确完成任务,如果没有适当限制公共接口,那么用户就可以访问非必需的甚至危险的行为,破坏系统的完整性和安全性。
> 从类的设计开始到测试阶段,用户都要参与其中: 这样类的实用性和正确的接口都会得到保证。
> 设计健壮的构造方法: 构造方法应该把对象置于安全的状态,这包括属性初始化和内存管理等问题。提供构造方法来处理默认情形通常是一个号注意。
> 用文档说明类以及使用注释: 没有好的编写说明文档的习惯就写不出好的设计。
> 带着协作的意向创建类: 几乎没有类是孤立的,大多数情况下,如果一个类不同其他类进行交互,就没有理由创建这个类。一个类将为其它类提供服务或接受其它类的服务。
> 预见所有可能的错误并加以处理: 仅仅忽视潜在的问题不是好主意。遇到错误时,应用程序不会崩溃,而是采取下列方法:
1. 修复自己并继续运行;
2. 在不丢失用户的重要数据的情况下适当地退出。
> 类的重用: 使类能够在不同的系统中使用。