.Net 4.0 延迟加载:Lazy<T>
语言和模式互相促进,语言让模式实现有更多可能性,越来越多优秀的被语言实现.模式实现的责任从开发者转移到语言.延迟初始化(Lazyinitialization)已经在.Net 4.0中给出了默认实现.本文将探究其使用方法和实现方式. ...
C#语法糖(Csharp Syntactic sugar)大汇总
“语法糖”这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法,编译器会帮我们做转换;而且在性能上也不会带来损失。
...
项目估算与计划不是一般的难!
估算、计划、计划跟踪是项目管理的主要工作,难度之高超乎你想象!光靠学习项目管理理论难以管好项目,而往往真能管好项目的都是那些在具体项目中滚打出来的实干人士。本文将会让你全面学习项目估算、计划、计划跟踪的知识,体验实际项目管理的难度,学到提高项目管理水平的一些方法。 ...
工作回忆总结(第三年)
上接工作回忆总结(第一年),工作回忆总结(第二年).很快到了第三年,第三年中我的工作性质一直在变化,虽然处处是救火队员,但是从个人角度讲,这段时间的锻炼是非常必要的。为我现在的工作提供了一个试验场,这也是小公司能提供给你的一种特殊环境吧!开拓眼界,是新人必需的一门课程。 合同年第二年底的时候,“..... ...
(收藏)《博客园精华集》分类索引
由于这几年一直热衷于.NET技术,但由于自己项目很忙,也许是自己很懒,所以没能写出好的博文,但养成了每天浏览博客园文章的习惯。转眼间即将扎根五年,收获颇多,但很多时候难免会浪费很多时间在闲逛上,所以找到了一些比较好的文章,这样可以供以后查阅(毕竟收藏夹不是万能,重装电脑就玩完了),也方便学习更多他人... ...
我的HTC Hero(G3)用户体验续
在文章《我的HTC Hero(G3)用户体验》中我头脑风暴了一把,我尝试思考一下具有更好用户体验的手持设备,用户体验是个无法定量的东西,需要分析用户的实际感受。(从这点来说产品需要经过大量的UX测试,快速推向市场,然后根据实际效果快速作出该进是个更好的策略。) 一个具有3D效果的界面就也许它很绚丽... ...
Silverlight游戏设计(Game Design):(十五)如果还有梦(完)
C#优异的界面处理能力配合上F#强大的并行计算特性将使得Silverlight在未来的RIA界独领风骚,这才是Silverlight超越其他所有RIA技术的最大特性:一流的开发效率和产品性能!
如果还有梦,我会继续向山的顶峰攀登,过程是痛苦的,人不经历磨难怎能长大?每个脚印都伴随着汗水,但... ...
[原创].NET 分布式架构开发实战之一 故事起源
.NET 分布式架构开发实战之一 故事起源 前言:本系列文章主要讲述一个实实在在的项目开发的过程,主要包含:提出问题,解决问题,架构设计和各个逻辑层的实现以及新问题的出现和代码的重构。本系列文章以故事的形式展开,而且文章列举的很多项目的名称,大家也不用太关心,很多都是虚拟的。 系列文章链接:[原... ...
一个Bug 差点让服务器的文件系统崩溃
昨天,公司的美国客户发邮件给我,说我的软件出问题了,我查来查去,发现居然是服务器上一个目录无法删除,一删除就报 cannot read from the source file or disk. 如果用命令行方式删除,则报 cannot find the specified path。一开始以为是... ...
程序员应知——我们不是客户
在系统开发的过程中,如何从客户那里获取正确、有效的需求,是每个团队都需要仔细考虑的问题。如果最初的需求没有明确,就开始着手开发,到最后可能会有很多东西需要修改,浪费大量的时间、精力和金钱。这件事说起来很容易,但实际做起来的时候,总会遇到各种各样的阻力,似乎在每个项目中都一样。所以,有很多人喜欢凭借之... ...
回头再说:jQuery跨域原理
《JQuery 的跨域方法 可跨新浪、腾讯、经网等任意网站》作者给出了使用jQuery中的getJSON方法实现跨域的方法;示例代码没有问题,但是作者把getJSON跨域的原理解释成:
"因为getJSON跨域的原理是把?随机变一个方法名,然后返回执行的,实现跨域响应的目的。"
这个未免草率... ...
工作回忆总结(第二年)
上接工作第一年回忆总结,时间来到了工作第二年,我在PM的帮助下拿到了令自己满意的工资,又开始加入公司正常的工作。 上文说到有一个外省市(以下称为A市)的项目在做,那个时候其实我在我PM的带领下已经逐渐的开始做设计和项目管理的工作。这就是小公司的好处:让你很快得到你想要的发展机会。我还记得那个时候..... ...
程序员应知——技术债务
债务这个词,相信大家已经都对其深有体会了,特别是像我一样作为“房奴”的人,每个月都要去银行还钱,那就是债务啊。在软件开发的过程中,我们往往也会借债,人们称之为技术债务,其实也就是为了快速地解决问题,而采取的不规范的方案。比方说把某个条件写死,再比方说采用一些捷径达到目的,而这只是特殊情况,无法应用在... ...
不要陷入自己挖的坑里面。分析一下所谓的发展危机
-------------------从笑话开始-------------------有个经典的笑话,我估计是一辈子都忘记不了了(先声明,与政治无关,仅笑话。)苏联的优势在哪里?在于解决了其他制度不存在的问题。这个笑话的意思就是:不要陷入自己挖的坑里面。但是最近我却发现,当事业发展到一定程度,非常容... ...
Memcache and Mongodb
先说说自己对Memcache和Mongodb的一些看法,主要是抛砖引玉了,希望看到大家的意见和补充。 Memcache Memcache的优势我觉得总结下来主要体现在: 1) 分布... ...
高性能WEB开发(11) - flush让页面分块,逐步呈现
在处理比较耗时的请求的时候,我们总希望先让用户先看到部分内容,让用户知道系统正在进行处理,而不是无响应。一般大家在处理这种情况,都使用ajax,先把html输出到客户端,然后再用ajax取加载比较耗时的资源。用ajax麻烦的地方是增加了请求数,而且需要写额外的js代码、和js调用的请求接口。
... ...
工作回忆总结(第一年)
吃完晚饭,接到一个朋友的电话:大意是要来上海工作,让我帮忙了解一下行情。我就去51job上逛了一圈;想到自己的简历也是放在那边n久都没动过了,就去点了一下。我倒是没去更新我的简历信息,只是当看到简历上的工作经历和项目经验时,真是感叹时光飞逝,往事如烟啊。一转眼到现在的公司都超过一年了... ...
手工製Coded UI Test(Visual Studio 2010新的UI自動化測試)
在Visual Studio 2010測試專案中,多了很多測試項目,而其中之一的Coded UI Test是用來以代碼的方式做自動化使用者介面測試,剛開始我以為只能用錄製然後產生代碼,雖然錄製的很方便,不過如果事後要修改非常的麻煩,而且產生的Code非常的多,要刪除一個不要的測試,完全無從下手,後來... ...
HTTP协议及其POST与GET操作差异 & C#中如何使用POST、GET等
引言 HTTP协议我想任何IT人士都耳熟能详了,大家都能说出个所以然来。但是如果我问你HTTP协议的请求方法有哪些?POST与GET的差异?GET或POST传送数据量的大小有限制吗?HTTP响应的状态有哪些?以及在C#中你如何使用?如果你不能清楚地回答其中的大部分问题,那么这篇文章就是为你准备的!大... ...
Silverlight游戏设计(Game Design):(十三)帝国时代II (Demo) 之 “战争艺术”②
帝国时代是一部阐述世界战争发展史的游戏巨著,讲究还原真实的历史战争场景,其中的阵型系统为游戏的极大亮点之一;玩家根据兵种的不同搭配上最合适的阵型时常能起到逆转乾坤的神效,经典的如前枪,中骑,后投石,强大的阵型加上玩家精确的微操能瞬间扫荡大规模敌军而毫发不伤。阵型系统不仅仅存在于即时战略游戏中,在《三... ...