软件开发中的详细设计
传统软件开发中的详细设计:
- 模块内的数据结构进行设计。比如模块中类、结构体的设计
- 对数据结构进行物体设计。比如数据库表的设计,文件存储的设计,文件存储目录的设计
- 每个模块进行详细算法设计。比如每个方法的实现算法,对方法的实现画出流程图
- 编写详细设计说明书。详细说明每个方法的输入和输出。
- 详细设计评审报告。
- 以用户需求进化为核心
- 采用迭代、循序渐进的方法进行软件开发。
- 让代码保持简洁。比如在详细设计时使用规范的命名来提高程序的可读性
- 让设计拥抱变化。从需求的本质出发来设计类和方法,来提高它的灵活性
- 在产品迭代中“越跑越块”。
- 为构建高并发、高可用和高扩展的应用打下良好的基础
- 在产品迭代中“越跑越块”。
- 有效降低程序“推到重来”的概率
- 减少产品运行中的错误。
- 更加清晰、严谨的逻辑思维能力。
- 良好的面向对象设计能力。
- 良好的面向对象思维
- 懂得如何在设计思路、开发周期、业务需求之间取舍
- 熟悉产品技术架构模型
- 深入了解产品行业,熟悉业务的细节,并能洞察业务未来
- 从为每个方法、每个类起个好名字做起
- 培养实现代码前,做详细设计的习惯
- 让总结成为一种习惯
- 代码整洁之道
- 重构-改善既有代码的设计
- 敏捷软件开发:原则、模式和实践
- 设计模式(大话设计模式、设计模式之禅)
- 高效程序员的45个习惯(团队管理、持续学习)
- 详细设计永远把解决当前问题,放在第一位。
- 详细设计中,欢迎“拿来主义”。优先考虑使用市面上的成熟产品。优点:节省大量的开发成本、时间成本、人力成本。缺点:个性化需求、依赖第三方,如果第三方软件不能使用,那么可能整个程序就无法使用。
- 团队成员都需要懂UML图
- UML转换为代码,需要一定的时间
- 在需求变化中,UML很难保持即时性
- 设计实体类
- 设计前后端调用方式以及数据格式
- 设计业务接口。就是定义输入和输出,以及业务接口的实现方式
- 设计数据库访问层接口
- 设计数据库表结构,字段、字段类型、索引等。
软件开发中的详细设计相关推荐
- 软件开发中 常见英文文档 缩写(转)
软件开发中常见英文缩写和各类软件开发文档的英文缩写: 英文简写 文档名称 MRD market requirement document (市场需求文档) PRD product requiremen ...
- 软件开发中的瀑布模型
软件开发的流程 软件开发的流程有很多种模型,这里讲的一种软件开发的流程是瀑布模型 瀑布模型是将软件生存周期的各项活动规定为固定顺序的若干阶段工作,最终得到软件产品. 他的核心思想是按工序将问题 ...
- 软件开发中会使用到的图
文章目录 软件开发中会用到的图 一.背景 二.图为了解决什么问题 三.不同流程中适合运用的图 四.实际的运用 五.结语 软件工程中的各种图 软件工程用的15种图 数据关系流图怎么画?这款软件教你轻松绘 ...
- 概要设计 英文_互联网知识大全:软件开发中和文档常见的英文缩写,还不快收藏...
概要设计 英文_互联网知识大全:软件开发中和文档常见的英文缩写,还不快收藏... https://blog.csdn.net/weixin_39914243/article/details/11123 ...
- 软件开发中 常见英文文档 缩写
软件开发中常见英文缩写和各类软件开发文档的英文缩写: 英文简写 文档名称 MRD market requirement document (市场需求文档) PRD product requiremen ...
- 软件开发中常见英文缩写和各类软件开发文档的英文缩写
软件开发中常见英文缩写和各类软件开发文档的英文缩写: 文章复制粘贴来源于:http://blog.sina.com.cn/s/blog_7326867a0100yfdl.html 英文简写 文档名称 ...
- 彼之蜜糖,吾之砒霜——聊聊软件开发中的最佳实践
作者:sherrywasp https://www.cnblogs.com/sherrywasp/p/9436623.html "描述一个事物,唯有一个名词定义它的概念,唯有一个动词揭露它的 ...
- 视频互动直播软件开发中的连麦问题分析
直播行业发展至今,我们经常会听到很多朋友谈论"互动直播".那么何谓互动直播呢?其实互动直播的核心在于通过连麦技术,让视频直播有一个超过文字的更深层次的互动交流. 在视频互动直播软件 ...
- 统治软件开发中的著名定律
文| https://www.timsommer.be/famous-laws-of-software-development/ 翻译| 码农翻身 和其他领域一样,在软件开发的世界中也有一些有趣而著名 ...
最新文章
- 阿里1688直播推荐算法实践
- Cocos Creator学习目录
- 概率论与数理统计中的算子半群 第一讲 Banach-Steinhaus定理2 Banach-Steinhaus定理的应用
- spark 持久化 mysql_Spark 从零到开发(八)nginx日志清洗并持久化实战
- MATLAB中:左右除法、逆inv、广义逆pinv的区别
- zabbix mysql.status_Zabbix 监控 Mysql 状态
- 常用计算机网络性能指标的是什么,什么是Bit?【计算机网络的性能指标】
- oracle在group by时某列有多个值的拼接
- CSS选择器必备的3个知识点
- 汇编语言---GCC内联汇编
- 这个城市推出黄金“外卖”!价值低于5.8万元的,只能摩托车配送...
- nginx https 根据应用不同的标识转发到不同的服务器端口
- 机器学习相关资料和书籍推荐
- 韩媒:开城韩商访朝申请或最晚25日出结果
- 名词用作动词举例_[名词的活用] 名词的活用例子
- Foxmail中配置Gmail实现gmail客户端收(转)
- 交通灯keil程序加2位数码管_51单片机红绿灯两个数码管显示实验报告
- 门限签名(1)——秘密共享
- Andorid微信刷脸支付使用过程解析
- MFC中CFile读取中文乱码