白癜风的初期症状 http://news.39.net/bjzkhbzy/171103/5813045.html大家好,我是程序员隔壁老王。今天和大家分享几个编程中的一些小技巧,助你写出高性能代码,让你的代码提高一个档次!作为程序员,同行之间其实也会有一些不叫“攀比性”的“攀比性”,那就是看对方代码写得有多牛,如果对方写的代码你大致看一眼就知道用的什么技术,逻辑怎样,那你不会去膜拜他;但如果他写的代码用到了你没见过的技术,语法,甚至很长一段代码他一句话就能搞定,或者他在编程中使用的一些快捷键等技巧是你没见过的,你就会觉得他应该是比你厉害的。所以我们也要不断充实自己,以下是我在实际应用中总结的一些编程技巧,看是否有能帮助到你的。一、自动属性VS下新建一个类,输入prop,然后按Tab键就可以自动进行填充代码了。prop+Tab键这个方法我们不用再额外为一个类的每个公共属性定义一个私有字段(后续这种方式基本没人用了)我们也不用对每个字段写get,set了,都自动生成了二、双问号与三元运算符场景:如果list为null,则new一个对象。一般写法:双问号写法:三元运算符写法:个人比较喜欢双问号写法,主要是代码简洁,并且可以用到int,string,decimal,double等常见类型。三、Alt键+上下方向键移动代码场景:要把第行代码移动到第99行。一般做法:复制或剪切第行代码,再粘贴到第99行高级做法:按住Alt键,再按住方向上键,按几下上键就往上移动几行。注意:这个快捷键只适合VS及以上版本哦!四、使用StringBuilder代替使用String连接符+说明:String类对象是只读的,一旦对象被创建就不能修改该对象的值了。对String变量重新赋值,本质上是重新创建了一个String对象并将新的值赋值给该对象而已。如果字符串存在较多次的拼接时候,就相当于创建了很多个String对象,性能上造成了一定的浪费不说,而且代码看着比较冗余,通俗点讲就是比较low。推荐使用:StringBuilder类,需要引用命名空间System.Text,该类在操作字符串时不是创建新的对象,而是通过Append、Insert、Remove等方法操作字符串,最后通过ToString方法返回操作结果。从而避免创建大量的对象,造成资源浪费、性能降低。StringBuilder拼接字符串五、字符串比较场景:字符串比较做法:尽量不要使用ToUpper或者ToLower,而是使用String.Compare来比较,因为它有忽略大小写的重载方法。注意:特别是进行登记密码验证的时候,数据库存的是小写的MD5字符串,而登录加密取出来的是大写的,如果直接对比是不一样的,所以建议采用进行比较。六、避免使用反射避免滥用反射,反射是比较浪费性能的操作。当使用反射来调用类型或者触发方法,或者访问一个字段或者属性时,CLR需要做很多工作例如:校验参数、检查权限、异常检测等,所以非常耗时,因此这样的情况下要尽量避免反射的使用。七、使用用lamda表达式当需要计算两个数的方法时一般写法:使用lamda表达式: 假如要求3+5,可以直接调用temp(3,5);返回的结果是8注:Func是系统定义好的有两个参数,一个返回值的泛型委托,下面是其定义:八、使用Linq进行筛选,排序,统计等分别对应的扩展方法时Where,OrderBy,Count等,这些扩展方法前提条件是调用者必须继承自IEumerable接口。九、采用using和try/finaly来做资源清理使用using,不用再写Disopose等清理关闭连接,using代码块结束会自动清理的。同样try,catch,finaly之后也要注意资源释放。十、异常(Exception)不要使用异常(Exception)来控制程序的流程因为捕获异常对性能的损耗很大,最好不要用异常去控制程序的流程。小技巧很多,今天就先分享到这里了,喜欢我的文章请小伙伴们分享点赞评论,有很多不足之处,欢迎大家留言指正,分享技术心得,满满干货,我们共同交流,提升!我是隔壁老王,爱编程爱学习~_~