寻找银弹

致力于探寻软件开发中的本质问题

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013年3月26日

摘要: 先看代码1 double? Result = PeopleList.Sum(r => (r.Height ?? 0) / r.Width);这里, r.Height 和 r.Width 都是 double? 类型。 如果 r.Width 有为null的情况,那结果会是什么呢?再看个代码double? result = 0.0d;foreach (var r in PeopleList){ result += (r.Height ?? 0)/r.Width;}这两种表达方式看起来没什么区别。但是在VS2010 .Net 4.0 的编译环境下。 如果 r.Width有为null的情况,第.. 阅读全文
posted @ 2013-03-26 13:20 hchlee 阅读(145) 评论(0) 推荐(0) 编辑

2012年10月31日

摘要: 先看下边代码 while(progressBarTest.Value<100){System.Threading.Thread.Sleep(100);//Dispatcher.Invoke(newAction(()=>this.progressBarTest.Value+=1;//}),System.Windows.Threading.DispatcherPriority.Background);}就是UI线程进行繁忙操作的时候,会锁死UI,ProgressBar得不到更新。 而等到While循环结束以后才会一下子更新到了100. 如果把注释的两行去掉,那就会如预期一样,Progr 阅读全文
posted @ 2012-10-31 17:37 hchlee 阅读(180) 评论(0) 推荐(0) 编辑

2011年12月31日

摘要: 这个模式好像经常有人拿来谈论,我觉得理论意义比实际意义要大,所以列出三种写法,看着玩儿吧. 1. 普通写法 usingSystem;publicclassSingleton{privatestaticSingletoninstance;privateSingleton(){}publicstaticSingletonInstance{get{if(instance==null){instance=newSingleton();}returninstance;}}}优点有 1. 可以扩展, 继承个子类之类的. 2. 在需要的时候才会实例化对象. 缺点就是不是线程安全.2. 简便写法public. 阅读全文
posted @ 2011-12-31 15:57 hchlee 阅读(360) 评论(0) 推荐(0) 编辑

2011年5月6日

摘要: 1. 关于实例方法内self的使用, ObjC比较特殊. 比如下例子, self.name 实际上会访问 property name,而不是直接访问内部变量,也就是说会访问 setter/getter方法,需要注意@interfacePerson:NSObject{NSString*name;}@property(copy)NSString*name;@end@implementationPerson-(void)doSomething{name=@"Fred";//accessivardirectly!self.name=@"fred";//calls 阅读全文
posted @ 2011-05-06 09:38 hchlee 阅读(160) 评论(0) 推荐(0) 编辑

摘要: 没有特别多时间来集中看objC和iOS的书,就上下班路上看了一下Standford的课程CS193P,入门绰绰有余了。Course web site ■ http://cs193p.stanford.edu/• Other web sites■ Apple Dev Center: http://developer.apple.com/■ Developer Forums: http://devforums.apple.com/External resources:■ http://cs193p.com/■ http://groups.google.com/group/iphone-appdev 阅读全文
posted @ 2011-05-06 09:22 hchlee 阅读(416) 评论(0) 推荐(0) 编辑

2010年9月25日

摘要: 最近在解决一个数据库死锁的问题,按说数据库死锁依靠强大的数据库自身的探查功能很容易找到发生位置从而进行分析解决。 但是最近遇到一个很奇怪的死锁案例,通过 –T 1222的switch,获得了死锁发生时候的SQL调用代码,和死锁资源情况发现造成死锁的双方都宣称获得了同一个资源的X锁,并且还要请求U锁,最终相互等待。经过一番探索发现这个等待的资源是表上的Cluster Index。 双方都获得了不同p... 阅读全文
posted @ 2010-09-25 13:32 hchlee 阅读(262) 评论(0) 推荐(0) 编辑

2009年4月14日

摘要: 很多时候,一个项目结束了,无论是成功的,还是失败的或者差强人意,教训总结都应该会有的。但是我总觉得在软件开发过程中,项目结束后的总结大多数都被看成了可有可无的阶段。即使像模像样的做了项目的总结,会也开了不少,总结的好的方面,需要改进的方面也都按照模板写了文档。但最后,这些活动的矛头还是指着这个已经过去的项目,因此得出的那些文档,成果只能束之高阁,无人问津。然后下一个项目同样的重复相同的问题和风险。... 阅读全文
posted @ 2009-04-14 21:54 hchlee 阅读(2440) 评论(7) 推荐(0) 编辑

2009年4月11日

摘要: 话说英孚 架构师 流程管理 系统框架 阅读全文
posted @ 2009-04-11 10:12 hchlee 阅读(359) 评论(1) 推荐(0) 编辑

2008年2月2日

摘要: 软件开发流程概要-《Head First OOA&D》读书笔记(1)满足用户期望-《Head First OOA&D》读书笔记(2)这是最后一篇了,主要就是一些很实际的面向对象的设计原则,以及一些Coding过程中需要注意的事情。这应该是程序员们最感兴趣的部分了。其实就我的观点,这部分是比较好掌握的,毕竟这些知识你看到了,实践了,也就学会了。相反对于项目初期的准备工作就很难有具体的... 阅读全文
posted @ 2008-02-02 16:57 hchlee 阅读(2642) 评论(10) 推荐(0) 编辑

摘要: 近两年一直有个疑问得不到满意的解答。最近,自己也慢慢的找到了至少让我认为正确的回答,在这里和大家探讨一下。首先说个现象,在博客园里,比较热门的文章基本都是很具体的那些技术的使用LINQ啊,WCF啊,ASP.net MVC啊这些,说明什么呢,大家都是技术的爱好者,很高兴,我也是这样。而像我之前写的两篇和开发过程相关的文章(软件开发流程概要-《HeadFirst OOA&D》读书笔记(1), ... 阅读全文
posted @ 2008-02-02 10:03 hchlee 阅读(2200) 评论(14) 推荐(0) 编辑