您将从《Head First软件开发(中文版)》学会什么?
你可曾想过测试驱动开发的真正含义吗?你又曾想过高级顾问是如何运用实践赚取高额钟点费的吗?或许,你正准备进行自动化的构建,使代码在版本控制之中,为软件进行重构,并将一些设计模式集成到你的软件系统之中。在你完成《Head First软件开发(中文版)》阅读之时,你将能跟踪工作量完成状况,解释开发团队中开发人员的编码能力与时间效率值,并且为项目反复进行需求、设计、开发与部署等工作。
这《Head First软件开发(中文版)》为何与众不同?
我们认为你的时间宝贵,不应该浪费在努力理解新概念之中。利用认知科学与学习理论的研究成果, 《Head First软件开发》采取专为大脑工作而设计的丰富视觉化风格,而不是令人昏昏欲睡的冗赘叙述。
重视大脑的学习指南。学习Mary如何满足她的客户的真实用户故事,通过测试驱动开发去避免不可见的软件灾难,通过跟踪burn-down率保持你的项目进度,通过开发速度弄清你的团队的生产率并以此进行评估。掌握经验丰富的软件开发人员的技术和工具。
你可曾想过测试驱动开发的真正含义吗?你又曾想过高级顾问是如何运用实践赚取高额钟点费的吗?或许,你正准备进行自动化的构建,使代码在版本控制之中,为软件进行重构,并将一些设计模式集成到你的软件系统之中。在你完成本书阅读之时,你将能跟踪工作量完成状况,解释开发团队中开发人员的编码能力与时间效率值,并且为项目反复进行需求、设计、开发与部署等工作。
我们认为你的时间宝贵,不应该浪费在努力理解新概念之中。利用新的认知科学与学习理论的研究成果,《Head First软件开发》采取专为大脑工作而设计的丰富视觉化风格,而不是令人昏昏欲睡的冗赘叙述。
★《Head First软件开发》看似一本幽默滑稽的书,但实为一本精心铺设的丛书,全书充满实用的信息、有趣的图解和精辟的说明,意图是把宝贵的知识正确且清晰地植入你的大脑,它完全是让你耳目一新的书。”
——Scott Hanselman,软件开发者、发言人、作家 Computer Zen
★“《Head First软件开发》处理了课堂上极少教授的知识.但这些又是你真正需要的知识 。”
——Keith Wichmann,架构师,约翰霍普金斯大学应用物理研究室
★“不管你已经从事软件开发工作有多久,《Head First软件开发》将给你一些基本工具,它们将有助于从始至终开发出成功的项目。”
——Adam Z.Szymanski,软件项目经理美国海军研究实验室
目录(简要版)
引言
1 伟大的软件开发:让客户满意
2 收集需求:知道客户需要什么
3 项目规划:为成功而筹划
4 使用情节和任务:开始你实际的工作
5 足够好的设计:以良好的设计完成工作
6 版本控制:防御性开发
6.5 构建你的软件代码:自动化构建……
7 测试和连续集成:智者千虑必有一失
8 测试驱动开发:让代码负起责来
9 结束开发循环:涓涓细流归大海……
10 下一轮开发循环:无事就要生非
11 软件错误:专业排错
12 真实的世界:落实流程
目录(详实版)
引言
把你的心思放在软件开发上。此时,你们围坐在一起,准备开始学习,但你的大脑不停地告诉你,要学习的内容并不重要。你的大脑告诉你说,“最好在大脑中留一点空间,因为还有更重要的事情,就像油价要不要上涨,徒手攀登是不是一个错误的想法。”所以,你如何哄骗你的大脑去思考你的生活真地依赖于你学习怎样开发伟大的软件?
本书适合谁?
我们知道你们在想什么
元认知
让你的大脑顺从你
读我
技术审阅团队
致谢
1 伟大的软件开发
让客户满意
如果你的客户不爽,每个人都不会爽!
软件系统中每段伟大的代码都源自客户的宏大想法。身为职业的软件开发人员,你的工作就是把这些想法付诸实现。但是,要把客户模糊不清的想法转换为可工作的软件代码——客户满意的代码,并不是一件很容易的事情。在本章中,你将学到如何通过交付满足需求、且在预计的时间和预算内的软件,避免成为软件开发战役的阵亡将士。打开你的笔记本电脑,让我们踏上交付伟大软件的征途吧!
Tom’s Trail即将上线
大多数项目都有两个焦点
大霹雳式开发法
时间飞驰:两周以后
大霹雳开发法通常以一团糟结束
伟大的软件开发是……
通过开发循环达到目标
每个开发循环是一个微型项目
每个开发循环都会产生有品质的软件
客户会请求变更
由你来进行调整
然而,有一些大的问题
开发循环自动处理变更(好啦,一点点啦)
直到软件交付,你的开发工作才算完成
软件开发工具箱
2 收集需求
知道客户想要什么
你不能总能得到你想要的……但你的客户应该可以!
伟大的软件开发交付客户所需要的软件系统。本章的内容都将讲述与客户沟通以弄清他们对软件系统的需求。你将学会使用情节(UserStories)、头脑风暴(Brainstorming)、估计游戏(Estimationgame)如何有助于你获得客户的真实想法的。这样的话,在你完成项目之时,你就能深信你开发的软件系统就是客户所想要的,而不是一个低劣的、其他系统的仿制品。
orion’s Orbits正在进行现代化
与客户沟通,获得更多的信息
与客户共筑愿景
有时你的共筑愿景的会议可以这样……
找出人们真正在做的事情
需求一定是面向客户的
通过客户反馈,澄清需求
使用情节定义了项目要构建什么……
时间估计值定义了什么时候完成开发
小组交流
玩计划扑克牌的游戏
验证假设
大而不当的使用情节估计值
目标是收敛
需求与估计的反复循环
最后,你准备估计整个项目……
3 项目规划
为成功而筹划
每段伟大的代码始于伟大的计划。
在本章,你就要学会如何创建计划。你要学会与客户一道按优先顺序排序他们的需求。你还要确定开发循环,使你和你的团队向一个方向努力。最后,你还要创建一个有可行性的开发计划,你和你的团队有信心地执行和监控该计划。到你工作完成之时,你就确切地知道如何从需求到软件的第一次交付。
客户现在就要他们的软件!
与客户一起确定优先级顺序
我们知道什么是Milestone 1.0版(好吧,可能知道)
如果功能太多,重新进行优先顺序排序
更多人力有时意味着减损绩效
找到合理的Milestone 1.0
开发循环应该简短和易行
将你的计划与真实情况作比较
时间效率值是在作估计时需要考虑的时间开销
理想国里的程序员……
现实世界里的开发人员……
你的开发循环何时算太长?
在你着手开发循环之前,先处理时间效率值
该进行评估了
管理爱炭脾气的客户
墙上的大白板
如何毁了团队的生活
4 使用情节和任务
开始你实际的工作
开始去工作。使用情节抓住了你需要为客户开发什么,但现在是认真开始工作并分派所需要完成的工作的时候了,这样你才能使使用情节成为现实。在这一章里,你将学会如何将使用情节分解成任务,任务估计(Task Estimates)如何帮助你从头到尾跟踪项目。你将学会如何更新你的白板,使进行中的任务成为完成,最终完成整个使用情节。沿着这条道路,你将处理和优先顺序排序你的客户不可避免地增加给你的工作。
iSwoon简介
你的任务汇总了吗?
标注剩余的任务
把任务写在白板上
开始为任务工作
“正在进行中”表示任务正在进行
万一我同时做两件事呢?
你的第一次碰头会……
任务1:创建:Data类
碰头会:第五天,第一周的最后一天……
碰头会:第二周的第二天……
在此先打断一下……
你必须跟踪计划外的任务
意料之外的任务会让你的工作量完成情况呈上升趋势
时间效率值有帮助,但……
我们有很多事情要做……
……但是,我们确切地知道我们身在何处
Velocity的心声
……
5 足够好的设计
6.1 版本控制
6.2 构建代码
7 测试和连续集成
8 测试驱动开发
9 结束开发循环
10 下一劳务出口开发循环
11 软件错误
12 真实的世界
附录
答:这不是由你决定的。优先级是由客户来决定的。因此,客户为每个错误的修正确定优先级,他们会告诉你在每轮开发循环中处理哪些事情。除此之外,这样的方式还让客户明白把修正错误增加到开发循环中,其他的工作,如开发新的系统功能,必须被牺牲。开发新的系统功能还是修复错误的两难抉择,客户必须做出选择。因为决定在下一轮开发循环结束时交付什么终究是客户的权利。
问:我理解为何具有高优先级的使用情节需要列入下一轮开发循环的白板上,但是,这样是否是一个比较好的想法?即把另一个突破了最大工作量限制的高优先级的使用情节加入到下一轮的开发循环中,而不是安排一个在最大工作量限制之内的低优先级的任务。
答:在一个开发循环之中,绝不能让你的团队执行超过最大工作量限制的任务。36人天这个数值就是以20天为周期的开发循环中,你的团队所能处理的确切最大工作量:即最大工作量。你能够把更多的工作量增加到开发循环中的唯一途径就是延长开发循环。如果开发循环被延长,比如延长为22天,你就能够增加更多的工作量,但你这样做的时候,需要非常小心。正如你在第一章中看到的,开发循环的过程维持得比较短,其目的是为了能与客户一起经常性地检查软件。较长的开发循环就意味着检查次数的减少,并且更有可能偏离客户的需求。
……
这本书的封面设计就充满了惊喜,那标志性的“Head First”风格,色彩明亮,插图生动有趣,一眼望去就让人觉得阅读过程不会枯燥乏味。我尤其喜欢它那种将复杂概念拆解成易于理解的视觉元素和故事叙述的方式。它不像市面上很多技术书籍那样,上来就是密密麻麻的代码和晦涩难懂的术语,而是通过大量的图表、类比、对话和练习,一步步引导读者进入软件开发的奇妙世界。当我翻开第一页,就被那种轻松愉快的氛围所吸引,仿佛有一位经验丰富的导师坐在我旁边,用一种非常接地气的方式跟我讲解着那些曾经让我望而生畏的抽象概念。这种“润物细无声”的学习体验,让我觉得学习软件开发不再是一件苦差事,而是一场充满探索乐趣的旅程。书中的例子设计得也非常贴近实际,不是那种脱离现实的理论模型,而是能够让你在阅读时就能联想到自己曾经遇到过的开发场景,或者即将要面对的项目。这种代入感极强,让我能更快地理解和吸收知识。而且,每到关键点,作者都会设计一些小小的思考题或者动手练习,让你能够立刻检验自己的理解程度,并及时纠正可能存在的误区。这种互动式的学习方式,大大提高了学习效率,也让知识点更加牢固地印在脑海里。
评分拿到这本书的时候,我其实对它抱有一些观望的态度。毕竟,软件开发是一个非常讲究实践的领域,一本纯粹的中文书籍能否真正深入地讲解清楚并提供有效的指导,我心里还是有些打鼓的。然而,当我开始阅读后,这种疑虑很快就被一种惊喜所取代。这本书的叙述方式非常独特,它不像传统的教材那样严肃枯燥,而是充满了对话、漫画和各种互动式的练习,仿佛是在和一个经验丰富的朋友聊天,共同探讨软件开发中的各种奥秘。我特别喜欢它在讲解那些核心概念时,会用很多生动的例子来佐证,并且还会不断地抛出问题,引导我进行思考。这种主动学习的模式,比被动接受信息要有效得多。它让我不仅仅是记住了一些术语和流程,更能理解它们背后的原理和价值。书中的插图和图表设计也非常出色,它们不仅仅是为了美观,更是为了清晰地传达信息,将复杂的逻辑关系可视化,让我能够更直观地理解。我感觉,这本书不仅仅是在教我如何开发软件,更是在培养我成为一个更优秀、更聪明的开发者。它让我看到了软件开发的美妙之处,也让我对这个行业充满了信心。
评分这本书给我的感觉是,它不是一本让你“速成”的指南,而是真正让你“理解”软件开发的精髓。作者并没有回避软件开发过程中可能遇到的挑战和陷阱,反而用一种非常坦诚和友好的方式,将这些“坑”呈现在读者面前,并给出如何规避它们的建议。这让我觉得非常受用。它不像很多教程那样,只告诉你“做什么”,而是深入地讲解“为什么这么做”,以及在不同的场景下,应该如何权衡和选择。这种深入的思考和分析,让我对软件开发的理解不再停留在表面,而是能够触及到其内在的逻辑和设计理念。我尤其欣赏它在讲解一些抽象概念时,所使用的生动比喻和贴切的类比。例如,它用日常生活中很多熟悉的场景来解释软件架构、设计模式等概念,一下子就让这些原本高深莫测的术语变得通俗易懂。这种“化繁为简”的能力,正是“Head First”系列最引以为傲的地方。读这本书的过程中,我不仅仅是在学习技术知识,更是在培养一种解决问题的思维方式。它教会我如何分解复杂的问题,如何设计出优雅的解决方案,以及如何持续地改进和优化。这种能力,无论是在软件开发领域,还是在其他任何需要逻辑思维和创新能力的领域,都至关重要。
评分老实说,一开始我抱着试试看的心态去读这本书,毕竟“Head First”系列的书籍我之前也接触过,它们总是能以一种非传统的方式呈现技术知识。而这次的软件开发主题,更让我好奇它会如何处理这个庞大而复杂的领域。结果,它完全超出了我的预期。这本书给我最大的感受是,它真的把“学习”这件事本身变得很有趣,而且有效。它不是简单地罗列知识点,而是通过巧妙的提问、出人意料的比喻,甚至是一些幽默的小故事,来激发读者的好奇心和求知欲。让我印象深刻的是,它并没有直接告诉你“怎么做”,而是引导你去思考“为什么这么做”,以及“这样做有什么好处/坏处”。这种培养批判性思维和解决问题能力的方法,比死记硬背那些开发流程和设计模式要深刻得多。书中的每一个章节都像是在揭秘一个软件开发中的重要环节,而揭秘的过程总是充满了惊喜。我常常会在读完一个章节后,停下来,细细回味作者是如何将那些复杂的设计原则和工程实践,用如此直观和形象的方式呈现出来的。感觉像是解开了一个又一个的谜题,每次都成就感满满。而且,它鼓励读者去实践,去尝试,而不是仅仅停留在理论层面。这种实践导向的学习方式,让我觉得这本书不仅仅是一本教科书,更像是一本行动指南。
评分不得不说,“Head First”系列的书籍在吸引读者注意力这方面,总是能做得非常出色。而《Head First软件开发》这本书,更是将这种优势发挥到了极致。从封面设计到内页排版,再到内容的呈现方式,都充满了创新和趣味性。它打破了传统技术书籍的刻板印象,用一种非常轻松、活泼的方式,将软件开发的知识传递给读者。书中大量运用了视觉化的语言,比如各种图表、流程图、甚至是一些小漫画,这些元素不仅让阅读过程不再单调,更重要的是,它们能够极大地帮助我们理解那些抽象的概念。很多时候,一个简单的图示就能抵得上几页文字的解释。而且,这本书非常注重读者的参与感,它会设置很多互动环节,比如思考题、小练习,甚至是一些情景模拟,让我们能够主动地去思考和实践,而不是被动地接受信息。这种“边学边练”的方式,极大地提高了学习效率,也让我们能够更快地掌握知识。最让我欣赏的是,它并没有简单地教你“怎么做”,而是深入地讲解“为什么这么做”,让你能够理解软件开发背后的逻辑和设计思想,从而成为一个真正懂得开发的工程师,而不是一个只会照猫画虎的工具使用者。
评分很棒,纸质很好,很有阅读的欲望,买了这么多书,是时候开始真正的阅读了
评分书本不错,是正品,搞活动一下子买了,冬天储粮,好好研究研究。
评分这本书确实不错,通俗易懂,解释了很多以前不很明确的设计思路,推荐。
评分很好书质量不错,内容充实
评分非常棒,我一直想买这本书,这次活动终于买了,还是限量版
评分平心而论,动物系列质量好的太多。
评分终于入手 买了好多书 估计能看两三年的了 慢慢看
评分又新增了几本书,还没看,先好评。
评分内容丰富,实用性强,值得推荐!
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.teaonline.club All Rights Reserved. 图书大百科 版权所有