●●● 程序界面设计原则(1) ●●● ●●●●● ●●● ●●● 单一功能原则 ●●●● ●●0● ●什么是单一功能原则? 个函数完成的功能要单 个类处理的事务范围要单 ●从提供的服务上分析 ●从代码的修改角度分析 ●参考: 《 Head first面向对象分析与设计》 《 Head first设计模式》
程序界面设计原则(1) ——单一功能原则 ⚫ 什么是单一功能原则? ⚫ 一个函数完成的功能要单一 ⚫ 一个类处理的事务范围要单一 ⚫ 从提供的服务上分析 ⚫ 从代码的修改角度分析 ⚫ 参考: ⚫ 《Head first 面向对象分析与设计》 ⚫ 《Head first 设计模式》
程序界面设计原则(2 ●●● ●●●●● ●●●● ●●● 开放/闭原则 ●●●● ●●0● ●什么是开放闭原则? 个类应该对扩展开放,对修改关闭。 ●对新的功能的扩充,应该通过增加新类实现, 而不是修改已有类的代码 ●目的 ●降低程序各部分之间的耦合性,利于程序模块替换。 ●使软件各部分便于单元测试。 ●软件升级时可以只部署发生变化的部分,而不会影响其它 部分
程序界面设计原则(2) ——开放/封闭原则 ⚫ 什么是开放/封闭原则? ⚫ 一个类应该对扩展开放,对修改关闭。 ⚫ 对新的功能的扩充,应该通过增加新类实现, 而不是修改已有类的代码 ⚫ 目的 ⚫ 降低程序各部分之间的耦合性,利于程序模块替换。 ⚫ 使软件各部分便于单元测试。 ⚫ 软件升级时可以只部署发生变化的部分,而不会影响其它 部分
程序界面设计原则(3 ●●● ●●● ●●●●● ●●● 致性和规范性原则 ●●● ●●●● ●●0● 什么是一致性和规范性原则? ●实际是设计风格问题 ●如STL容器提供了一致的界面,即使面对一个 不熟悉的函数,预计应该如何使用它也会变得 很容易
程序界面设计原则(3) ——一致性和规范性原则 ⚫ 什么是一致性和规范性原则? ⚫ 实际是设计风格问题 ⚫ 如STL容器提供了一致的界面,即使面对一个 不熟悉的函数,预计应该如何使用它也会变得 很容易
程序界面设计原则(4) ●●● ●●●●● ●●● 完整、安全、高效、简短 ●●● ●●●● ●●0● 完整:提供所需的基本的合理功能 ●安全:使用安全的算法,其次是效率 memcpy, memmove ●高效且简短: 函数个数尽量少,功能不要重叠,达到 “多快好省
程序界面设计原则(4) ——完整、安全、高效、简短 ⚫ 完整:提供所需的基本的合理功能 ⚫ 安全:使用安全的算法,其次是效率 ⚫ memcpy,memmove ⚫ 高效且简短: 函数个数尽量少,功能不要重叠,达到 “多快好省
用户界面设计 ●●●●● ●●●● ●●● ●●●● ●●0● ●文本用户界面 提示信息的完整性 ●图形用户界面GU) °术语、单位、格式、字体、颜色统一和规范 ●显示内容的可拷贝性
用户界面设计 ⚫ 文本用户界面 ⚫ 提示信息的完整性 ⚫ 图形用户界面(GUI) ⚫ 术语、单位、格式、字体、颜色统一和规范 ⚫ 显示内容的可拷贝性