【读书笔记】构建之法(CH4~CH6)】的更多相关文章

编译的时候 ,编译器会把方法前面的IBAction替换成void,把属性前面的IBOutlet移除掉,因为这些都 只是Interface Builder的标志而已.这个IBAction方法会被UI控件的相应事件引发,并传入这个UI控件作为参数,因为我们指定传入的参数是id类型的,所以可以传入任意类型的UI控件. 参考资料:<iOS编程指南>…
代码: -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ //在后台进行网址的解析操作 NSURL * url = [NSURL URLWithString:@"http://www.baidu.com"]; NSError * error; N…
基本概念 带宽:通常说的带宽比如8M带宽,是指主机与互联网运营商的交换机之间的数据传输速度,因为数据链路层的流量是通过控制接收方实现的.而百兆网卡则是指网卡的发送速度为100Mbit/s,则是指网卡发送数据的速度 吞吐率:单位是reqs/s,指服务器的并发能力,就是单位时间内服务器处理的请求数.最大吞吐率是指单位时间内服务器能够处理的最大请求数.通常使用压力测试的方法通过模拟足够数目的并发用户数,分别连续发送一定的Http请求,并统计测试持续的总时间,计算出基于这种压力下的吞吐率,即为一个平均计…
从chapter4至chapter6,围绕着构建过程的合作讨论构建之法,而合作与个人工作的区别却以一个微妙的问题为开端:阅读别人的代码有多难? 两人合作:(驾驶员与领航员) 合作要注意代码风格规范与设计规范,如语句分行便于单步执行.使用“匈牙利命名法”等等.这里有趣的一点是,书中认为goto为函数提供单一出口,有助于程序逻辑的清晰体现,但是一些从事教学的教授认为goto语句影响代码的可读性,尽量减少使用,二者均有一定道理.之所以如此注重代码规范,非常重要的一个因素就是错误处理往往需要项目80%的…
软工读书笔记  week 9                 ——<构建之法> 最近的三周我们正式开始我们的项目.然后我也把<构建之法>中的相关章节再拿出来读了一番.以下是一些感悟. 首先就是第十章“典型用户和场景”.书中提到,我们作为设计或者开发者,往往会以自己使用产品的习惯和熟悉程度来出发设计,但我们永远不能代表用户.搞一个“典型用户”会让我们考虑问题从用户的角度出发.由于我们正式开始项目后的第一周就是继续对用户做需求分析,这一章对我们有很大帮助. 我们也要考虑我们的典型用户.…
 <构建之法>第四&十七章读书笔记 一.         前言 再次阅读<构建之法>,愈发被其中生动有趣的举例吸引.作为一本给予软件工程学生的书籍,其不以枯燥的理论知识为核心,而是基于对知识和方法的引导.本次研读的这两章内容主要涉及了代码规范,两人结对与多人合作的团队方面等相关知识,从其中逐渐明白与人相处作业等方面的技巧与艺术.以下是我对这两章节的思考与疑惑. 二.        第四章<两人合作>. 本章主要涉及代码规范,极限编程,结对编程,两人合作不同阶段,…
