naming-conventions - 以“allocate”、“create”、“initialize”等开头的函数有什么区别
问题描述
在命名函数时,以下单词之间的主要区别是什么:“allocate”、“create”、“initialize”、“instantiate”、“make”、“build”、“add”和“insert”。
我应该什么时候使用每个单词?
先感谢您 :)
解决方案
我总结了 , , , , , , , 的现有用法allocate
,initialize
以及instantiate
在make
此build
比较create
中add
我insert
需要的另外两个:put
和update
, 下面。
allocate
; 同义词alloc
(C); 用于“分配”或分配内存空间
initialize
; 同义词init
,__init__
(python)`;用于从类或原型实例化对象
instantiate
;; 在任何地方都没有一个超级有力的案例,但欢迎您查看
make
;; 在 shell 脚本语言(如bash
)中,传统上是管理C或C++项目make
不同部分的编译的命令。在go中,是一个内置函数,它为实例化 slice、map 或 chan 类型的对象提供函数式语法。make
build
;; 许多 Makefile 将支持此方法,因为它符合“构建”或编译项目。
create
; 同义词insert
和POST
(REST);用于创建没有 id的新Web 资源。如果 Web 资源已存在,则会出错。
put
; 同义词add
,sadd
(redis),zadd
(redis),set
(redis),PUT
(REST);通过 id 创建一个 web 资源。如果资源已经存在,则完全更新它。
update
; 同义词hset
(redis),PATCH
(REST);通过 id 更新 Web 资源。如果资源不存在,一些实现会抛出,其他实现会创建。
我让您自行决定如何使用这些词。
推荐阅读
- python - 我最近正在研究言语情感。我发现这个版本不匹配错误
- kotlin - 如何以相同的方式对两个数组进行排序?
- bash - 如何执行等待前一个脚本首先完成的下一个脚本?
- flutter - appwebview 中的 contentblocker 问题
- laravel - 如何将 Spatie 的 laravel-permission 与 JetStream 正确集成?
- python - 我正在使用 css 在 quart python 上创建一个网站,但它似乎不起作用
- php - 如何在 laravel 8 中从存储文件夹中获取图像到刀片?
- https - 从 HTTPS Web 应用程序读取 HTTP IndexedDB 数据
- python - 计算熊猫数据框中不同行中单元格之间的差异
- javascript - 我可以使用任何来源的 Google Auth 2.0 吗?