惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
MongoDB | Blog
MongoDB | Blog
Engineering at Meta
Engineering at Meta
云风的 BLOG
云风的 BLOG
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog RSS Feed
T
The Exploit Database - CXSecurity.com
P
Privacy & Cybersecurity Law Blog
Know Your Adversary
Know Your Adversary
月光博客
月光博客
I
InfoQ
阮一峰的网络日志
阮一峰的网络日志
NISL@THU
NISL@THU
爱范儿
爱范儿
S
Securelist
博客园 - 叶小钗
C
CERT Recently Published Vulnerability Notes
Recorded Future
Recorded Future
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
aimingoo的专栏
aimingoo的专栏
D
DataBreaches.Net
G
GRAHAM CLULEY
P
Proofpoint News Feed
A
About on SuperTechFans
Google DeepMind News
Google DeepMind News
C
Cyber Attacks, Cyber Crime and Cyber Security
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tor Project blog
Stack Overflow Blog
Stack Overflow Blog
T
Threat Research - Cisco Blogs
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Tailwind CSS Blog
有赞技术团队
有赞技术团队
Hugging Face - Blog
Hugging Face - Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Recent Announcements
Recent Announcements
P
Proofpoint News Feed
The GitHub Blog
The GitHub Blog
The Cloudflare Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Last Week in AI
Last Week in AI
Y
Y Combinator Blog
Jina AI
Jina AI
大猫的无限游戏
大猫的无限游戏
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
罗磊的独立博客
博客园 - 【当耐特】
H
Help Net Security
F
Fortinet All Blogs
T
The Blog of Author Tim Ferriss

博客园 - 9who

Nopcommerce2.70版本如何在vs2010中打开 UrlRewriter 伪url的配置 - 9who - 博客园 百度,google,雅虎等搜索引擎的高级搜索语法 开发记录——触发器实现 数据库关联字段 FCKEditor在.net的使用 JS函数验证总结 - 9who - 博客园 petshop4.0 各个文件的作用 如何构造一个C#语言的爬虫蜘蛛程序 ASP.NET26个常用性能优化方法 CSS基本布局16例 CSS命名规范(建议版) web布局最实用的12条css技巧 SQL2005数据库转换到SQL2000 SQL2005示例数据库|AdventureWorks下载安装|NORTHWND下载安装|PUBS下载安装 (转)Ext与.NET超完美整合 .NET开发者的超级优势 C#与OOP之 接口 C#中面向对象的OOP概念 ASP.NET常用到的js通用函数 c#代码可以做成dll来使用 ASP.NET 脚本侵入概述
我的几个.NET编程习惯
9who · 2008-08-08 · via 博客园 - 9who

类:

1、类属性的命名以单词第一个字母大写开始,类的私有变量以下划线加单词第一个字母小写开始。这样的话我们在方法中传递参数的时候,参数变量就可以命名成以单词第一个字母小写开始,调用的时候很容易明白其含义,而且不会和类的私有成员冲突。

2、 除了控件的命名,变量命名的方法不再使用匈牙利命名法,而为变量使用一个更具有代表意义的名字。控件变量前适当的加入小写缩写可以有效的区分控件的类型。

3、 所有的类、方法和属性都做了XML注释。这种注释可以在类或方法等声明的前一行输入“///”自动生成注释格式,做类库程序的时候可以通过类库属性,生成里选择“XML 文档文件”,为项目指定输出XML注释的文档路径,并且利用 Sandcastle 为类库生成文档。

4、 尽量将一些常用的功能模块封装成类,并做成不同的类库,生成XML注释稳当,生成CHM格式的文档。这样下次用的时候就不必到处找这个模块了,只要引用相应的程序集就好了,而且.NET IDE 在你调用类库中的类时还能为你读取XML注释,实在忘记了还能看看 CHM 文档。日积月累这些DLL将成为你一笔很大的财富。

 这点可以参照我收集的类库 :点击 访问

执行效率:

 1、for 和 foreach 我更喜欢for。用 foreach 编写的代码块反编译成IL后会发现其中加入了try块,而且很容易看出来效率要比for稍低。

2、 不再使用“+” 号来连接多个字符串,而是采用 StringBuilder 的 Append 方法,这样会提高效率。关于这个问题读者可以参考一下与.NET 装相相关的文章。

3.虽然 DataSet 很好用,但是我不喜欢用 DataSet。ADO.NET 隐藏了一个令人讨厌的秘密:这个了不起的新技术对所有的分布式应用程序都不适用。DataSet 很大,用的不好可能会导致系统变慢,而且很容易产生并发冲突。能用DataReader 就不用DataSet。

在这里说一下 DataSet和DataReader 区别

使用   SqlDataReader   获得快进只读数据游标:    
  SqlDataReader   对象对从   SQL   数据库中检索的数据提供前进只读游标。  
  如果   SqlDataReader   适合于您的情况,则它是一个比   DataSet   更好的选择。  
  因为   SqlDataReader   支持   IEnumerable   接口,甚至还可以绑定服务器控件。

DataSet是一次把数据全取出来放在内存中,   DataReader只能一次次地读取数据,   方便读取少量数据时使用。

4.对需要释放资源的类要实现 IDispose 接口,并使用 using 语句块来访问资源,这样的话有利于垃圾回收。

我喜欢用DataReader,不喜欢将访问数据库类的方法都写成静态的。虽然适当的使用静态方法能够提高程序的运行效率,但是为了避免忘记关闭数据库带来的不必要的麻烦,我还是选择了实现IDispose接口并使用using 块访问数据库的方法。