本周主要对<构建之法>中的一部分进行阅读. 一.软件与软件工程究竟是什么? 本书的概论部分就指出“软件 = 程序 + 软件工程”.而我们这门课的名字就叫“现代软件工程”.其实在上课之前,我对这门课存在一定的误解,我更多地把这门课归入“程序”部分.在我原来的理解中,像电设二一样,自己学新知识(当然很多在电设一已经学过),然好以团队的形式独立去完成一个项目,只不过电设属于硬件(也包含一部分软件),而软工则纯粹是软件了. 而上课之后却和我预想的不一样.首先每周读书笔记这个就让我非常不解,有些推荐书籍…
这段时间我阅读了<构建之法>的大部分章节,包括个人技能.软件测试.用户体验和需求分析等相关内容.之前的个人作业和结对作业结束后,我们的工作重心终于转向了团队项目,作为团队中前端组的组长,我和组员们每周碰面.共同商讨团队项目细节并一起实现.因此,书中与团队项目开发有关的第五章.第六章的“团队和流程”“敏捷开发”两部分内容最令我印象深刻.受益匪浅,本次读书笔记主要记录阅读这两章的心得体会. 1.团队模式和开发流程: 团队项目的开发与团队工作模式(分工模式)和整体开发流程息息相关.我们的团队在决定开…
总时长近两周的结对项目终于算是结束了,马上要重新开启团队项目.于是这几天决定对<构建之法>一书中与团队项目及需求分析有关的章节进行重点阅读,希望能够从中得到启发,并运用到接下来的团队项目中去.        团队模式 团队这一部分提到了软件团队的很多模式.我认为,就我们目前的团队项目而言,更合适的应该还是“交响乐团模式”和“功能团队模式”. 先说“交响乐团模式”(吐槽一下书上给交响乐团配的图真是错误百出,当然这不是重点,只是觉得应该还是要严谨一些),我自认对一个乐团还是非常了解,在一个乐团中,…
最开始听见杨老师说邹欣老师这个名字总觉得很熟悉,后来看见博客上老师的头像恍然大悟,原来机缘巧合已经在微博上关注邹老师许久,一直觉得邹老师是个很有意思的人,兴趣一定十分广泛,看了老师的书确实能感觉到邹老师是个很独特的作者. 这本书与以往的软件工程书籍相比确实不同.<构建之法>首先让我明白了软件工程到底是什么,也让我第一次觉得要对自己做出来的东西负责,让我的想法突然从一个学生变成了一个知道对自己东西负责的人(此处不敢说自己是工程师).作者前面的篇幅一直在强调团队合作,我虽然一直觉得合作很重要,但是…
本周选读<构建之法>第8章——需求分析.由于有团队项目初期调研阶段做调查问卷的经历,这一章节中很多知识点我都比较有体会.对我而言,这一章节最有价值的内容就是厘清了关于需求分析的两个误解和近10个行之有效的调研方法. 第一个误解有关需求的内涵.需求不仅仅来源于用户(软件直接使用者)的需要,还可以是企业为维持生存.追逐利润的商业模式,或者开发者在考虑到代码迁移.架构演化.平台变化时提出的技术上的需求.另一个误解有关需求分析的实现.做需求分析是一个循序渐进.应时而变的过程,不只是简单地将用户所表达的…
本周选读邹欣老师的<构建之法>第16章——IT行业的创新. 邹欣老师将本章话题分成五个部分来阐述:创新的迷思.创新的时机.创新的招数.魔方的创新.创新和作坊,博主认为时机和招数这两个部分在编辑上不是很和合理,时机部分的内容不够切题,招数部分却出现了讲时机的内容,以下会具体说明. 创新的迷思尝试为“外行人”拨开迷雾,打破普遍存在的错误印象.未曾涉身IT工业界之前,我们常常认为对一个优秀产品.乃至一个新的商业生态的诞生,最关键的是灵感,是一个颠覆性的好想法,但现实世界不存在这种一蹴而就的好事.邹欣…
TIJ读书笔记04-方法重载 为什么会有方法重载 方法签名 如何区分重载 关于基本类型的重载 为什么会有方法重载 OOP的编程方式就是让程序的逻辑更加接近现实世界的逻辑. 而在现实世界中,自然语言本身就是很强的冗余容错能力的. 比如,水有个方法叫洗. 那么在自然语言中,洗车,洗衣服…这都是洗这个方法. 映射到程序语言就是water.wash(car);,water.wash(clothes) 而不会说以洗车的方式洗车water.washCar(car)和以洗衣服的方式洗衣服water.washC…
最近一直在学习MVC构建富应用的WEB程序,自己一直对MVC的设计模式理解的不是十分透彻,终于在研读了github上Spine的源码之后,对构建Model层有了一点自己的理解. 本文仅为个人理解,如有问题,欢迎指正. 对象关系映射(Ojbect-relational mapper,简称 ORM)是在除 JavaScript 以外的编程语言中常见的一种数据结构.然而在 JavaScript 应用中,对象关系映射也是一种非常有用的技术,它可以用来做数据管理及用作模型.比如使用 ORM 你可以将模型和…
SQL 横转竖 .竖专横 (转载)   普通行列转换 问题:假设有张学生成绩表(tb)如下: 姓名 课程 分数 张三 语文 74 张三 数学 83 张三 物理 93 李四 语文 74 李四 数学 84 李四 物理 94 想变成(得到如下结果): 姓名 语文 数学 物理 ---- ---- ---- ---- 李四 74 84 94 张三 74 83 93 ------------------- */ create table tb(姓名 varchar(10) , 课程 varchar(10)…
<代码整洁之道>ch1~ch4读书笔记  <clean code>正如其书名所言,是一本关于整洁代码规范的“教科书”.作者在书中通过实例阐述了整洁代码带来的种种利处以及混乱代码.冗余注释等带来的毁灭性后果,并且结合多段代码块.非常详尽地将“书写整洁代码的技巧与守则”教给读者.以下,是我本周细读其前四章的心得体会. 1.      Ch1:整洁代码三问:是什么,为什么,怎么做 为什么要写整洁代码?书中首先列举了几条案例,比如某公司的热门软件由于混乱代码导致无法维护.开发团队因为混乱代…
<构建之法:现代软件工程>中第2章对效能分析进行了介绍,基于的工具是VSTS.由于我教授的学生中只有部分同学选修了C#,若采用书中例子讲解,学生可能理解起来比较困难.不过所有这些学生都学习过Python,因此我就基于书中对效能分析的介绍,结合Python效能分析工具的文档以及互联网上的博客,准备了一份关于效能分析的讲座,内容如下. 什么是效能分析? 这部分的讲解和书中类似.不过有两个问题: 为什么是效能不是效率,两者之间究竟有什么区别?这是学生提出的问题.个人觉得二者之间的差别不大. 效能分析…
<构建之法>第五章用体育运动等团队例子引出软件开发团队的形式,用更加生活化.形象化的例子让读者更能理解软件开发团队的形式.软件团队形式多样,适用于不同的人员与需求.团队可能会演变的模式有:主治医师模式.明星模式.社区模式.业余剧团模式.秘密团队.特工团队.交响乐团模式.爵士乐模式.功能团队模式.官僚模式等.开发流程模式有:瀑布模式.瀑布模型的各种变形.统一流程.老板驱动的流程.渐进交付的流程等.瀑布模式:当软件行业还在年幼的时期,它从别的成熟行业借用了不少经验和模型.在那些“硬”的行业中,产品…
今天浅读了<构建之法>的前四章,稍微有一些个人的见解与感受 第一点即是开篇提及到的算法与数据结构这门学科开设的必要,大二上学期学习了这门课程,就我个人目前接触到的层面来看,几乎可以说用不太到课上学习的一些算法相关的知识.但是这也并不意味这算法.数据结构这门课不重要,如同一句其他行业的玩笑话所说,没有人会按书上说的情况生病,那就代表着医学不需要教科书教学吗,必然是不对的.用一个拿到多家大厂offer的学长的话来说,刷题是我们和其他竞争者拉开差距的一个重要途径,尤其是对于我们这样一所学校的学生来说…
<如何在大学里脱颖而出(How to Win at College)>读书笔记 图书简介 中文版: 英文版: 作者卡尔·纽波特(Cal Newport)于 2004 年6月以优等生荣誉学会会员身份毕业于达特茅斯学院.曾在<华尔街日报>的学报和<今日商务>等杂志上发表了数篇讲述大学生活以及大学生成功事迹的文章.目前,他在美国麻省理工学院攻读计算机科学博士学位,居住在马萨诸塞州的波士顿. 不禁感慨,我上大学那阵怎么就没有这本书呢,呵呵,不过现在看到,总比没有看过好 :-)…
声明:本文档的内容主要来源于书籍<软件调试修炼之道>作者Paul Butcher,属于读书笔记.欢迎转载! -------------------------------------------------------------------------------------------- 缺陷优先 如何使缺陷修复与软件开发相结合? 如何估计缺陷修复花费的时间? 如何确保项目不会陷入<人月神话>中所描述的无数缺陷修复的焦油坑中呢? 缺陷优先 要采用早起缺陷修复原则,并且基于以下两…
声明:本文档的内容主要来源于书籍<软件调试修炼之道>作者Paul Butcher,属于读书笔记. 重现第一,提问第二 问题重现是实证过程的最强大武器,如果不能重现问题,你也无法证明修复了它 首先按照缺陷报告的描述的步骤来做, 抓住重点,包含三个控制因素 软件本身:确保你使用的软件版本和bug提交的版本一致,使用相同的编译工具和相同的编译参数. 软件运行环境:如果要与外界环境交互,则确保使用相同外部系统.比如测距仪,需要在同样的光照环境.温度和供电方式. 提供的输入:如果软件代码的运行和配置参数…
读书笔记:<梦断代码Dreaming in Code> 拿到<梦断代码>书后,一口气翻了一遍,然后又用了3天时间仔细读了一遍,也不禁掩卷长叹一声,做软件难.虽难,仍要继续走下去,可以把软件的范围限制得小一些,用敏捷方法等过程会使软件失败的风险小一些,毕竟我们还没有写书上所说的那样的大型软件. 第0章 软件时间 一开始看到第0章并没有感觉多么奇怪,可能程序员的思维方式已经固化在大脑中了,但读到作者关于第0章无意搞笑时,也不禁哑然失笑,为什么程序员要 从0开始计数?因为计算机从0开始计…
<Linux内核设计与实现>Chapter 18 读书笔记 一.准备开始 一个bug 一个藏匿bug的内核版本 知道这个bug最早出现在哪个内核版本中. 相关内核代码的知识和运气 想要成功进行调试: 让这些错误重现 抽象出问题 从代码中搜索 二.内核中的bug 1.内核bug的表象: 错误代码 同步时发生的错误,例如共享变量锁定不当 错误的管理硬件 降低所有程序的运行性能 毁坏数据 使得系统处于死锁状态 …… 引用空指针会产生一个oops:垃圾数据会导致系统崩溃. 三.通过打印来调试 内核提供…
读书笔记:<人生效率手册>:如何卓有成效地过好每一天--By张萌姐姐... 整本书看完的感受: 这本书主要讲的是生活中我们需要给自己一个目标,然后通过自己的努力去实现这个目标,书中说的很多的道理很赞同,看完一遍感觉学到了很多东西 这本书虽然讲的是怎样实现目标 ,但并非是鸡汤式的说:什么只要努力就能成功之类的. 想看的小伙伴可以去百度搜一下购买纸质的也可以 电子版的下载地址:百度网盘下载地址戳这里: ---->>>    <人生效率手册>  <<<…
HTTP权威指南笔记 读书有两种境界,第一种境界是将书读薄,另一种是读厚.本篇文章就是HTTP权威指南的读书笔记,算是读书的第一重境界,将厚书读薄.文章对HTTP的一些关键概念做了比较详细的概述,通读一遍之后,会对HTTP有个总体认识.然后你可以根据文章中的关键点,去查找更详细的细节.这就是读书的第二重境界,将书读厚. HTTP(hypertext transfer protocol,超文本传输协议)是万维网进行通信时所使用的协议方案.HTTP有很多应用,但最著名的是用于Web浏览器和Web服务…
转自:http://www.makaidong.com/%E5%8D%9A%E5%AE%A2%E5%9B%AD%E6%96%87/71405.shtml "C++Windows核心编程读书笔记":   关键词:c++windows 核心 编程 读书笔记   这篇笔记是我在读<windows核心编程>第5版时做的记录和总结(部分章节是第4版的书),没有摘抄原句,包含了很多我个人的思考和对实现的推断,因此不少条款和windows实际机制可能有出入,但应该是合理的.开头几章由于我…
<构建之法> 第十二章 用户体验 读书笔记 首先不得不说,现如今大部分的电脑使用者,都被微软的图形化界面把口味养刁了.当然,包括我自己.无论是在微机原理上级的时候使用那些带着浓郁的上世纪八十年代气息的软件,还是就这次结对编程任务而言,使用 ui 组同学那些略显稚嫩的图形化界面,都给了我一种不适应感.因此,虽然我自己是负责core代码编写的,但我却开始好奇一点,就是如果我自己去做 ui 组的任务,我能够做成什么样子呢,相比也不会好到哪里去吧.基于此,本周特意去看了<构建之法>的第十二…
https://www.lilu.org.cn/https://www.lilu.org.cn/ 第十二章:新的日期时间API 在Java 8之前,我们常用的日期时间API是java.util.Date和java.util.Calendar这两个类. 如果我们要构建一个指定年月日的日期时间对象,比如2019-9-2,使用java.util.Date类的构造方法Date(int year, int month, int date),传入的年份year参数必须是年份2019减去1900,即传入119…
热修复系列文章: 深入探索Android热修复技术原理读书笔记 -- 热修复技术介绍 深入探索Android热修复技术原理读书笔记 -- 代码热修复技术 深入探索Android热修复技术原理读书笔记 -- 资源热修复技术 1. SO库加载原理 Java Api 提供以下两个接口加载一个 so 库 System. loadLibrary (String libName):传进去的参数:so 库名称, 表示的 so 库文件,位于apk压缩文件中的 libs 目录,最后复制到 apk 安装目录下. S…