摘要:
短小: 函数的第一规则是短小,第二规则还是短小, 很明显作者将短小放到第一个列出来的位置。说明对于函数而言,短小的重要性不言而喻。 可是函数多少行才算短小呢? 代码大全上说一个函数理论上应该小于50行,我认为这个数字有点大了,我比较同意Bob的看法,”20行左右的代码为佳” 代码块和缩进: 代码块和缩进的规则很多,不过有很多格式化工具可以为我们做这种事情, 比如在vs2010中,就可以ctrl+ A(全选) ,Ctrl+K+F(格式化) 只做一件事: 函数应该只做一件事,做好这件事,只做一件事。 基本上这点大家都知道,如果一个函数做了多个事就代表有多... 阅读全文
摘要:
最近在看Clean-Code(代码整洁之道) 里面有些内容还是不错的,所以给大家分享下。 名副其实: 意思是说名称和意思要一致,更精确的说应该是看到名字就能想到意思。 对程序员来说取名通常是一件麻烦的事情,尤其是取一个好的名字。 这里截取一段书中的代码: public List<int[]> GetThem(){ List<int[]> list1 = new List<int[]>(); for(int[] x in theList) { if(x[0]==4) list1.Add(x); } r... 阅读全文
摘要:
目标效果: 首先要创建Html页面: 页面总共由8大块div 构成。 按照从左到右,从上到下的原则来分的 1:divWholeScreen 2:divPageBox 3:divTitle 4:divOuterUpperLeft 5:divOuterUpperRight 6:divOuterLowerLeft 7:divOuterLowerRight 8:divContent Html代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/... 阅读全文
摘要:
在CodeProject上面看到一片文章: Hall of shame 觉得挺有意思的,以下是糟糕的代码合集,请大家慢慢品尝。 1:那是一片丛林 我正在重构一个写的很可怕的程序,以吨来计算的重复代码,大量无效的代码(30%-50%),然而我最个人最”钟爱”的是下面的这个方法:public void Some_Method(){ try { } catch (Exception x) { LogException(x); }}不管是幸运还是不幸,这个方法从来就没被调用过,但是我非常高兴看到catch语句。。万一空的try抛了异常那该怎么办呢?2:if not null, return value 阅读全文
摘要:
打开小洋的博客文章,例如IT草根的江湖路之二:改变,破釜沉舟的斗争 可以看到右下角: 打开自己的一篇文章:例如:完全详解--使用Resource实现多语言的支持 可以看到: 效果反差还是比较大的。 首先博客园是可以自己写CSS的,在 下面的通过CSS定制页面风格里面可以输入自定义的css代码。 原理:找到控制”推荐一下的”div是哪一个,然后设置它的css 在这里我... 阅读全文
摘要:
首先要说明的是连接数是有限制的: 代码如下: 运行结果如下: 过一会就会提示打开连接超时了: 可以看到数据库连接时有限制的,如果连接不关闭,而且使用的人比较多,那么系统很快就down掉了。 但是有时候由于某些原因应用程序可能只是几个人使用,所以就有人设计了:在应用程序启动的时候打开数据库连接,在应用程序关闭的时候关闭数据库连接那么使用这种方式有什么问题呢?首先假设有一张表Nums,表定义如下:... 阅读全文
摘要:
首先为假设有一个应用程序CAStudy,接着右键添加一个资源文件Resource1.resx。 Resource1.resx里面如下: Main函数如下: static void Main(){ ResourceManager resourceManager = new ResourceManager( "CAStudy.Resource1", Assembly.GetExecutingAssembly()); Console.WriteLine("String1 : " + resourceManager.GetString("String1 阅读全文
摘要:
假设我们有一个类:Product public class Product{ public string Id { get; set; } public string Name { get; set; }}Main函数如下:static void Main(){ List<Product> products = new List<Product>() { new Product(){ Id="1", Name="n1"}, new Product(){ Id="1", Name="n2"}, 阅读全文
摘要:
装配脑袋的习题在这里:Expression Tree上手指南 (一) 不了解Expression Tree的同学可以去看下,很好,很强大。1: -a2: a + b * 2我把这些问题都弄成了方法,分别是Question1,Question2,….QuestionX第一题:-a因为实在是太短了,我不明白是什么意思,姑且认为是做取反操作吧,也就是假如输入是5,那么输出是-5.如果让你写lambda表达式,估计没几个人写不出来吧:(a)=>{return –a;}当然你可以简短点:(a)=>{-a}OK,看一看lambda表达式:(a)=>{return –a;},可以知道有一个 阅读全文
摘要:
原理:使用Popup控件,并且设置Popup控件的位置居中。1:新建自定义控件PopupBorder,作为Popup的child。代码如下:<UserControl x:Class="SLStudy.PopupBorder" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.micr 阅读全文