首页 > 其他分享 >从代码整洁之道 看什么是好的代码

从代码整洁之道 看什么是好的代码

时间:2023-07-02 17:14:38浏览次数:40  
标签:文件 函数 200 代码 之道 函数参数 一件 整洁

整洁的代码只做好一件事:
每个函数、每个类和每个模块都全身神贯注于一件事。

这里结合自己之前代码设计和处理的时候想一下子把整体都思考完全,无论是思维还是代码设计都不是好的方法。

方法

减少重复代码

提供表达力

提早构建简单抽象

有意义的命名

函数

函数应该做一件事,做好这件事,只做一件事

每个函数一个抽象层级

函数参数:尽量1个、2个函数参数,不要超过3个,超过3个是不是可以进行封装了
这里当时看到的时候特别有感受,因为函数参数一多,分支可能就会变多,你的表达力和处理的问题就会更加复杂,就会违反只做一件事的原则

如何写出这样的函数:
配上一套单元测试,覆盖每行代码。然后打磨这些代码,分解函数、修改名称、消除重复。

格式

Junit、FitNesse和 Time and Money 由相对较小的文件组成。没有一个超过500行,多数都小于200行。Tomact 和 Ant则有些文件达到数千行,将近一半文件长于200行。
意味着有可能用大多数为200行、最长500行的单个文件构造出色的系统。
短文件通常比长文件易于理解

标签:文件,函数,200,代码,之道,函数参数,一件,整洁
From: https://www.cnblogs.com/zhangpengfei5945/p/17520983.html

相关文章

  • OpenGL环境配置 和 测试代码(GLEW/GLFW VS2019)
    1.配置 2.测试代码:2.1 在黑板色的窗口上画一个三角形1#include<iostream>23//GLEW4#defineGLEW_STATIC5#include<GL/glew.h>67//GLFW8#include<GLFW/glfw3.h>91011//Functionprototypes12voidkey_callback(GLFWw......
  • [代码]如何在ASP.NET网页间传递数据
    重点总结目前为止在ASP.NET网页中传递数据的方式至少有5种:1、通过查询字符串传递数据。2、通过HTTPPOST传递数据。3、通过会话状态传递数据。4、通过源页的公共属性传递数据。5、通过源页中的控件值传递数据。到底使用哪种方式来进行数据的传递,这可能受到两方面的影响:1、页面重定......
  • N层研习中的测试代码01
    这是前文《N层研习记录01:试图通过Boolean参数控制并发冲突的检查方式(LINQtoSQL)》用到的测试代码。只是包含了其中最重要的部分,如果要想获取完整的代码,可以通过以下地址进行下载:下载地址2:http://u.115.com/file/f26716bcc2以上地址如果均不能下载,请留言通知我!测试代码的服务端使......
  • [代码]如何在ASP.NET网页间传递数据
    重点总结目前为止在ASP.NET网页中传递数据的方式至少有5种:1、通过查询字符串传递数据。2、通过HTTPPOST传递数据。3、通过会话状态传递数据。4、通过源页的公共属性传递数据。5、通过源页中的控件值传递数据。到底使用哪种方式来进行数据的传递,这可能受到两方面的影响:1、页面重定......
  • 【WALT】WALT入口 update_task_ravg() 代码详解
    目录【WALT】WALT入口update_task_ravg()代码详解代码展示代码逻辑⑴ 判断是否进入WALT算法⑵ 获取WALT算法中上一个窗口的开始时间⑶如果任务刚初始化结束⑷ 更新任务及CPU的cycles⑸ 更新任务及CPU的demand及pred_demand⑹ 更新CPU的busytime⑺ 更新任务的p......
  • 【WALT】update_window_start() 代码详解
    目录【WALT】update_window_start()代码详解代码展示代码逻辑【WALT】update_window_start()代码详解代码版本:Linux4.9android-msm-crosshatch-4.9-android12代码展示staticu64update_window_start(structrq*rq,u64wallclock,intevent){ s64delta; intnr_window......
  • 零代码编程:用ChatGPT自动输入账号密码来登陆网站
    现在很多网站都需要登陆账号和密码才能访问。如果要进行一些批量自动化操作,首先要做的就是模拟自动登陆。以萝卜投研网站为例:https://robo.datayes.com/v2/fastreport/industry打开网站后,默认出现这样一个登陆界面,要点击右上角,才会出现账号密码登陆按钮:<divclass="login-switch-bt......
  • 代码随想录|各种买卖股票问题
    121. 买卖股票的最佳时机 122.买卖股票的最佳时机II 123.买卖股票的最佳时机III  188.买卖股票的最佳时机IV 309.最佳买卖股票时机含冷冻期 714.买卖股票的最佳时机含手续费  总结121.买卖股票的最佳时机全程只能买卖一次贪心算法这个算法的写法也非......
  • 免费搭建一个有脾气的聊天机器人,1行Python代码就够了!
    大家好,这里是程序员晚枫。之前在小破站:Python自动化办公社区给大家免费分享了用Python制作一个wx机器人,1行代码人人可用,很多人还想要免费的智能聊天功能。今天终于开发出来了,让我们一起看一下,如何用1行代码,实现智能聊天。我测试了很多次,回复一直很稳定,赶紧去试一下,这个机器人的......
  • 分支代码元编程示例
    分支代码的元编程最简单的编译期执行的分支语句直接使用constexpr:#include<iostream>#include<type_traits>constexprintfun(intx){if(x>3)returnx*2;elsereturnx-100;}constexprintx=fun(100);但是,这种方法的应用非常有限,生成......