首页 > 其他分享 >代码整洁之道笔记3

代码整洁之道笔记3

时间:2023-11-22 17:14:15浏览次数:32  
标签:注释 对象 代码 笔记 之道 Record 格式 数据结构 整洁

四.注释
1.若编程语言足够有表达力,就不需要注释

2.注释的恰当用法是弥补我们在用代码表达意图时遭遇的失败。注释总是一种失败

3.程序员应当负责将注释保持在可维护、有关联、精确的高度,更应该把力气用在写清楚代码上,直接保证无须编写注释

4.不准确的注释要比没注释坏得多

注释不能美化糟糕的代码

用代码来阐述

五.格式
格式的目的

1.代码格式关乎沟通,而沟通是专业开发者的头等大事

垂直格式

1.通过间隔来区分逻辑模块

横向格式

1.适当对齐,间隔

团队规则

1.一组开发者应当认同一种模式风格,每个成员都应该采用那种风格

2.好的软件系统是由一系列读起来不错的代码文件组成的,需要拥有一致和顺畅的风格

六.对象和数据结构
数据、对象的反对称性

1.过程式代码难以添加新的数据结构,因为这要修改所有相关函数;面向对象代码难以添加新函数,因为要修改所有相关类

得墨忒耳律

1.得墨忒耳律(The Law of Demeter):模块不应了解它所操作对象的内部情形,意味着对象不应通过存取器曝露其内部结构,因为这样更像是曝露而非隐藏其内部结构

2.混合结构,一半是对象,一半是数据结构,应避免这种结构

数据传送对象

1.最为精练的数据结构,是一个只有公共变量、没有函数的类,这种被称为数据传送对象,或DTO(Data Transfer Objects)。在与数据库通信、或解析套接字传递的消息之类场景中存在。

2.JavaBean或Active Record

3.不要塞进业务规则方法,把Active Record当做数据结构。创建包含业务规则、隐藏内部数据(可能就是Active Record的实体)的独立对象。

标签:注释,对象,代码,笔记,之道,Record,格式,数据结构,整洁
From: https://www.cnblogs.com/liucaizhi/p/17849775.html

相关文章

  • 算法学习笔记(40): 具体数学
    具体数学本文是阅读《具体数学》产生的理解性文本,并且涵盖了部分其他相关的内容。不怎么重要或者太难的东西因为时间问题,我略过了。本文来之不易,请勿机械搬运:原文地址-https://www.cnblogs.com/jeefy/p/17848037.html目录具体数学第二章-和式和式的处理有限微积分分部求和......
  • 代码整洁之道笔记4
    七.错误信息错误处理很重要,但如果它搞乱了代码逻辑,就是错误的做法使用异常而非返回码1.遇到错误时,最好抛出一个异常。调用代码很整洁,其逻辑不会被错误处理搞乱先写Try-Catch-Finally语句1.异常的妙处之一是,它们在程序中定义了一个范围。执行try-catch-finally语句中try部分的......
  • sharding分表应用笔记(四)——踩坑记录
    sharding分表应用笔记(四)——踩坑记录(更新中)目录sharding分表应用笔记(四)——踩坑记录(更新中)1sql语句使用时不带分表关键字段2在事务中触发数据源路由1sql语句使用时不带分表关键字段如果不带分表关键字段,会默认进行全节点域遍历。如果没有预先创建所有的表节点,会报错提示找不......
  • GPG 相关简单笔记
    工作中接触到GPG相关,特此记录下一些简单的用法和需求。使用加密加密是采用公钥进行加密,通常情况下,加密需要指定USER,或者USER-ID指令通常是:gpg-uuser-oencrypted.txt-eorigin.txt签名签名只是让接受者判断,这个文件是不是让你接受的,实际上即使不是以你的用户签名的......
  • 学习笔记11
    关于知识点知识点归纳第十三章TCP/IP和网络编程13.1网络编程简介网络编程是指编写应用程序以实现计算机网络之间的通信和数据交换。网络编程涉及到一系列的技术和协议,包括套接字编程、网络协议(如TCP/IP、HTTP等)、分布式计算技术等。在网络编程中,开发者需要了解网络分层模......
  • 阅读笔记-人月神话
    削足适履这个章节在讲什么?我们很多时候在开发程序的时候都是考虑程序的运行时间和效率,而很少考虑到程序的运行空间问题。现在的存储空间是越来越廉价,我们很少去考虑这些问题。经典的DOS版本的仙剑奇侠传还不到20M,而现在的一个大游戏却是2,3G甚至更大。由于计算机的不断更新换代和......
  • vue学习笔记(借鉴其他笔记不是本人书写)
    文章目录一.Vue基础认识Vue.jsVue安装方式Vue的MVVM二.Vue基础语法生命周期模板语法创建Vue,options可以放什么语法综合v-onv-for遍历数组v-model表单绑定v-model结合radio类型使用v-model结合checkbox类型使用v-model结合select类型使用值绑......
  • linux读书笔记第6章
    在Linux的第6章中,主要学习了I/O重定向和管道的内容。以下是关于这两个主题的学习总结:1.I/O重定向:Linux中的I/O重定向是一种机制,可以将标准输入、标准输出和标准错误输出从默认的设备(通常是终端)重定向到其他地方。可以使用符号">"来将输出重定向到文件中,使用符号">>"来追加输......
  • 深度学习笔记2:数据增强
    上一节由于训练数据集样本量较小,模型过早拟合最终我们在测试数据集的分类精度只达到了70%,本章节我们通过使用数据增强降低过拟合的方法。使用数据增强之后,模型的分类精度将提高到80%~85%。数据增强是指从现有的训练样本中生成更多的训练数据,做法是利用一些能够生成可信图像的......
  • 学习记录笔记
    学习记录笔记A*算法奇乐编程学院B站视频练习网站......