命名 —— 函数、类的命名
命名对应着分类;命名是功能的体现;
- load、fetch、make
- load:本地(磁盘)加载
- fetch:网络爬取
- make:一些合成数据;
1. 函数名刻画全部的事情
- 子程序的命名应描述所有的输出结果以及副作用(side effects)。
2. 避免不当的动词
- 无意义或者模糊:
- handleCalculation、performServeices、processInput,dealwithOutput,中文上,这些动词就叫做,万能动词;
- 当然动词 handle 有时也非用不可,比如 eventHandling,用作事件处理这一特殊上下文时;
- 将 handleOutput 改造为 formatAndPrintOutput
3. 动词后加不加宾语
- 在面向对象语言中,不必在函数名中加入对象的名字,其对象本身已经包含在调用语句中了。
- 举例:document.Print()、orderInfo.Check()、monthlyRevenues.Calc()
- 而且,不加宾语,有时也能在继承关系中起到某种抽象的作用;
- document.PrintDocument(),显然当有子类如 Check(支票)从 Document 类继承而来,check.PrintDocument() 就显得不伦不类了;
4. 介词
from
- Scala:
Source.io.fromFile
- Scala:
with/without
of
pathOf:从什么什么中取得路径(参数充当介词宾语)
public String pathOf(Arfifact artifact) {StringBuilder path = new StringBuilder();path.append(artifact.getArtifactId()).append(PATH_SEPARATOR); // PATH_SEPARATOR = '/'path.append(artifact.getBaseVersion()).append(PATH_SEPARATOR);path.append(artifact.getArtifactId()).append(ARTIFACT_SEPARATOR).append(artifact.getVersion());// ARTIFACT_SEPARATOR = '-' }
6. 类的命名
类的分类
- 工具类:**Utils
- 常量类:**Constants
- 上下文:**Context/**Ctx
- 微服务:
- 服务:**Services
- 控制器:**Controller
- 应用:**Application
用于操作的类
- 操作类的命名:名词做宾语,但因为是类,宾语置前,动词在后;
- OperatorAssignment
- GridSpec
- 操作类的命名:名词做宾语,但因为是类,宾语置前,动词在后;
7. 形容词修饰类
- Int.scala vs. RichInt.scala
命名 —— 函数、类的命名相关推荐
- 【Python面试】 说说Python变量、函数、类的命名规则?
往期面试题: 谈谈对 Python 和其他语言的区别? 说说4种常用编码的区别? 说说Python面向对象三大特性? 说说Python中有几种数据类型? 废话不多说,开始今天的题目: 问:Python ...
- linux c变量命名规则,C语言中变量名及函数名的命名规则与驼峰命名法
在程序设计中,变量名.函数名.数组名等统称为标识 符.简单地说,标识符就是一个名字.除库函数的函数名由系统定义外,其余都由用户自定义.C语言规定,标识符只能由字母(a-z,A-Z).数字 (0-9). ...
- java类的命名规范_一篇搞定Java命名规范
好的代码本身就是注释,减少不必要的注释 驼峰命名规则 大驼峰命名 类名全部使用大驼峰 ServiceDiscovery.ServiceInstance.LruCacheFactory 小驼峰命名 方法 ...
- c语言中函数名可不可以由用户命名,C语言中变量名及函数名的命名规则与驼峰命名法...
在程序设计中,变量名.函数名.数组名等统称为标识 符.简单地说,标识符就是一个名字.除库函数的函数名由系统定义外,其余都由用户自定义.C语言规定,标识符只能由字母(a-z,A-Z).数字 (0-9). ...
- c语言驼峰命名法作用,C语言中变量名及函数名的命名规则与驼峰命名法
在程序设计中,变量名.函数名.数组名等统称为标识 符.简单地说,标识符就是一个名字.除库函数的函数名由系统定义外,其余都由用户自定义.C语言规定,标识符只能由字母(a-z,A-Z).数字 (0-9). ...
- JAVA基础(三)——服务器操作系统、Java开发环境、Java技术架构、定义Java类及其命名规范、Java注释方式
1. 服务器操作系统 当前主流的服务器操作系统则主要分为:Windowsserver.UNIX.Linux.NetWare这四大阵容. (1)Windowsserver作为推广的最好,用户群体最大的服 ...
- pandas使用rename函数自定义重命名dataframe指定索引标签(位置)的名称(customize rename index value or label)
pandas使用rename函数自定义重命名dataframe指定索引标签(位置)的名称(customize rename index value or label) 目录
- R语言as.name函数(转化为命名的类别对象)和is.name函数(检验是否是命名的类别对象)实战
R语言as.name函数(转化为命名的类别对象)和is.name函数(检验是否是命名的类别对象)实战 目录 R语言as.name函数(转化为命名的类别对象)和is.name函数(检验是否是命名的类别对 ...
- 深入理解JavaScript系列(2):揭秘命名函数表达式(转)
前言 网上还没用发现有人对命名函数表达式进去重复深入的讨论,正因为如此,网上出现了各种各样的误解,本文将从原理和实践两个方面来探讨JavaScript关于命名函数表达式的优缺点. 简 单的说,命名函数 ...
最新文章
- 【Linux】Linux 简单操作指令之磁盘管理
- 排序与查找实验报告java,查找排序实验报告 - 范文大全 - 作文仓库-www.zuowencangku.com...
- Python基础-socket编程
- js --- 递归结构图
- CSU 1328 近似回文词【最长回文字符串(三种方法)】
- [机器学习-sklearn]鸢尾花Iris数据集
- JSK-390 计负均正【入门】
- OleDb与Access数据访问中日期时间参数类型错误和命名参数的用法
- javascript 内存和连等赋值
- 数据结构与算法LeetCode题目记录
- 网易云ncm文件转mp3
- 欧氏空间距离和内积_希尔伯特空间(Hilbert Space)
- 利用selenium模拟登录webqq
- mysql数据库事务模拟转账_mysql数据库事务阐发:实现银行转账功能的优化,附代码+实现过程...
- 初步了解JS的作用域
- 360 腾讯 迅雷Windows编程 网络编程面试题及答案
- Vector-常用CAN工具(软件篇)-CANoe Trace
- 因ubuntu内核升级导致的显卡驱动问题的解决方案
- 固态硬盘原理与ASS SSD Benchmark
- Visual Haze Removal by a Unified GenerativeAdversarial Network(基于生成式对抗网络的图像去雾IEEE2019)
热门文章
- 基于阿里云上实现全站https
- PhoneGap跨平台移动应用开发框架体验
- 第三方网站调用微信公众号的图片被禁止
- fastadmin出现token验证错误!_gitee 拥有3.7k星星的极速后台框架—FastAdmin了解一下...
- Keras——用Keras搭建RNN回归循环神经网络
- 莫烦Tensorflow教程(1~14)(转)
- python函数的基本使用_Python学习笔记——主要函数及基本使用(与C的对比)
- Spring Boot 消息
- thikPHP框架部署
- vue/iview使用moment.js