C#代码规范
2015-11-12 10:24
232 查看
1.注释写在上面,充分利用C#的提示
2.短路写法,把大量的前提预先处理,可以让代码实现逻辑更清晰,并能有效的所见代码嵌套深度
3.要常用自带的Action Func Predicate委托类型
不要引入额外的类型 增加负担
http://www.cnblogs.com/akwwl/p/3232679.html
Delegate至少0个参数,至多32个参数,可以无返回值,也可以指定返回值类型
Func可以接受0个至16个传入参数,必须具有返回值
Action可以接受0个至16个传入参数,无返回值
Predicate只能接受一个传入参数,返回值为bool类型
原来的写法:
修改之后:
4.容器不要直接public,要容器自己权限操作,如果代码量大的话不利于维护,出现一个bug不知道从哪儿操作
5.多用var,C#不需要太关注类型
6.挂事件要对应着减事件,以免内存泄露
在Start中+=事件,就要立马写对应的OnDestroy()中-=事件
7.任务的单词不要用task用quest
8.变量命名规范
*例如事件不要以event结尾,class不要以class结尾
9.EventHandler如果确定不需要sender,可以考虑用Action
10.public的方法首字母大写
11.如果方法是GetXXX,那么返回不能是void,必须有返回值
12.C++里面的byte类型或者uint类型 int类型枚举采用C#强类型枚举
或者参数里是uint或者int这种情况也要使用强类型枚举
或者字段属性是uint类型也要使用强类型枚举
或者字典的key
13.xml属性=左右不需要空格
14.C++/Unity中的C#采用Pascal命名规则,js/ts采用camel命名规则
前面属于camel命名规则,后面属性Pascal命名规则
15.函数大量的传出参数可能在暗示设计的问题,除非必须这么用,飞则违反直觉和思维习惯。函数的返回值是很好的通用函数渠道,如多个返回值,可以考虑Tuple元组的方式。
例如:函数的参数有两个ref这种形式
http://www.cnblogs.com/shanyou/p/3541327.html
16.C#中的容易都是引用类型,和C++ STL中的值类型容易是不一样的,传参时候不会有拷贝性能损伤
17.注意单词的拼写错误
2.短路写法,把大量的前提预先处理,可以让代码实现逻辑更清晰,并能有效的所见代码嵌套深度
3.要常用自带的Action Func Predicate委托类型
不要引入额外的类型 增加负担
http://www.cnblogs.com/akwwl/p/3232679.html
Delegate至少0个参数,至多32个参数,可以无返回值,也可以指定返回值类型
Func可以接受0个至16个传入参数,必须具有返回值
Action可以接受0个至16个传入参数,无返回值
Predicate只能接受一个传入参数,返回值为bool类型
原来的写法:
修改之后:
4.容器不要直接public,要容器自己权限操作,如果代码量大的话不利于维护,出现一个bug不知道从哪儿操作
5.多用var,C#不需要太关注类型
6.挂事件要对应着减事件,以免内存泄露
在Start中+=事件,就要立马写对应的OnDestroy()中-=事件
7.任务的单词不要用task用quest
8.变量命名规范
*例如事件不要以event结尾,class不要以class结尾
9.EventHandler如果确定不需要sender,可以考虑用Action
10.public的方法首字母大写
11.如果方法是GetXXX,那么返回不能是void,必须有返回值
12.C++里面的byte类型或者uint类型 int类型枚举采用C#强类型枚举
或者参数里是uint或者int这种情况也要使用强类型枚举
或者字段属性是uint类型也要使用强类型枚举
或者字典的key
13.xml属性=左右不需要空格
14.C++/Unity中的C#采用Pascal命名规则,js/ts采用camel命名规则
前面属于camel命名规则,后面属性Pascal命名规则
15.函数大量的传出参数可能在暗示设计的问题,除非必须这么用,飞则违反直觉和思维习惯。函数的返回值是很好的通用函数渠道,如多个返回值,可以考虑Tuple元组的方式。
例如:函数的参数有两个ref这种形式
http://www.cnblogs.com/shanyou/p/3541327.html
16.C#中的容易都是引用类型,和C++ STL中的值类型容易是不一样的,传参时候不会有拷贝性能损伤
17.注意单词的拼写错误
相关文章推荐
- c# 中关于panel 的说明
- C#的winforms程序中的弹出窗口编写方式 一个窗口类
- C# 多线程
- (原创)c#学习笔记10--定义类成员02--类成员的其他议题02--调用重写或隐藏的基类方法
- (原创)c#学习笔记10--定义类成员02--类成员的其他议题01--隐藏基类方法
- C#中public、private、protected、internal、protected internal (转载)
- (原创)c#学习笔记10--定义类成员01--成员定义05--重构成员
- 【C#】C#中正则表达式的使用
- c# Internet时间服务器同步
- 【C#】正则表达式匹配中文,英文字母和数字及_写法!并控制长度
- 【C#】匹配中文字符串的4种正则表达式分享
- C# Memory model
- 用C#实现二进制的减法(包括二进制小数)
- C#的ConsoleKeyInfo
- C#学习笔记一:C#开发环境的设置
- Win8Metro(C#)数字图像处理--2.40二值图像轮廓提取
- 利用richtextbox做的c#简易编辑软件,
- (原创)c#学习笔记10--定义类成员01--成员定义06--自动属性
- C#GDI+图像处理
- C# 内存法图像处理