今早看了篇关于重构与注释的讨论,自我感觉和楼主一样,也就是重构里提到的:
结果readonly一席话让自己明白了许多:
引用
我的桌上正好摆着《重构》,我引用一下:
如何确定该提炼哪一段代码呢?一个很好的技巧是:寻找注释。它们通常是指出[代码用途和实现手法间的语义距离]的信号。如果代码前方有一行注释,就是在提醒你:可以将这段代码替换成一个函数,而且可以在注释的基础上给这个函数命名。就算只有一行代码,如果它需要以注释来说明,那也值的将它提炼到独立的函数去。——《重构》中文版77页
标红的这段翻译得有问题,原文是:
引用
How do you identify the clumps of code to extract? A good technique is to look for comments.
They often signal this kind of semantic distance. A block of code with a comment that tells you
what it is doing can be replaced by a method whose name is based on the comment. Even a
single line is worth extracting if it needs explanation.
偶觉得这样翻译比较准确:"如果注释是告诉你一段代码在做什么,可将这段代码替换成一个函数,而且可以在注释的基础上给这个函数命名"
Refactoring书上有一段关于注释的解释,可以看出作者对注释的态度,并不是"如果你要加注释,就说明这部分代码需要重构"
引用
Comments
Don't worry, we aren't saying that people shouldn't write comments. In our olfactory analogy,
comments aren't a bad smell; indeed they are a sweet smell. The reason we mention comments
here is that comments often are used as a deodorant. It's surprising how often you look at thickly
commented code and notice that the comments are there because the code is bad.
Comments lead us to bad code that has all the rotten whiffs we've discussed in the rest of this
chapter. Our first action is to remove the bad smells by refactoring. When we're finished, we often
find that the comments are superfluous.
If you need a comment to explain what a block of code does, try Extract Method. If the method
is already extracted but you still need a comment to explain what it does, use Rename Method.
If you need to state some rules about the required state of the system, use Introduce
Assertion.
A good time to use a comment is when you don't know what to do. In addition to describing what
is going on, comments can indicate areas in which you aren't sure. A comment is a good place to
say why you did something. This kind of information helps future modifiers, especially forgetful
ones.
我想首先是有看书的需求,然后看书,信服了书里所说的——以前没想过的、或是因为这是大师所说的,这是书上说的。。。总之信之而不加多思考,于是渐渐融入自己思维之中,形成了一种定势——这是大师说的,这是书上说的——于是就一直这么干了,我想这也许会为自己埋下什么,也许也无妨,但终归埋下了。
分享到:
相关推荐
在求职过程中,一份精心准备的求职信、自荐书和简历是至关重要的。这些文档能够展示你的个人能力、经历和专业技能,帮助你在众多应聘者中脱颖而出。以下将详细讲解这些文档的重要性和制作要点。 首先,求职信是向...
1. "尽信书不如无书" —— 提醒我们不能盲目接受书本上的所有内容,要有独立思考的能力,敢于质疑。 2. "纸上得来终觉浅,绝知此事要躬行" —— 知识只有通过实践才能真正理解和掌握,强调动手实践的重要性。 五、...
2.“尽信书不如无书”,“纸上得来终觉浅,绝知此事要躬行”,借助于此平台可以对书本上的一些关于分类器、特征词选择算法的结论进行验证; 3.写给我自己,体验 “the magic of mathematics” 。 (注:转载请注明...
5. **尽信书则不如无书** - **解释**: 完全相信书本知识还不如没有书本知识。孟子认为应该结合实际情况灵活运用知识,而不是盲目迷信书本。 6. **吾生也有涯,而知也无涯** - **解释**: 人的生命是有限的,而...
【生成式AI】是当前AI领域的一大热点,它代表了人工智能技术的新范式变革。生成式AI技术基于大规模的预训练模型,如基础大模型,能够生成与输入数据相关的高质量内容,涵盖语言、图像等多种形式。...
正如古人所说的"尽信书不如无书",我们需要批判性思维,对所读内容进行分析和判断。阅读的同时,要学会独立思考,辨别信息的真伪,以免被错误或有害的观点所误导。 现代生活中,书籍、网络资源丰富多样,如何"开卷...
由于文档部分文字存在识别错误,我们将尽可能通过上下文推断出其含义,并总结出较为完整的知识点。 在文件内容中,我们可以看到一系列技术术语和参数,接下来将根据这些内容详细说明知识点。 1. 微控制器单元...
3. 诚信与信任:例如“言而不到,顾所谓无信也!”强调了言语的真实性和诚信的重要性,这是人际交往的基础。 4. 诗词中的情感表达:孔尚任《桃花扇》中的“金粉未消亡,闻得六朝香,满天涯烟草断人肠怕催花信紧,...
1. **标题**:应简洁明了,如“离职申请书”或“辞职信”,在本案例中,特别提到了“酒店个人申请离职书”和“旅游公司职员离职申请书”。 2. **开头**:通常以礼貌的问候语开始,如“尊敬的公司领导,您好”。 3....
为 了 可 以 尽 快 地 得 到 某 些 语 法 的 信 息, 电子 版 包 括 了 下 列 功 能: 第 个 元 素 或 特 性 的 参 考 被 链 接 到 说 明 书 的 定 义 部 分. 每 页 均 有 到 索 引 的 链 接, 所 以 你 要 找 到 某...
这份承诺书旨在确保考生在参加考试时能够遵守相关的防疫规定,保障自身及他人的健康安全,并且明确了考生应尽的义务和可能面临的法律责任。 首先,考生必须了解并遵守《2020年护士执业资格考试考生须知》中的所有...
在表述时,要尽可能客观、诚恳,避免批评公司或同事。 3. **感激之情的表达**: 在辞职信中,应表示对公司和同事的感激,这显示了个人的专业素养和礼貌。申请人提及领导的教诲和同事的友情,这些都是积极的情感...
在大学生涯中,有时学生可能发现自己对所选专业并不如预期般感兴趣,或者发现了新的兴趣领域,这时转专业成为了一种可能性。转专业申请书是向学校表达这一愿望的重要文书,它需要清晰、诚恳地阐述理由,并展示出对新...
本协议书强调了合作方之间的协作和互信关系,确保软件开发的顺利进行。 六、知识产权 本协议书规定了知识产权的所有权和使用权,确保软件开发的知识产权受到保护。各方编写的软件源代码、技术文档及汇编而成的程序...
在准备留学申请书时,申请者应确保每个部分都真实反映了他们的经历和目标,同时,要尽可能个性化,使自己在众多申请者中脱颖而出。记住,一封真诚、有深度且展示出独特性的申请书更容易打动招生官。
6. 对公司开出的授权委托书、介绍信、盖章的合同书等授权性文件要跟踪管理,出具时应标明合同对方名称及授权范围、有效期限。 本协议书对参展协议书的内容进行了详细的规定,涵盖了展位申请、付款方式、退款说明、...
创业计划书是创业者在创立新企业或扩展现有业务时必须准备的重要文档,它详细描绘了公司的...在编写时,确保所有数据都是最新的,市场分析和财务预测尽可能精确,这样才能确保你的计划书能够有效地引导你的创业之旅。
未尽事宜,双方通过协商解决,协商不成则依据中国著作权法及相关法律法规处理。 11. **法律提示**:强调了签订合同时需仔细阅读并根据自身情况调整内容,合同具有法律效力,不应忽视。 这份协议书是保护作者和出版...
标题和描述中提到的是“最新销售人员离职申请书”,这是一份针对销售行业员工的辞职信模板,旨在帮助销售人员规范、专业地提交离职申请。"最新合同"标签暗示了这是一个更新过的、符合当前法律法规的合同模板,用于...
4. **考虑公司利益**:表示理解并关注离职可能对公司造成的影响,提前进行工作交接,确保离职过程尽可能顺利,减少对公司运营的干扰。 5. **承诺完成最后工作**:保证在离职前会尽职尽责,完成好剩余的工作任务,...