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 ...
随机推荐
- linux vnc 安装
http://blog.csdn.net/mchdba/article/details/49306383
- 解决解密时出现"要解密的数据的长度无效" 或 "填充无效无法被移除" 的错误
1.首先排除数据库中读取加密后的字段是否被强制截断. 2.AES加密后的byte[]首先应用base64( Convert.ToBase64String)编码一次,若直接用utf8的话会报上述错误,若 ...
- c# 与 java 语法异同
Java and C# ComparisonThis is a quick reference guide to highlight some key syntactical differences ...
- 使用pip安装Scrapy出错
目录 安装Scrapy出错 安装 使用pip安装(Ubuntu) 错误信息 解决方法 安装Scrapy出错 安装 使用pip安装(Ubuntu) # 安装pip sudo apt install py ...
- java web程序 html标签中<th>和<td>的用法区别:
<th>是用于表头式的 <td>是列 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional ...
- 退出循环break,在while、for、do...while、循环中使用break语句退出当前循环,直接执行后面的代码。
在while.for.do...while循环中使用break语句退出当前循环,直接执行后面的代码. 格式如下: for(初始条件;判断条件;循环后条件值更新) { if(特殊情况) {break;} ...
- ASP.NET Web Pages:全局页面
ylbtech-.Net-ASP.NET Web Pages:全局页面 1.返回顶部 1. ASP.NET Web Pages - 全局页面 本章介绍全局页面 AppStart 和 PageStart ...
- cookie讲解
cookie:(翻译过来:小甜点) 意思是不管是谁都喜欢这个小东西 以谷歌为例: cookie:就是存放数据的东西,存放量(存储量很小,大约4KB)存放在客户端下,计算机上,应用设备上 应用场景:用户 ...
- Spark分析之Master
override def preStart() { logInfo("Starting Spark master at " + masterUrl) webUi.bind() // ...
- php parse_str() 函数
php parse_str() 函数把查询字符串解析到变量中,主要用于页面之间传值(参数).本文章向码农介绍php parse_str() 函数的使用方法,感兴趣的码农可以参考一下. 定义和用法 pa ...