Week4-作业1:阅读笔记与思考
我在这三天时间里阅读了《构建之法》的第四章和第十七章,产生了一些疑问和深层次的思考。
第四章
问题1:
书中第68页提到“注释(包括所有源代码)应该只用ASCII字符,不要用中文或其他特殊字符”。
书中的这句话和我之前一直以来的习惯大相径庭,所以我去查了论坛,看看已经工作的程序员对此的看法:


可以看到很多程序员在日常开发中也使用中文注释。书中的观点是从编码的规范角度考虑,ASCII不含中文字符,可能编译后会造成中文乱码,也会影响可移植性。但现在的编译器大多支持中文,程序员也可以避免中文乱码,中文注释也更加通俗易懂。所以虽然英文注释更加规范,但也有不少程序员使用中文注释。书上这句观点是不是太绝对了,还是说存在其他原因所以不能使用中文注释?
问题2:
书中第67页提到“注释是为了解释程序做什么,为什么这样做,以及要特别注意的地方”。
我在之前一次作业四则运算中就产生了疑问:到底哪些地方应该加注释,哪些地方没有必要加注释。百度百科中关于注释的作用给出的解释是:注释是为了方便自己阅读,为了别人更好地理解自己的程序,方便复审和修改。程序中不要通篇注释,但也要适当注释。所以如何界定一段代码需不需要注释?根据难易程度?但每个人的知识程度不一样,有些人一眼能看懂觉得这里没必要加注释,有些人却看不懂觉得需要加注释。究竟应该如何判断?
第十七章
问题3:
书中第396页提到的绩效管理。作者先是提出了从工作量、资历、效率等单个角度评定的方法,然后一一指出了不足之处,否定了。然后提到了有些公司采用的二维评价体系。
结合第四章的内容,我对结对编程中的两个人如何绩效管理产生了疑问。因为结对编程是两个人共同完成,谁也不能说自己比另外一个人贡献大,这种情况下怎样绩效考核?
问题4:
书中第406页提到的软件工程师的职业道德“软件工程师的行为应与公众利益一致”。
看到这里我想到了市场上的各种火车票抢票软件,这些软件照顾了使用该软件用户的利益,但损害了其他老老实实抢票人的利益。公众的利益很难兼顾,所以这种行为是不是有违软件工程师的职业道德?
Week4-作业1:阅读笔记与思考的更多相关文章
- Week2:阅读笔记与思考
<构建之法>这本书的内容通俗易懂,每一个知识点都有许多事例佐证,阅读起来不像其他教科书那样枯燥无聊.但阅读过第一.二.十六章之后还是产生了几个疑问,以及更深层次的思考. 第一章 问题1: ...
- Week4-作业1:《构建之法》第四章、第十七章 阅读笔记与思考
第四章 两人合作 这一章是讲述了两人结对编程的一些东西,包括一些代码的规范,还有结对编程的优点.怎么做.以及一些注意事项. 1.“错误处理 当程序的主要功能实现后,一些程序员会乐观地估计只需要另外 ...
- <<UML大战需求分析>>阅读笔记(2)
<<UML大战需求分析>>阅读笔记(2)> 此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用 ...
- Hadoop阅读笔记(四)——一幅图看透MapReduce机制
时至今日,已然看到第十章,似乎越是焦躁什么时候能翻完这本圣经的时候也让自己变得更加浮躁,想想后面还有一半的行程没走,我觉得这样“有口无心”的学习方式是不奏效的,或者是收效甚微的.如果有幸能有大牛路过, ...
- Hadoop阅读笔记(一)——强大的MapReduce
前言:来园子已经有8个月了,当初入园凭着满腔热血和一脑门子冲动,给自己起了个响亮的旗号“大数据 小世界”,顿时有了种世界都是我的,世界都在我手中的赶脚.可是......时光飞逝,岁月如梭~~~随手一翻 ...
- CI框架源码阅读笔记4 引导文件CodeIgniter.php
到了这里,终于进入CI框架的核心了.既然是“引导”文件,那么就是对用户的请求.参数等做相应的导向,让用户请求和数据流按照正确的线路各就各位.例如,用户的请求url: http://you.host.c ...
- 【读书笔记与思考】《python数据分析与挖掘实战》-张良均
[读书笔记与思考]<python数据分析与挖掘实战>-张良均 最近看一些机器学习相关书籍,主要是为了拓宽视野.在阅读这本书前最吸引我的地方是实战篇,我通读全书后给我印象最深的还是实战篇.基 ...
- ULMFiT 阅读笔记
ULMFiT 阅读笔记 概述 这篇文章从文本分类模型入手,主要提出了两点:一是预训练语言模型在大中小规模的数据集中都能提升分类效果,在小规模数据集中效果尤为显著.二是提出了多种预训练的调参方法,包括D ...
- 关于 AlphaGo 论文的阅读笔记
这是Deepmind 公司在2016年1月28日Nature 杂志发表论文 <Mastering the game of Go with deep neural networks and tre ...
随机推荐
- lwip编译选项
修改默认选项时,不要修改opt.h文件,通过lwipopts.h修改. 和内存管理以及TCP发送性能相关的选项 // 为1时使用系统库malloc/free进行内存管理 #ifndef MEM_LIB ...
- Javascript之类型检测(一)
js中有7种内置类型,这7种类型又分为2大类:基本数据类型和对象(object) 一.检测原始(基本数据:字符串.数字.布尔.null.undefined.symbol)类型. 用typeof检测原始 ...
- Spark分析之Dependency
在Spark中,每一个RDD是对于数据集在某一状态下的表现形式,比如说:map.filter.group by等都算一次操作,这个状态有可能是从前一状态转换而来的: 因此换句话说一个RDD可能与之前的 ...
- 给iOS开发新手送点福利,简述UITableView的属性和用法
UITableView UITableView内置了两种样式:UITableViewStylePlain,UITableViewStyleGrouped <UITableViewDataSo ...
- linux主机555、644、666、755、777权限详解
linux主机555.644.666.755.777权限详解 发表时间:2014-06-03 05:07 来源:未知 分类:其它代码 作者:岑溪网站开发 点击:次 linux主机555.644.666 ...
- JavaScript中的坑
内容:关于JavaScript中的一些蛋疼的问题以及面试笔试中常见的一些坑爹套路总结 此部分内容持续总结完善中... 1.undefined和null的区别 null: Null类型,代表空值,代表一 ...
- face,Pool
.a 在使用Python进行系统管理时,特别是同时操作多个文件目录或者远程控制多台主机,并行操作可以节约大量的时间.如果操作的对象数目不大时,还可以直接使用Process类动态的生成多个进程 ,十几个 ...
- margin-top失效
span标签是行类元素,只能margin-left,right 解决办法: 将span标签改为块级标签
- phpmyadmin登录提示2005错误
请修改phpMyAdmin\libraries\config.default.php 把 $cfg['Servers'][$i]['host'] 改成127.0.0.1
- OpenACC 《大规模并行处理器编程实战》教材讲解
▶ <大规模并行处理器编程实战>第15章,关于OpenACC 的部分,散点 ● OpenACC 中,主机存储器和设备存储器是分开处理的,程序员只要制定要传输的存储器对象即可,编译器会自动生 ...