python如何删除代码_删除代码(上)
Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发。
现在有很多关于如何编写代码的信息,这里我们给出一些关于如何删除代码的建议。
删除代码的最佳方法
这看起来似乎是明显的,但我不这样认为,因为开发者会使用大量的其他方式来删除代码。 删除代码的方式如下:
选择编辑器中的代码块,单击Backspace键,然后就完成了。
许多开发人员不愿意删除已经写出的东西,他们想要保存大量的代码块以免再次用到。毕竟在编写这些代码块的时候他们付出了很多工作,在调试的时候,它们可以工作。他们不想轻易的将它们扔掉。
这些开发者希望能够保存他们老的代码,所以他们使用一些方式将这些代码失效:注释掉,条件执行,或者仅仅是不再调用。
对于那些开发者,我想说“使用源(控制),Luke”,一个源代码控制系统(例如Git,Mercurial,或者Subversion),意味着你永远不需要担心一些东西会永远丢失。当你再次需要的时候你的储存库会给你提供哪些老代码。
如果你没有一个 源代码控制系统(!?!?!)或者仅仅不想因为查找历史记录而被麻烦,那么可以将代码块复制到一个单独的文件区域,并保存。但是不要让代码留在他们不应该在的地方:在你的源代码里。
What's the big deal?
如果你有一块不再需要的代码,有一个需要删除它而不是将它处于失效状态的重大原因:减少噪音和不确定性。一个开发者会碰到一些最糟糕的敌人就是代码中的噪音和不确定性,因为未来这些会导致代码不能有效地运行。
失效状态的代码块会引起不确定性。它会对其他开发者带来疑惑:
§这个代码过去为什么是这个方式?
§为什么新的方式更好?
§我们需要需要换回就的方式吗?
§我们怎么决定?
如果这些问题的答案需要人们知道,那么写一个注释说明它。不要让你的合作者猜测你的用意。
注释掉代码
注释掉一行或者两行(甚至20行)代码是非常简单的:
// OldWayStepOne(fooey);// OldWayStepTwo(gooey);NewWay(fooey, gooey);
这些注释是糟糕的。注释应该用于给读者提供他们阅读或者编写代码时需要的信息。注释应该用于帮助未来将会使用这些代码的开发人员。但是上面的注释并没有起到这些效果。事实上,它们的作用刚好相反。在将代码从编译中移除的同时,这些注释增加了代码的混乱、不确定性以及可质疑性。
后续的开发人员在查看这个代码时会知道它老的运行方式,也会知道它新的运行方式,但是它们不知道为什么老的运行方式依旧被保存着:
§可能新的方式只是一种实验?如果是这种情况,那么更好的代码是什么?最终版本的代码是如何以及何时保存的?
§或许老的方式是更好的,但是有一些错误?如果是这样的话,错误在哪里?是老的方式中代码有问题,还是我们调用时产生的问题?何时会被修复?
§或许设计以及改变了,所以老的方式不足以胜任?
任何的注释掉的代码都是一个潜在的问题“为什么它仍然存在?保留一块注释掉的代码是有理由的,比如当你知道很快就会恢复或者那些并不确定的修改。保存代码通常没问题,但是你需要表明为什么保留,注释是为了给别人看的,而注释中的代码并不能告诉任何人任何事情。
不要在没有任何解释的情况下注释掉一段代码(in the comment).
下面这种方式会不会更好?:
// OldWay did a better job, but is too inefficient until MumbleFrabbitz// is overhauled, so we'll use NewWay until the M4 milestone.// OldWayStepOne(fooey);// OldWayStepTwo(gooey);NewWay(fooey, gooey);
现在,谁知道是否MumbleFrabbitz真的会迎来M4里程碑式的大修?或许这种情况不会发生。但是没关系,谁能知道未来会出现什么情况?至少通过这种方式开发者会知道代码被保存下来的原因。通过对改变的解释以及老代码存在的原因说明,开发者会知道他们可以安心的使用新方式,或者何时他们可以有到更好的解决方法。
英文原文:http://nedbatchelder.com/text/deleting-code.html
译者:meyshine
python如何删除代码_删除代码(上)相关推荐
- java删除确认_删除添加确认事件
停留的风 阅读(554) 评论(0) 编辑 收藏 所属分类: .NET技巧特辑 如何在DataGrid中点击删除时弹出确认,按"确定"时实施删除? 在datagrid的Item ...
- 管理员所有权代码_为什么代码所有权糟透了,您永远不应该在有实践的地方工作...
管理员所有权代码 Code ownership sucks. 代码所有权糟透了. It limits code and stunts your growth as a developer. 它限制了代 ...
- 网页漂浮物代码_无代码VS低代码。 有什么不同? 它。 不。 物。
网页漂浮物代码 You may hear the terms "No Code" and "Low Code" thrown around by develop ...
- python jupyter输出结果_在Jupyter上学习python(U.1)
为mooc网站的北京理工大学的 嵩天 .黄天羽 .礼欣 三位老师的课程笔记. Python学习 一.Python基本语法元素 1.程序设计基本方法 1.计算机的概念:功能性.可编程性: 计算机发展:遵 ...
- 计算机休眠文件可以删除吗,win10休眠文件有必要删除吗_删除休眠文件的方法-win7之家...
最近有win10小伙伴发现C盘内存不太够了就翻阅起了C盘文件,在无意中发现了hiberfil.sys文件所占内存特别高,一搜索发现是休眠文件.因此就想问问小编休眠文件有必要删除吗?其实删除休眠文件的影 ...
- python中返回上一步操作的代码_【代码学习】PYTHON字符串的常见操作
一.字符串运算符 下表实例变量 a 值为字符串 "Hello",b 变量值为 "Python": 操作符描述实例 + 字符串连接 >>>a+ ...
- python温湿度传感器源代码_在树莓派上读取DHT11温湿度传感器-python代码实现及常见问题(全面简单易懂)...
最近由于自己的课题需要,想要用在树莓派上使用DHT11温湿度传感器来读取空气中温湿度,遇到了几个问题,解决之后也对之前的知识进行了回顾,总结,特整理如下,希望能给也在学习树莓派的小伙伴们带来一些帮助. ...
- python温湿度传感器源代码_在树莓派上读取DHT11温湿度传感器python代码实现及常见问题(全面简单易懂)...
最近由于自己的课题需要,想要用在树莓派上使用DHT11温湿度传感器来读取空气中温湿度,遇到了几个问题,解决之后也对之前的知识进行了回顾,总结,特整理如下,希望能给也在学习树莓派的小伙伴们带来一些帮助. ...
- python时钟罗盘酷炫代码_抖音上的时钟屏保,被我改造完用来表白
作者:爱编程的小和尚 原文链接:https://blog.csdn.net/Newbie___/article/details/105378852 抖音上很火的时钟屏保,被我改造完后用来准备准备准备表 ...
- python图片转手绘_在Mac上用python运行图片转手绘图的代码报错,请各位大佬帮忙。...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 原文代码: # -*- coding: utf-8 -*- from PIL import Image import numpy as np im = I ...
最新文章
- Docker增强Container的安全性
- oracle 数组类型
- idea 调用c#接口_Dubbo 接口测试方法
- [转载] Java默认构造方法
- 银河麒麟-麒麟软件操作系统 kylin 搭建yum源 ubuntu搭建yum源 yum软件仓库搭建ftp源、python源、硬盘源
- 计算机二级Python公共基础部分
- 手术导航系统原理简介、主要工作及应用
- ideal如何快速导入import_IntelliJ IDEA 自动导入包 快捷方式
- 桌面图标设置计算机无法勾选,电脑桌面勾选了显示桌面图标仍然不显示的解决办法...
- 中国象棋---棋盘/棋子
- 教师资格证面试缴费找不到服务器,2016年教师资格证考试报名网上缴费常见问题...
- 修复 iPhone X H5 底部安全区域定位按钮下内容穿透 BUG
- html5 视差地图,用HTML5构建高性能视差网站的图文代码详解
- 名爵5显示服务器异常,名爵5危险警告灯异常闪烁
- PS一键制作针织毛衣纹理图案效果
- 作业——机器学习教你预测商品销售额
- Windows、Linux下安装Maven图文教程
- Android获取IMEI码及利用方法
- 开源中国20份毕业设计论文致谢,谢辞,大学生的毕业论文致谢词,致谢词的范文...
- 三星手机 SM-G9730 ROM包