1.使用语法树 当我们要编写一个规则,例如 检测正值表达式的时候,如何编写有效的规则呢 Regex.Match("my text", @"\pXXX"); 这里我们可以借助分析工具 Roslyn Syntax Visualizer,在 视图>其他窗口>Syntax Visualizer 当我们在ConsoleApp项目中编写如下代码 namespace ConsoleApp1 { class Program { static void Main(stri…
给代码分析器增加修复建议 既然代码分析器,向代码编写者提出了错误或警告,那么有没有可能向代码编写者提交有效的改进建议? 相对于 DiagnosticAnalyzer,代码修复继承与 CodeFixProvider CodeFixProvider,是基于DiagnosticAnalyzer,也就是说,必须给CodeFixProvider提供FixableDiagnosticIds. 1.增加继承CodeFixProvider的类RegexAnalyzerCodeFixProvider对我们刚才编写…
1.下载Roslyn的Visual Studio分析器模板插件(VS2015 或VS2017) https://marketplace.visualstudio.com/items?itemName=VisualStudioProductTeam.NETCompilerPlatformSDK 我后来查询到官方说明vs2017已经内嵌了此功能 Want to start developing in C# and Visual Basic? Download Visual Studio 2017,…
1 现实中的问题 在任何一个公司,每个程序员编写的习惯可能都是不一样的,大到命名空间,小到变量的名字.甚至,我们去github,里面的大牛每个开源的项目的命名规则可能都不一样. 我们通常会遇到下面的问题 1 一个webapi,版本1是一种写法,版本2认知到版本1的写法过于老旧又换了一种写法 2 一个webapi,程序员老王习惯返回大写,程序员小张喜欢返回小写 3 各个业务类似的webapi,名字都不相同,例如供应商有的用vendor 有的用supplier 有的干脆用拼音 4 公司有实际的编码规…
GitHub: https://github.com/google/gops 一个用于列出和诊断分析系统中正在运行的 Go 程序的命令行工具 安装 go get -u github.com/google/gops 命令帮助 执行 gops help 查看帮助文档: gops is a tool to list and diagnose Go processes. gops <cmd> <pid|addr> ... gops <pid> # displays proces…
1 数据编码格式 openssl的数据编码规则是基于ans.1的,ans.1是什么 ? 先上高大上的解释 ASN.1(Abstract Syntax Notation One), 是一种结构化的描述语言,包括两部分,数据描述语言和数据编码规则,数据描述语言标准:语言标准允许用户自定义的基本数据类型,并可以通过简单的数据类型组成更复杂的数据类型.数据编码规则:这些编码方法规定了将数字对象转换成应用程序能够处理.保存.传输的二进制形式的一组规则.标准ASN.1编码规则有规范编码规则(CER,Cano…
Redis是一个基于内存的数据库,所有的数据都存储在内存中.所以如何优化存储,减少内存空间占用是一个非常重要的话题.精简键名和键值是最直观的减少内存占用的方式,如将键名very.important.person:20改成VIP:20. 但有时仅凭精简键名和键值所减少的空间并不足以满足需求,这时就需要根据Redis内部编码规则来节省更多的空间. Redis为每种数据类型都提供了两种内部编码方式,以散列类型为例,散列类型是通过散列表实现的,这样就可以实现O(1)时间复杂度的查找.赋值操作,然而当键中…
from:http://www.cnblogs.com/chenwenbiao/archive/2011/08/11/2134503.html UTF-8是Unicode的一种实现方式,也就是它的字节结构有特殊要求,所以我们说一个汉字的范围是0X4E00到0x9FA5,是指unicode值,至于放在utf-8的编码里去就是由三个字节来组织,所以可以看出unicode是给出一个字符的范围,定义了这个字是码值是多少,至于具体的实现方式可以有多种多样来实现. UTF-8是一种变长字节编码方式.对于某一…
UTF-8是Unicode的一种实现方式,也就是它的字节结构有特殊要求,所以我们说一个汉字的范围是0X4E00到0x9FA5,是指unicode值,至于放在utf-8的编码里去就是由三个字节来组织,所以可以看出unicode是给出一个字符的范围,定义了这个字是码值是多少,至于具体的实现方式可以有多种多样来实现.http://wenku.baidu.com/link?url=mElqPI6O4U-qjtiD7W7yv4FvH7FjAhc_2vbnXBN5gMOFxSJAD6JNZ_mtih5c4A…
hz_chenwenbiao UTF-8编码规则(转) UTF-8是Unicode的一种实现方式,也就是它的字节结构有特殊要求,所以我们说一个汉字的范围是0X4E00到0x9FA5,是指unicode值,至于放在utf-8的编码里去就是由三个字节来组织,所以可以看出unicode是给出一个字符的范围,定义了这个字是码值是多少,至于具体的实现方式可以有多种多样来实现. UTF-8是一种变长字节编码方式.对于某一个字符的UTF-8编码,如果只有一个字节则其最高二进制位为0:如果是多字节,其第一个字节…