Naming Conversion & Case Style 命名规范

前言

写代码有 2 个点很重要

第一是表达 (不要词不达意)

要达到这点, 就要多参考其它人如何表达. 

第二是一致性 (一样的东西就用一样的写法)

要达到这点就要建立规范

以前的笔记

命名规范 naming conversion, camel case, pascal case, hyphen 等等

Case Style

pascal case = PascalCase

camel case = camelCase

kebab case = kebab-case (通常是 lower case)

snake case = snake_case

upper case = UPPERCASE

lower case = lower case

title case = Blog Title

以下是我自己的规范和学习笔记

Url Case Style

Url 用 kebab-case

query params 用 snake_case (oauth) 或 camelCase (gmail)

Folder and File Case Style

参考一些开源库: 

.NET = PascalCase

Angular = forlder: kebab-case, file: snake_case

Angular Material = kebab-case

React = forlder: kebab-case, file: camelCase

Vue = folder: kebab-case, file: PascalCase or camelCase

Me = need url access: kebab-case, 前端: kebab-case, 后端: PascalCase, 

Folder and File Path Naming Conversion

参考:

What is the naming standard for path components?

FileRootFullPath = C:ProjectHydrowwwrootuploaded-filesimage.jpg

FileFullPath = wwwrootuploaded-filesimage.jpg

Filename = image.jpg

FilenameWithoutExtension = image

Extension = .jpg

DirectoryName = uploaded-files (和 .net 有分歧)

DirectoryRootFullPath = C:ProjectHydrowwwrootuploaded-files 

DirectoryFullPath = wwwrootuploaded-files 

RelativePath = ./ or ../

AbsolutePath = ~/abc/xyz

DirectoryPath = "abcxyz"

C# Case Style

class name = PascalCase

property name = PascalCase

enum = PascalCase

filed = camelCase

private field = _camelCase

variable = camelCase

parameter = camelCase

JS / TS Case Style

class name = PascalCase

enum = PascalCase

property name = camelCase

variable = camelCase

parameter = camelCase

SQL Case Style

database name = PascalCase

table name = PascalCase (Singular)

column name = PascalCase

query = UPPERCASE

variable = camelCase

trigger name for redundacy = TR_TableName_AfterInsert_ForRedundancy_TableName_ColumnName (第 1 个 table name 是被监听的, 第 2 个是冗余 table)

trigger name for cascade = TR_TableName_InsteadOfDelete_ForCascade_TableName (第 1 和第 2 table name 是一样的)

抽象的 array 和 object 命名

EPPlus 叫 foreach (var item in collection)
有些人叫 foreach (var obj in objects)
有些人叫 foreach (var data in dataList)
有些人叫 foreach (var obj in objects)
我选 EPPlus
 
 

 

原文地址:https://www.cnblogs.com/keatkeat/p/15082778.html