用惯了Visual Studio,像被惯坏了孩子,很难适应别的IDE。

 

上个月Win7系统崩溃了,重装后,自然VS也没了。这次下定决心,绝对不在自己电脑上用VS了,于是重新捡起SharpDevelop,晚上下班后写写小代码足够用了,以自己现在这种经验,再受IDE的局限应该很小了。

 

用了最新SharpDevelop 5.1后,发现其一个很不错的功能,类似VS中自动添加命名空间,或实现接口成员,不过功能更强大,除了上述功能,还可以对优化代码作出提示。

 

这种提示是在每行的开头,会出现有个铅笔的图标,目前发现大体有这几个:

 

1. 函数名直接作委托参数

虽然Lambda表达式很方便,但是经常忽略了,如果表达式只是调用了一个函数,并且该函数参数和委托参数一致,就会提示你直接用该函数名,更为简洁。

 

2. 若要dispose,使用using

如果你代码中,创建一个使用Dispose模式的对象,在处理逻辑代码后调用Dispose方法,会提示你使用using,帮助你提高代码健壮性。

 

3. Any方法

Linq里面的Any方法,名字很让人迷惑,其实和List/Dictionary的Contains方法一样,应该是为了避免和这些类型固有的Contains方法冲突,但这样的结果,导致至少是我,很长时间内都没用过Any方法,而是用Count(n=>n>0) > 0这种方式判断集合内是否存在符合条件的元素。如果用了最新的SD,IDE会第一时间提示你改用Any方法,点赞!同时吐糟那个这个方法名。

 

新版的SV,还有个不错的地方,就是重写ToString方法时,会自动产生将属性用String.Format输出的代码。虽然是个小细节,可这些VS忽略细节如果多起来的话,或许大家会逐渐觉得,没了VS也能Coding完美世界。

SharpDevelop的亮点—优化提示的更多相关文章

  1. Android 性能优化提示

    原文 http://developer.android.com/guide/practices/design/performance.html 性能优化 Android应用程序运行的移动设备受限于其运 ...

  2. CentOS内核优化提示:cannot stat /proc/sys/net/bridge/bridge-nf-call-ip6tables: 没有那个文件或目录

    临时解决,重启失效 modprobe br_netfilter 为了开机加载上面这个模块 cat > /etc/rc.sysinit << EOF #!/bin/bash for f ...

  3. [MySQL Reference Manual] 8 优化

    8.优化 8.优化 8.1 优化概述 8.2 优化SQL语句 8.2.1 优化SELECT语句 8.2.1.1 SELECT语句的速度 8.2.1.2 WHERE子句优化 8.2.1.3 Range优 ...

  4. Android App 性能优化实践

    本文记录了Android App优化需要用到的工具和以及在实践中的Tips.也算对我这半年来部分工作的总结. 工具 Hierarchy Viewer 是 Android SDK 自带的 Layout ...

  5. Android布局优化

    前言 本篇文章为Android优化的布局部分,该部分应该是Android中很重要的,无论是在自定义控件中,还是在简单的书写布局时,都应该尽量遵循一些优化原则,这样布局的绘制效率才会更高,体验才能更好. ...

  6. magento性能优化

    magento性能优化 14个快速加载web页面的技巧: 减少HTTP请求数使用CDN增加过期头信息gzip压缩传输内容将css样式表放在页首将js文件放在页尾不使用css表达式尽量少用内联式的css ...

  7. magento性能优化的教程(非常详细)

    Magento是一套专业开源的电子商务系统,Magento设计得非常灵活,具有模块化架构体系和丰富的功能但有朋友会发现此模块用到了会发现非常的缓慢了,那么下面我们来看关于magento性能优化的例子. ...

  8. Android开发之布局优化

    1.抽象布局标签 (1) <include>标签 include标签经常使用于将布局中的公共部分提取出来供其它layout共用,以实现布局模块化.这在布局编写方便提供了大大的便利. 以下以 ...

  9. SQL优化策略高级优化经常使用-1(The Return Of The King)

    1 经常使用的优化策略 1.1    语句 1.1.1使用实际的列名 当我们查询SQL语句时.你是否觉得使用实际的列名比使用*更快呢?答案是肯定的. 为了证实这一点,感兴趣的朋友能够自己验证一下.我这 ...

随机推荐

  1. MySql binlog恢复数据

    1. 直接导入数据库 mysqlbinlog --database=testdb mysql-bin. | mysql -uroot -f 2. 导出成SQL文 (1) 从binlog输出为SQL m ...

  2. 使用FIR.im发布自己的移动端APP

    一次很偶然的机会知道FIR.im,这家公司主要的产品就是帮助开发者方便便捷地发布iOS或者Android应用的.今天我就聊聊如何在FIR.im中发布自己的APP,然后让加入UUID的设备通过网页直接下 ...

  3. 前言,学习ios编程(坚持)

    其实,尝尝有人很疑惑,不知道自己要干嘛,看到很多的培训机构,不知道怎么选择但是又想进入软件行业.其实呢学习不一定要靠培训机构,一定要培训,特别是 当人家把自己吹的天花乱坠的时候,然并卵.出来之后,也只 ...

  4. xcopy中提示“无效的参数数量”的解决方法

    原因是DOS下不支持长文件名,只支持8.3格式的文件名 .如果是Windows下的命令行,对于有空格的命令行要加引号.应该是 copy "c:\program files" &qu ...

  5. Java的数据类型

    在JAVA中一共有八种基本数据类型,他们分别是byte.short.int.long.float.double.char.boolean整型其中byte.short.int.long都是表示整数的,只 ...

  6. SQL检查锁&解锁

    use master go --检索死锁进程 select spid, blocked, loginame, last_batch, status, cmd, hostname, program_na ...

  7. mac下安装 xampp 无法启动apache (转,留用)

    1.查看端口是否被占用 sudo lsof -i -n   2.用终端运行xampp,查看具体的错误 sudo su /Applications/XAMPP/xamppfiles/xampp star ...

  8. codeigniter nginx配置

    转载:http://www.nginx.cn/1134.html server{ listen 80; server_name www.ci.oa.com; access_log /usr/local ...

  9. Android中Context详解

    大家好,  今天给大家介绍下我们在应用开发中最熟悉而陌生的朋友-----Context类 ,说它熟悉,是应为我们在开发中时刻的在与它打交道,例如:Service.BroadcastReceiver.A ...

  10. antd 学习

    1,react中文文档http://reactjs.cn/react/docs/thinking-in-react-zh-CN.html 2,antd文档 https://ant.design/doc ...