读书分享 精简版计算机经典书籍 读后分享
更新时间:2023-07-23 16:49:01 阅读量: 实用文档 文档下载
- 读书分享会ppt推荐度:
- 相关推荐
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
读书分享—高效程序员实践技术简介系统平台部张帅 QQ:94643108 2011-12-3
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
参考书籍
z
z
z(作者),
(译
者)
程序员修炼之道,(作者),(作者),(译者),电子工业出版社编程珠玑(第二版),Jon Bentley,人民邮电出版社
本PPT内容均取自以上书籍,个人观点会用宋体且加cheney标注(仅一条)。
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
主题1 2 3 4 5准备评估设计构建个人性格
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
1.1 需求分析
软件开发中最常见的项目风险是糟糕的需求分析和糟糕的项目计划。
充分详尽地描述需求,是项目成功的关键。zz
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
1.1 需求分析
z
z
z
z
z
z
z不要搜索需求,挖掘它们!与用户一同工作,以像用户一样思考!与用户交流,以使他们正确地理解你将要交付的产品。使用项目词汇表—创建并维护项目中使用的专业术语和词汇的单一信息源。确保每个人都知道需求变更的代价,并建立一套变更控制程序。管理需求增长的关键是向项目出资人指出每项新特性对项目进度及成本的影响,预防压垮项目的最后一根稻草(新增需求)。作为注重实效的程序员,你应该倾向于把需求挖掘、设计以及实现视为同一个过程—交付高质量的系统—的不同方面,不要孤立他们。我们更愿意能了解我们正在开发的整个系统。要深入地了解系统的每一个方面也许不可能,但你应该知道各组件怎么交互、数据存放在哪里、还有需求是什么。
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
1.2 软件质量
z
z
z
z
z
z
z明确设置质量目标是开发高质量软件的一个简单而清晰的步骤,但它常常被忽略。使质量成为需求问题。足够好的软件—所有系统都必须满足用户的需求才能取得成功。让用户及早使用你的产品,他们的反馈常常会把你引向更好的最终解决方案。用文档记载(并约定)软件模块的权利与责任,以确保程序正确性。不多不少,做它声明要做的事情!温和得超出用户的期望!质量只能源于全体团队队员都做出自己的贡献!而非质量官员。
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
主题1 2 3 4 5准备评估设计构建个人性格
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
2.1项目规模对构建的影响Cheney.Zh1
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
幻灯片 8
Cheney.Zh1 图中 架构 与 构建 位置 整反了。张帅, 2011-12-16
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
2.2 项目评估
z
z
z
z
z
z建立目标为评估留出时间清楚地说明软件需求去问已经做过这件事情的人,在底层细节层进行评估使用若干不同的评估方法,并且比较其结果定期重做评估,迭代修正进度表
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
2.3 项目落后了,怎么办?
z希望自己赶上×
z扩充团队×
z缩减项目范围
必须有、有了更好、可选择
重新评估实现非重要特性开发时间,比较差异
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
主题1 2 3 4 5准备评估设计构建个人性格
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
3.1 设计中的挑战
z
z
z
z
z
z
z设计是一个险恶的问题险恶的问题就是那种只有通过解决或部分解决才能被明确的问题。设计是一个了无章法的过程足够好,如何判断?设计是确定取舍和调整顺序的过程时间、空间、开发速度?设计受到诸多限制创造可能发生的事情,限制可能发生的事情设计是不确定的条条大陆通罗马,设计方案多样化设计是一个启发式过程最好的并非总是最好的设计是自然形成的
它是在不断的设计评估、非正式讨论、写试验代码以及修改试验代码中演化和完善的
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
“程序复杂度”的一个衡量标准是,为了理解应用程序,你必须在同一时间记住的智力实体数量。
如何管理复杂度?
把任何人在同一时间需要处理的本质复杂度的量减到最小不要让偶然性的复杂度无所谓地快速增长
zzz高代价、低效率的设计源于下面三种根源:用复杂的方法解决简单的问题×
用简单但错误的方法解决复杂的问题
用不恰当的复杂方法解决复杂的问题××
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
3.2.2 理想的设计特征
z最小复杂度(简洁之美)
z易于维护
z松散耦合
z可扩展性
z可重用性
z高扇入
z低扇出
z可移植性
z精简性
z标准技术
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
3.3 设计构建方法
z原型开发
试验田-为了分析和减少风险,并以大大降低的代价、为修正提供机会。用过就必须扔掉的代码!可以视为第一发曳光弹发射前进行的侦查和情报搜集工作。
z曳光弹开发
曳光弹主要用于显示弹道,修正射击偏差,穿入易燃物时也可以引起燃烧。弹丸由被甲,铅心,曳光管,和固定环组成。曳光剂由镁粉,镁铝合金粉,硝酸锶和酚醛树脂组成。引燃剂由镁粉,硝酸钡和氧化钡和酚醛树脂混合而成。铅心装在被甲头部,以保持弹丸有一定的重量。曳光管内部压装曳光剂和引燃剂。发射时,火药气体点燃引燃剂,出枪口100米左右点燃曳光剂曳出红光(或其他颜色),白天夜晚都可看到。曳光弹——弹头尾部装有曳光剂,在飞行时能发光显示弹迹的枪弹,弹头头部涂有绿色标志。主要用于试射和指示目标。曳光弹代码:你编写它,是为了保留它。它含有任何一段产品代码都拥有的完整的错误检查、结果、文档、以及自查。它只不过功能不全而已。它提供了一个框架,在接下来的时间里,你给这个框架增加新功能,完成预留了接口的例程。
用户能够及早看到能工作的东西。
开发者构建了一个他们能在其中工作的结构。
你有了一个集成平台。
你有了可以演示的东西。
你将更能够感觉到工作进展。
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
3.4 迭代设计
架构设计方案迭代了吗?
开发过程迭代了吗?
优化方案迭代了吗?
没有最好,只有更好,不要停滞于眼前的方案,继续寻找。
在软件开发中,很难找出一个不适合采用迭代法的领域。Care About Your Draft!
Think!About Your Work!
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
3.5 设计原则
z不要制造轮子!
z不存在最终决策!
z使用能适应变更的开发方法,如演进原型方法、元程序设计方法等等。
z消除无关事务之间的影响!
z让复用变得更加容易!
z无处不在地自动化!
z……
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
主题1 2 3 4 5准备评估设计构建个人性格
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
4.1 构建方法
z
z
z
z
z
z
z
z
z
z
z
z按合约设计伪代码编程断言式编程(防御式编程)不要靠巧合编程靠近问题领域编程测试先行,易于测试的代码有始有终养成不断地批判对待自己代码的习惯!早重构,常重构!发现一个就修一个死程序不说谎自说明代码对待文档要像对待代码一样用心,用户(还有后来的维护者)会为你唱赞歌的!不要让文档成为二等公民!……
代码大全,程序员修炼之道,编程珠玑 部分内容方法摘抄分享~~~支持开源,支持分享,支持免费~~~
4.2.1 不要投机
z
z
z一个疲惫的士兵警觉地从灌木丛里钻出来。前面有一片空旷地:那里有地雷吗?还是可以安全通过?没有任何迹象表明那是雷区—没有标记、没有带刺的铁丝网、也没有弹坑。士兵用他的刺刀戳了戳前方的地面,又赶紧缩了回来,以为会发生爆炸。没有。于是他紧张地向前走了一会,刺刺这里,戳戳那里。最后,他确信这个地方是安全的,于是站起身来,骄傲地大步向前走去,结果却被炸成了碎片。。。作为开发者我们也工作在雷区。。。并非以明确的事实为基础的假设是所有项目的祸害!
正在阅读:
读书分享 精简版计算机经典书籍 读后分享07-23
写作素材:与苏轼有关的4篇高端满分作文04-29
外研版初二下册Mobule4 problemU3-Grammar05-14
老人祝寿词02-16
第四单元第2课时 估测图形的面积1 滕州二实小 朱士锋11-24
山东省潍坊市2022届高三上学期期中考试作文审题立意及优秀作文04-11
自考06628网页制作与网站建设历年真题&答案 - 图文01-13
闲话大二层网络(3)—如何实现真正意义上的大二层网络?03-18
实验二 运算符和表达式12-04
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 精简版
- 分享
- 读后
- 书籍
- 计算机
- 经典
- 读书
- 碳排放量_碳信息披露质量与企业价值_张巧良
- HACCP小组内部审核检查表
- 2015-2020年中国医疗保险市场调研及发展前景预测报告
- 天河区初中英语专题辅导讲义(六)
- 八年级数学德育渗透计划-代瑞敏
- 三种性病男性患者聚合酶链反应(PCR)检测结果分析
- 怎样上好小学低年级唱游课
- xxx建筑外墙粘贴石材通用技术标准》
- 劳模、先进个人、优秀共产党员、党务工作者材料---颍上县黄坝乡郭圩村支书郭敬安同志事迹材料
- 水性涂料发展现状及趋势1
- 优秀教案29-第三章导数及其应用(复习1)
- 焦化行业准入条件(2008年修订)
- 基于PMAC的开放式数控系统软件关键技术研究
- 2016焊接与热切割作业初训模拟试卷
- 手机行业超级全面可靠性测试规范
- 美丽的规则说课稿1
- 2011年中考时政热点分析1
- 项目开发时间进度表_BA
- 2014届高考英语二轮全面深化专题训练:短文改错13
- 北师大版小学数学教材目录最新的