软件设计,建模及需求分析

文章目录

设计原则

SOLID原则

单一职责

开闭 (扩展开放,修改关闭)

里氏替换 (父类出现地方都可以用子类替换)

接口隔离

依赖倒置(高层模块不依赖低层,两层都依赖于抽象, 抽象不依赖于细节,细节依赖抽象)

建模及需求分析

原始需求需要拆解成具体的开发需求及建模才方便开发人员理解。

个人体会所有系统或者功能可围绕以下三点:

1.使用系统的用户有哪些

2.系统的基本场景,异常场景

3.不同用户在系统的基本场景和异常场景的角色

纯文字形式(规格说明书)不直观,因此UML图就是解决这个问题。

1.类UML图太细节了,不实用。

2.用例图可大方向了解系统涉及场景及用户

3.时序图则是具体一个功能的实现

这张图再具体点就是标注对应的类及方法

UML画图工具

推荐draw.io

原型图画图工具

推荐Figma,Sketch要收费

重构

个人常用(容易忘)的方法

1.卫语句替代嵌套条件表达式

2.查询函数和修改函数分开

3.单一变量

相关推荐
西山创罪梦不觉2 天前
矿相定向重构技术
需求分析
Medeaselab4 天前
生理学实验之神经放电模块的应用
人工智能·功能测试·需求分析
西山创罪梦不觉5 天前
基于时间序列特征工程和随机森林算法的入釜矿浆成分预测模型
需求分析
西山创罪梦不觉7 天前
【1.活性位点-控制】从理论到实操的完整指南
需求分析
麦哲思科技任甲林1 个月前
Vibe Coding实战(下篇):AI 需求分析师 , 让需求收集变得智能、高效且完整
需求分析·vibe coding·需求工程
黄焖鸡能干四碗1 个月前
软件系统概要设计说明书模版(Word)
大数据·运维·数据库·架构·需求分析
米核AI易山1 个月前
扣子工作流设计模式:5 种可复用的架构模板
人工智能·架构·需求分析·coze·扣子工作流·米核ai易山
测试开发技术1 个月前
AI 测试赋能全流程实战 | Agent Skill + AI 赋能「需求分析」
自动化测试·人工智能·自动化·需求分析·ai编程·ai测试
IT大白鼠1 个月前
网络安全领域企业人才需求分析(2026年度)
安全·web安全·需求分析