干净的代码 。 听起来很简单 , 对吧?那为什么我们做不到呢?让我们调试一下 。
对于这样一个简短的想法 , 您会发现一堆试图解释它是什么的文章 。 在这些文章中 , 你会发现各种各样的想法 , 他们甚至会附上一些代码 , 这样你就可以看到干净的代码是什么样的 。 然后你会开始思考“是的 , 我应该这样写”或“我怎么不这样命名我的变量” 。 也许有那么一刻你会觉得有些事情发生了变化 。
但事实秒您今天会阅读它们 , 明天您将继续编写您习惯的相同代码 。 因为仅仅阅读一篇文章不会改变你编写代码的方式(10 都不是 , 相信我) 。 你需要承认你必须应用你阅读的内容 , 否则你可能会浪费时间阅读从长远来看你会忘记的东西 。 老实说 , 如果你能接受这个单一的想法 , 你已经赢了 。
我们如何编写干净的代码?干净的代码很简单 。 足够简单 , 以至于当其他人阅读它时 , 他们感觉就像在用自己的母语阅读一本小说 。
用你的母语读一本小说感觉很流畅 。 您通常不会考虑语法或结构 , 因为您已经习惯了它们 , 而且作者很可能会牢记它们 。 我们如何让我们的代码感觉像这样?我们需要设置一些优先级 , 因为它们被称为优先级 , 所以它们不能超过 5 。
1. 长度(提示:短)写一个 100 字长的句子有意义吗?你能记住吗?会不会觉得很自然?当然不是 。 代码也是如此 。 在代码中 , 我们没有句子 , 我们有函数 。 函数不应超过 50 行代码 , 我的目标是25 行/函数 。 同样 , 不要让你的文件超过 200 行 , 并以 100 行为目标 。 阅读长文件很累 , 每个人都去过那里 。
2. 使用函数我们如何实现这么短的功能?通过使用更多的功能 。 函数是使代码更清晰的关键 。 有一个简单的规则可以改变您编写函数的方式:目标是在同一抽象级别上编写代码 , 如果太长 , 则将代码移动到函数中并改为调用它们 。 当一个函数过于笼统时 , 通常你可以从中抽象出一些东西 。 选择您应该抽象的内容是一项重要的任务 , 因此请进行适当的分析 。 函数是你的朋友 , 它们为你的代码提供结构 。
3. 函数应该只做一件事当您希望函数只做 1 件事时 , 缩短函数会容易得多 。 忘记你的函数 , 它需要 5 个参数 , 甚至可以做你的晚餐 。 SOLID 中的 S 代表单一职责 。 此类功能的一大好处是它们更易于测试 。
4.使用直观的命名我们如何命名我们的函数和变量?这很难 。 命名变量z与sum_inputs_minus_min_element一样糟糕 。 当你命名一个变量时 , 想想它的函数 。 函数内部的代码应该表达函数意图 , 而不是相反 。 为函数选择一个好的名字 , 然后如果你在其中保持一个恒定 的抽象级别 , 变量的命名就会自然而然地发生 。 好的函数命名会产生好的变量命名 。
5. 为读者着想为了让您的代码被使用并保持最新状态 , 您必须更频繁地阅读它而不是编辑它 。 因此 , 请考虑读者 , 无论是为了他还是为了您想要提供的强大功能 。 花点时间设计代码 , 会节省大量阅读时间 。 从长远来看 , 质量胜过数量 。
为了编写干净的代码......
- 记住所有会阅读你代码的人
- 函数应该简短
- 功能应该有一个单一的职责
- 给函数命名好 , 变量名自然会来
- 【大数据|如何编写干净的代码】始终如一
- 小米科技|不聊性能只谈拍照!新旗舰反向升级成潮流,拍照手机如何选?
- 苹果|库克压力确实大,在众多国产厂家对标下,iPhone13迎来“真香价”!
- text|《2021大数据产业年度创新技术突破》榜重磅发布丨金猿奖
- 知乎|电商达人迎来补税大潮,知乎带货第一人,被通知补税34万!
- 三星|试图挽回中国市场,国际大厂不断调价,从高端机皇跌到传统旗舰价
- 搜索引擎|淘宝运营系统出台春节打烊功能,淘宝运营商家该如何选择?
- 京东|适合过年送长辈的数码好物,好用不贵+大牌保障,最后一个太实用
- m都是大片!微软 Skype 支持将必应 Bing 图片设为通话虚拟背景
- 酷睿处理器|关键数据出炉,京东比阿里差远了
- 大屏|尺寸直追笔记本 曝国产厂商将推出高刷大屏旗舰平板