首页 > 其他分享 >好的代码是优质资产、莫让代码成为负债

好的代码是优质资产、莫让代码成为负债

时间:2022-09-30 17:34:09浏览次数:78  
标签:莫让 负债 大家 代码 编程 函数 我们 整洁

作为葡萄城内训课程之一,由葡萄城内部IT支持系统项目经理Leo为我们带来的《整洁代码之道》将为大家详细讲述代码整洁对于软件质量的重要意义,同时会介绍一些方法,帮助大家识别代码坏味道,让我们的代码保持干净、整洁、易于维护。
该课程从坏代码的经典范例出发,为大家总结归纳了优化代码的流程与具体方法。
我们都说好的代码是“优质资产”,而坏代码则是“账户负债”。
在写代码的过程中,我们图一时轻松,用各种长长的if语句、与非嵌套、循环嵌套省脑省力。但一出问题,后期维护和修改,就会成为难题,正所谓“欠债一时爽,维护火葬场”。
各种代码维护的段子,也成为经典笑谈。

如果我们将软件产品看做冰山,用户可以感知的部分可能只占整体的10%左右,而冰山之下作为支撑的部分,几乎占了90%,这不为人见的部分就是软件的内部质量。
对于程序员来说,写出并维护这90%部分的质量,重要性不言而喻。
而代码整洁就承担了这一重任。

许多刚入门的编程新手,往往在刚开始会认为编程就是机械性的劳动,被“码农”二字所欺,殊不知“自我重复”就是踏上编程歪路的邪恶源头;或者是为了炫技,写出一些难懂的内容,成为当代编程版“有字天书”。

为了保持良好的写作习惯,产出更加整洁、规范、易读的代码,我们需要认识到什么是整洁代码;如何将代码维护的更加干净;培养一个良好习惯,通过以上几点出发,相信会让大家在编程之路上,更进一步。
为了帮助大家对优化过程有直观感受,我们这里从一个例子出发为大家展示如何进行代码优化。
一个好代码的例子,可以顺利向右阅读、简单易懂、函数抽象清晰。

图示内容明显不符,让我们通过两步优化将它变为下图代码:

通过这个例子大家已经可以感受到代码优化的魅力,接下来的内容中我们将会带大家了解更多详细技巧,使我们的代码整洁。
首先,就必须要提到函数。从代码入门,我们就会解除到函数,什么时候需要抽取函数,如何抽取函数是你必须要掌握的内容。
说完了函数抽象,我们会发现我们的代码中还有很多复杂内容,如何简化这部分,也是需要掌握的一个环节。
我们将从圈复杂度出发,以实例带大家练习如何简化复杂代码。
紧接着上节,本节将继续从卫语句、助手函数、复杂表达式简化、变量正确使用等几个点将剩余技艺为大家一一介绍。

说完了技巧内容,我们回到主题。在代码考古过程中,我们可能会发现一些古怪又不合理的内容,但你要意识到,在这样一段异常代码的背后,往往可能有一些故事。不要想当然地修改,或许有时候回到原点或是新生反而是解决问题的方式。
在最后一节中,老师用幽默语言以“意识导向编程大法”为题,综述了一些优秀开发应有的素质,和工作中的思维方法。

总而言之,保持整洁代码并不是一蹴而就,从日常的书写习惯、到思维模式的转变都是循序渐进的过程,希望本节课程可以帮助大家对维持好代码有更加深刻的认知。

所有课程内容可以查看:https://space.bilibili.com/1770065335/channel/collectiondetail?sid=576427

想获取更多优质经典课程内容,欢迎扫描下方二维码添加小助手。

标签:莫让,负债,大家,代码,编程,函数,我们,整洁
From: https://www.cnblogs.com/powertoolsteam/p/16745634.html

相关文章

  • 如何使用Java代码修改数组大小呢?
    转自:http://www.java265.com/JavaJingYan/202111/16357342581649.html数组是Java开发中非常重要的一个数据存储容器,那可以存储多种类型,基础类型,引用类型,但是它有一个缺......
  • 如何通过执行SQL为低代码项目提速?
    见多了SQL为代码开发提速,那么当低代码遇到SQL会擦出怎样的火花呢?本文将低代码和SQL结合进行介绍,让大家了解如何通过执行SQL为低代码项目提速。背景自从计算机诞生的一刻起......
  • 如何通过执行SQL为低代码项目提速?
    见多了SQL为代码开发提速,那么当低代码遇到SQL会擦出怎样的火花呢?本文将低代码和SQL结合进行介绍,让大家了解如何通过执行SQL为低代码项目提速。背景自从计算机诞生的一刻......
  • IDEA添加多个git地址,同时提交两个git地址代码
     添加git地址            选择要提交的git地址即可......
  • 直播平台源代码,uni-app上传图片方法封装
    直播平台源代码,uni-app上传图片方法封装 functionchooseImg(count,success){console.log(count)uni.chooseImage({count:count,success:res=>{//console.log(re......
  • 合约量化机器人系统开发技术方案(成熟代码)原理
    区块链,去中心化数据库,具有去中心化、开放性、独立性、安全性和匿名性五个特征。由于互联网身份的虚拟性,人们无法建立信任关系,而区块链技术通过密码学和数学巧妙的分布式算法......
  • 国庆节,零代码帮你搞定假期美食菜单
    当国庆假期遇上美食每一口都唇齿留香特色美食太多,不知道吃什么?AppCube带你一分钟搞定假期美食来一场舌尖上的旅行零代码,让假期生活有滋有味国庆小长假,三五好友结伴......
  • 代码模板存档
    代码模板存档)2022.9.30增加并查集、埃氏筛、线性筛、快速幂、扩展欧几里得、求逆元一般C++比赛文件模板#include<bits/stdc++.h>usingi64=longlong;intm......
  • 《代码大全》(2)
    本月我简单的阅读了《程序员修炼之道--从小工到专家》,给我留下印象比较深刻的是其中讲到的“破窗户理论”,一个小小的破窗户,如果有那么一段时间不修理,就会渐渐给居住的居民......
  • 代码大全2 阅读笔记01
    第七章:高质量的子程序1、为什么要创建子程序?      提高程序的可读性,减少以及隔离程序复杂度,提高代码复用率,在代码变更时减少带来的影响(功能变更,变更导致的测试),可......