"软件工程总复习题:.md"
在软件工程领域,本次复习涵盖了多个关键概念,主要包括人机界面设计、面向对象分析与设计的步骤、结构化设计与结构化分析的关系、面向对象分析的过程以及面向对象分析所需建立的模型,还有重写和重载的区别。以下是这些知识点的详细说明:
一、人机界面设计通常采用两种基本方式:命令行模式和菜单模式。命令行模式依赖于用户输入特定的指令,而菜单模式则提供图形化的选项供用户选择,通常更易于使用。
二、面向对象分析(OOA)与设计(OOD)是软件开发中的重要步骤。分析步骤包括确定问题域、识别类和对象、定义对象间的结构和关系、定义属性和服务,以及识别额外的系统约束。设计步骤则涉及进一步完善分析结果,设计用户接口、任务管理和系统资源,以及具体对象的设计。
三、结构化设计与结构化分析之间的关系是,设计阶段将分析阶段获取的需求转化为实际系统的实施方案。结构化设计是自顶向下、逐步求精的过程,而从面向对象分析到面向对象设计,是逐步细化和扩展模型的过程。
四、面向对象分析主要基于用例模型进行。首先,从原始需求中构建用例模型,然后通过迭代和细化来改进需求。这一过程帮助我们理解系统的功能和行为。
五、面向对象分析需要建立三种模型:
1. 对象模型:描述系统的静态数据结构,即类和它们的属性。
2. 动态模型:描述系统中对象如何相互作用,包括事件序列和时间顺序。
3. 功能模型:通过用例、服务等展示系统提供的功能。
六、对象是面向对象编程的核心概念,它是一个具有特定状态(属性)和行为(方法)的实体。对象可以用四元组表示:(ID, MS, DS, MI),代表对象名称、操作集合、数据集合和消息接口。
七、重写和重载是两个不同的概念:
- 重载(Overloading):在同一类中,方法名相同但参数列表不同(如参数个数、类型或顺序),与返回值类型和访问修饰符无关。
- 重写(Overriding):发生在继承关系中,子类提供与父类相同的方法名、参数列表和返回类型,但可以有不同的实现,目的是为了覆盖父类中的原有方法。
掌握这些基础知识对于理解和实践软件工程至关重要,它们构成了软件开发过程中的理论基础和实践工具。