.NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?
本文将解释在 .NET 技术栈中各种不同使用方式下 N E T 三个字母何时大写何时小写;前面的 “.” 什么时候加上,什么时候去掉,什么时候又使用 “dot”。
.NET 在技术文档中
如果你阅读过 https://docs.microsoft.com/zh-cn/dotnet/ 中的多数 .NET 技术文档,你应该几乎已经注意到了,在所有对大小写敏感的地方,NET 三个字母都是大写的。
“.NET” 是 .NET 技术栈名称的最官方写法了,如果能写出 “.NET” 且不会产生其他问题的地方,都应该使用 “.NET”。
▲ 首先映入眼帘的,便是 .NET 技术栈中的所有文档标题
.NET 在代码中
.NET 在代码中并不符合 PascalCase 对命名规范的大小写建议。一般来说三个字母无论是单个单词还是多个单词的缩写,在 PascalCase 中都应该是首字母大写,其后全部小写。但在微软的代码中,NET 依然都是全大写的。
例如 Microsoft.NET.Sdk,去 dotnet/sdk - GitHub 上看,写法都是 NET 全大写的。
.NET 在标识符中
其实,我这里想说的标识符并不是指类名或方法名,那是上一节 .NET 在代码中 所说的内容。这里想说的是,当 .NET 作为用于识别 .NET 某种特征所用的标识符。一般这种标识符有一些命名限制(例如 “.” 开头经常就不符合限制)。
通常作为这种类型的标识符是大小写不敏感的,于是,微软在文档中对此的惯用写法是全部小写。
例如,在 Url 中:
前面的 “.” 被改写成了 “dot”。
例如,在项目的目标框架中作为标识符使用时:
netstandard2.0netcoreapp2.1net472
这时,连前面的 “.” 都直接去掉了。
.NET 在文件系统中
在文件系统中,“.” 作为前缀的文件或文件夹在 OSX 和 Linux 上都是有特殊用途的,代表隐藏文件夹。这意味着如果没有特别的安排,尽量不要为常规文件夹使用 “.” 作为前缀。
这就意味着,如果你想建一个 .NET 文件夹,你应该去掉前面的 “.”。可是去掉之后的辨识度就太低了,看不出来是 .NET 技术栈。那么怎么命名呢?
这里给一些建议:
dotNET适用于有大小写规范的命名中(例如为了跟 Windows/Android/iOS/OSX 这样的名称保持统一)dotnet适用于作为普通标识符的命名中(例如为了跟 windows/android/ios/osx 这样的名称保持统一)net适用于使用缩写的命名中(例如为了跟 win/android/ios/osx 这样的名称保持统一)
.NET 作为产品或机构名称的一部分
JetBrains 家的 .NET 团队很喜欢用 dot 作为软件名称的前缀,例如 dotCover、dotMemory、dotPeek、dotTrace。去 JetBrains: Developer Tools for Professionals and Teams 看看很快就能找到这几款软件的名称。
.NET Core 开源峰会使用 dnc 这样奇怪的缩写,代表 dotnet-core。
总结
合理的 .NET 写法有这些:
.NET推荐NETdotNETdotnetnet
如果与其他相关技术名词进行组合:
.NET CoreML.NETMicrosoft.NET.Sdkdotnet-standardnet472
.NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?的更多相关文章
- dotnet core 项目脚手架这种小事嘛...
dotnet core脚手架批处理.bat @echo 请修改批处理文件名后,如:Example.Core ,注释掉goto end,再执行脚本 pause goto end ::goto end s ...
- 国产中标麒麟Linux部署dotnet core 环境并运行项目 (一) 安装dotnet core
背景 根据我之前写的文章 将 Net 项目升级 Core项目经验:(一)迁移Net项目为Net Core\Standard项目,我们将公司内部最核心的ORM框架迁移到net core 上面,并在win ...
- win10 uwp 手把手教你使用 asp dotnet core 做 cs 程序
本文是一个非常简单的博客,让大家知道如何使用 asp dot net core 做后台,使用 UWP 或 WPF 等做前台. 本文因为没有什么业务,也不想做管理系统,所以看到起来是很简单. Visua ...
- dotnet core 发布只带必要的依赖文件
在使用 dotnet core 发布独立项目的时候,会带上大量依赖的库,但是通过微软提供的工具可以去掉一些在代码没有用到的库. 本文介绍的工具是 Microsoft.Packaging.Tools.T ...
- dotnet core TargetFramework 解析顺序测试
dotnet core TargetFramework 解析顺序测试 Intro 现在 dotnet 的 TargetFramework 越来越多,抛开 .NET Framework 不谈,如果一个类 ...
- 探索 dotnet core 为何在 Windows7 系统需要补丁的原因
在一些 Windows 7 系统上,根据 dotnet 官方文档,需要安装上 KB2533623 补丁,才能运行 dotnet core 或 .NET 5 等应用.尽管非所有的设备都需要安装此,但这也 ...
- dotNet Core开发环境搭建及简要说明
一.安装 .NET Core SDK 在 Windows 上使用 .NET Core 的最佳途径:使用Visual Studio. 免费下载地址: Visual Studio Community 20 ...
- dotnet core 使用 MongoDB 进行高性能Nosql数据库操作
好久没有写过Blog, 每天看着开源的Java社区流口水, 心里满不是滋味. 终于等到了今年六月份 dotnet core 的正式发布, 看着dotnet 社区也一步一步走向繁荣, 一片蒸蒸日上的大好 ...
- dotnet Core Asp.net 项目搭建
Asp.Net Core 介绍 Asp.Net Core 目前最新版本 1.0.0-preview2-003131 Asp.Net Core官网:https://dotnet.github.io/ A ...
随机推荐
- UTF-8文件的Unicode签名BOM(Byte Order Mark)问题记录(EF BB BF)
背景 楼主测试的批量发送信息功能上线之后,后台发现存在少量的ERROR日志,日志内容为手机号码格式不正确. 此前测试过程中没有出现过此类问题,从运营人员拿到的发送列表的TXT,号码是符合规则的,且格式 ...
- [mybatis]Mapper XML 文件——statementType
statementType:STATEMENT,PREPARED 或 CALLABLE(存储过程) 的一个.这会让 MyBatis 分别使用 Statement,PreparedStatement 或 ...
- Docker 进入容器的几种方式
进入Docker容器比较常见的几种做法如下: 使用docker attach 使用SSH 使用nsenter 使用exec 一.使用docker attach进入Docker容器 Docker提供了a ...
- Mysql5.7-CentOS7安装
下载Mysql 官网地址,点击download,找到Community 选择MySQL Community Server 选择平台和版本下载即可 安装mysql 查看安装文档 在下载页面上面有安装指南 ...
- C# 获取命名空间对应的程序集位置
由于同名命名空间会被多个程序集使用,C#没有提供直接的方法(对象浏览器也不行)通过命名空间获得程序集位置,这样就不方便找到那些引用文件时什么. 那么可以在立即窗口,中断某个代码的时候,去查询类所在程序 ...
- 十八 Python分布式爬虫打造搜索引擎Scrapy精讲—Scrapy启动文件的配置—xpath表达式
我们自定义一个main.py来作为启动文件 main.py #!/usr/bin/env python # -*- coding:utf8 -*- from scrapy.cmdline import ...
- struts.xml路径修改后的web配置
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_9" ...
- 【Error】 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
mysql 登录输入密码有时会碰到如题的错误. 错误描述: Error 1045 (28000): Access denied for user 'root'@'localhost' (using p ...
- RabbitMQ其他(八)
1 RabbitMQ消息队列的小伙伴: ProtoBuf(Google Protocol Buffer) 什么是ProtoBuf? 一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序 ...
- 不使用构造方法创建Java对象: objenesis的基本使用方法
转载:http://blog.csdn.net/codershamo/article/details/52015206 objenesis简介: objenesis是一个小型Java类库用来实例化一个 ...