软考-软件设计
2025-04-09 21:47:06 7 举报
AI智能生成
软件设计是软件开发过程中的一个关键阶段,它决定了软件的结构、功能和行为。在这个阶段,设计师需要制定出软件的详细设计方案,包括系统架构、数据库设计、用户界面设计和代码实现等。软件设计不仅需要考虑功能性需求,还要考虑非功能性需求,如性能、安全性、可靠性和可维护性等。一个好的软件设计可以提高软件的开发效率和运行性能,同时也能降低软件的维护成本。
作者其他创作
大纲/内容
设计活动
数据设计
设计高效的数据结构,支持业务需求
保证数据安全性和可维护性
产物:E-R图(实体关系图)、数据字典、数据库Schema设计文档
架构设计
构建稳定、灵活的系统骨架
协调模块间的交互与通信
产物:系统架构图、组件交互图、技术选型文档、系统架构设计说明书
人机界面设计
过程设计
结构化
总体框架设计
模块之间的关系
概要设计(外部设计)
输出模块结构图、层次图和HIPO图
详细设计(内部设计)
程序流程图、伪代码、盒图
面向对象
原则
单一原则
一个类做一件事
开闭原则
对扩展开放,对修改关闭
里氏替换原则
子类型必须能够替换掉他们的基类型
依赖倒置原则
抽象不应该依赖于细节,细节应该依赖于抽象
接口分离原则
客户依赖与抽象,不依赖与细节
类的分类
单列
模式
创建型
工厂模式
简单工厂
不同工厂产生不同实例
抽象工厂
从原先的生产单一产品升级到生产一个产品族。
单例模式
全局唯一实例
原型模式(Prototype)
通过复制旧的原型来创建新的对象
建造者模式(Builder)
用户只关注对象的最终构造过程,而不必关心具体的构造细节
结构型
适配器模式(Adapter)
统一多种不适配接口
装饰器模式(Decorator)
动态地给一个对象添加一些额外的职责
外观模式(Facade)
为子系统中的一组接口提供一个统一的高层接口,使得这一子系统更加容易使用
桥接模式(Bridge)
将抽象部分与它的实现部分分离,使它们都可以独立地变化。
行为型
策略模式(Strategy)
定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换
迭代器模式(Iterator)
提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示
观察者模式(Observer)
当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
0 条评论
下一页