命名对应着分类;命名是功能的体现;

  • 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
  • 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

命名 —— 函数、类的命名相关推荐

  1. 【Python面试】 说说Python变量、函数、类的命名规则?

    往期面试题: 谈谈对 Python 和其他语言的区别? 说说4种常用编码的区别? 说说Python面向对象三大特性? 说说Python中有几种数据类型? 废话不多说,开始今天的题目: 问:Python ...

  2. linux c变量命名规则,C语言中变量名及函数名的命名规则与驼峰命名法

    在程序设计中,变量名.函数名.数组名等统称为标识 符.简单地说,标识符就是一个名字.除库函数的函数名由系统定义外,其余都由用户自定义.C语言规定,标识符只能由字母(a-z,A-Z).数字 (0-9). ...

  3. java类的命名规范_一篇搞定Java命名规范

    好的代码本身就是注释,减少不必要的注释 驼峰命名规则 大驼峰命名 类名全部使用大驼峰 ServiceDiscovery.ServiceInstance.LruCacheFactory 小驼峰命名 方法 ...

  4. c语言中函数名可不可以由用户命名,C语言中变量名及函数名的命名规则与驼峰命名法...

    在程序设计中,变量名.函数名.数组名等统称为标识 符.简单地说,标识符就是一个名字.除库函数的函数名由系统定义外,其余都由用户自定义.C语言规定,标识符只能由字母(a-z,A-Z).数字 (0-9). ...

  5. c语言驼峰命名法作用,C语言中变量名及函数名的命名规则与驼峰命名法

    在程序设计中,变量名.函数名.数组名等统称为标识 符.简单地说,标识符就是一个名字.除库函数的函数名由系统定义外,其余都由用户自定义.C语言规定,标识符只能由字母(a-z,A-Z).数字 (0-9). ...

  6. JAVA基础(三)——服务器操作系统、Java开发环境、Java技术架构、定义Java类及其命名规范、Java注释方式

    1. 服务器操作系统 当前主流的服务器操作系统则主要分为:Windowsserver.UNIX.Linux.NetWare这四大阵容. (1)Windowsserver作为推广的最好,用户群体最大的服 ...

  7. pandas使用rename函数自定义重命名dataframe指定索引标签(位置)的名称(customize rename index value or label)

    pandas使用rename函数自定义重命名dataframe指定索引标签(位置)的名称(customize rename index value or label) 目录

  8. R语言as.name函数(转化为命名的类别对象)和is.name函数(检验是否是命名的类别对象)实战

    R语言as.name函数(转化为命名的类别对象)和is.name函数(检验是否是命名的类别对象)实战 目录 R语言as.name函数(转化为命名的类别对象)和is.name函数(检验是否是命名的类别对 ...

  9. 深入理解JavaScript系列(2):揭秘命名函数表达式(转)

    前言 网上还没用发现有人对命名函数表达式进去重复深入的讨论,正因为如此,网上出现了各种各样的误解,本文将从原理和实践两个方面来探讨JavaScript关于命名函数表达式的优缺点. 简 单的说,命名函数 ...

最新文章

  1. 【Linux】Linux 简单操作指令之磁盘管理
  2. 排序与查找实验报告java,查找排序实验报告 - 范文大全 - 作文仓库-www.zuowencangku.com...
  3. Python基础-socket编程
  4. js --- 递归结构图
  5. CSU 1328 近似回文词【最长回文字符串(三种方法)】
  6. [机器学习-sklearn]鸢尾花Iris数据集
  7. JSK-390 计负均正【入门】
  8. OleDb与Access数据访问中日期时间参数类型错误和命名参数的用法
  9. javascript 内存和连等赋值
  10. 数据结构与算法LeetCode题目记录
  11. 网易云ncm文件转mp3
  12. 欧氏空间距离和内积_希尔伯特空间(Hilbert Space)
  13. 利用selenium模拟登录webqq
  14. mysql数据库事务模拟转账_mysql数据库事务阐发:实现银行转账功能的优化,附代码+实现过程...
  15. 初步了解JS的作用域
  16. 360 腾讯 迅雷Windows编程 网络编程面试题及答案
  17. Vector-常用CAN工具(软件篇)-CANoe Trace
  18. 因ubuntu内核升级导致的显卡驱动问题的解决方案
  19. 固态硬盘原理与ASS SSD Benchmark
  20. Visual Haze Removal by a Unified GenerativeAdversarial Network(基于生成式对抗网络的图像去雾IEEE2019)

热门文章

  1. 基于阿里云上实现全站https
  2. PhoneGap跨平台移动应用开发框架体验
  3. 第三方网站调用微信公众号的图片被禁止
  4. fastadmin出现token验证错误!_gitee 拥有3.7k星星的极速后台框架—FastAdmin了解一下...
  5. Keras——用Keras搭建RNN回归循环神经网络
  6. 莫烦Tensorflow教程(1~14)(转)
  7. python函数的基本使用_Python学习笔记——主要函数及基本使用(与C的对比)
  8. Spring Boot 消息
  9. thikPHP框架部署
  10. vue/iview使用moment.js