摘要:修行Python个把星期,终于有点成果了,呵呵,一个利用metaclass实现的aop
阅读全文
摘要:看过《朝花夕拾:代码生成器的基础——获取数据源的架构信息》一文,感觉,方法正确但是点到即止,没有完全说透,所以来个补全版。经验之谈,欢迎拍砖
阅读全文
摘要:写此文纯粹为了回复.NET不死,为什么企业招聘都要java? 一文。从01年以来,.NET从最初的2000beta2一路凯歌猛进到了2008,Framework从1.0一下子跃进到了3.5,从3.5以来 wpf,wcf,wwf,Linq,ASP.NET MVC,我们的感觉是.NET很好很强大,什么都有。但是.NET的程序员怎么就越来越不值钱了呢?很简单的对比,在我原来所在的一个公司里,有java 的项目也有.NET的项目,做Java的程序员待遇普遍比做.NET的高出一大截。就程序员本质来说其实并没有多大的区别,那么问题就只能在.NET本身上头来找,所以就有了本文:Why .NET Sucks?
阅读全文
摘要:其实不想再啰嗦这个问题,但是要回答的东西很多,所以还是另起贴回复了。之前从很多方面来解释了分层,但是对于实体类这个家伙由于是一个一根棒子捅到底的异类,所以引起金同学的疑问,由于涉及到我的另一篇post,所以不得不作出几点说明。
阅读全文
摘要:2000年以来,这是一个xml大行其道的年代。xml无所不能,我们如同崇拜x战警的强悍战斗力一般崇拜这个x开头的万能者。我们用它来传输数据(soap),定义数据(xsd),存储数据(xml数据库),配置文件(web.config或者web.xml),做网页(xhtml)...... 换一句二战的名言:如果xml能够做饭我就娶她做老婆。
但是神话就是用来打破的。现在是到了打破这个顶在x字头顶上的光圈了。
why xml sucks?
阅读全文
摘要:人性是懒惰的,程序员尤其如此。再懒惰的人为了让自己过得更舒服,偶尔也会很勤快,程序员还是如此。我是一个懒人,所以赞同金色海洋同学的同学都是懒人。无可否认,对于懒人来说,极大降低重复工作量的方案无疑是充满了诱惑的。所以在极大的诱惑下我花了很长的时间来思考了一下关于快速开发的问题。毫无疑问 VS.NET工具本身就是一个非常优秀的快速开发的系统(比起java来说确实要快速很多),但是对于懒惰的我们来说却是不够的。而且在多层架构下要快速开发使用VS.NET还是会产生很多重复的代码。这对于懒惰的我们来说是极其要命的。所以我们不顾一切的想要去解决这个问题。
阅读全文
摘要:看过金同学的【超级传送带】这篇Post及其里面的Reply,我又要深有所感,于是有话不得不发了。对系统设计来说之前我也说过没有一定之规,不通的系统设计的前提和背景有所区别,那么设计的方式有可能南辕北辙。就算是围绕数据库,以数据为核心的系统也会因为设计的出发点不通而产生很多相反的看法。那么我还是首先设定本次讨论的前提:一个以数据库为存储手段,以数据为核心的应用程序,比如说一个电子商务系统(又比如NewEgg,不要误会,我不在 NewEgg工作,只是有所了解)。
阅读全文
摘要:看过赵俊同学的《三层架构,我为什么对你越来越迷茫了》深有所感,遂作此文以和之。
阅读全文
摘要:看到很多社区的小组里头有人在讨论大型网站的架构问题,发觉这几年虽然没搞出个新浪百度出来,但是在大型系统的架构上还是有点心得,遂鬼吹一把,来谈谈大型网站的架构设计。
首先我们要明白什么算是大型网站,大型的网站有多大才叫大型?新浪、百度还是Google这般巨大?是用户数量很多,还是业务量很大。这里又分是社区类网站还是新闻类还是电子商务类的网站。
阅读全文
摘要:首先我们的讨论范围是针对基于数据库的应用设计,还有很多应用不会基于数据库来实现那就暂时不在我们的讨论范围内,
在之前对分层设计的讨论中,金色海洋同学觉得分层没有解决数据库的表字段改动造成的各个层次代码的变动问题,那么
我就以系统的变与不变做题来回答这个疑问。
阅读全文
摘要:今天姜同学发表了http://www.cnblogs.com/ASPNET2008/archive/2008/08/13/1266942.html
这篇POST表达了对通过分层设计的概念无法解决系统耦合的问题。在之后andytao同学回复了对姜敏朋友的回复 一文作为回应
我在看回复的时候感觉说得不太透,所以忍不住发此文从另外一个角度来试着为姜同学做一次解答。
首先是从姜同学的疑虑开始。姜同学对分层主要是担心增加了工作量缺起不到消除系统耦合的目的。所以我们首先就来谈谈耦合。
阅读全文
摘要:说了半天看来还是没说明白,估计是长时间不写博语言组织能力退化了。其实要说的很简单,用了那么多模板引擎(为了赶项目自己还写过一个)结果到头来我发现自己在做一件很蠢的事情。让模板引擎支持判断,循环,分支,不同的强化出各种不同的标签,标签越来越像asp.net的控件标签,API越来越复杂。也许最后一回头发现我们实现了一个asp.net老早就已经存在的东西。那为什么我们不现在直接就拿来用了?
以下我将分几个部分来说明我的观点,再次重申,我不是说不用模板引擎,我的观点是aspx文件本身就是最好的模板引擎了,至于如何用,我后面会给出一个我自己用的一种方式,当然你也可以总结出你自己的:
阅读全文
摘要:此文完全有感而发,在网上看到很多介绍各类模板引擎的文章,但是我却越来越感觉到很多时候我们所做的事
情是在舍近求远。
阅读全文
摘要:拉山的雪 - 啥也不说 - 直接看图平乐古镇的腊肉 发现第一只大熊猫的宝兴县 东拉山口 明镜海 很漂亮的水哇 一起来一张 亲一个再来一回 雪地里的一抹红 红裙 斗牛士 雪桥 飞瀑1 飞瀑2 一地雪 玩水 love 雪花 瀑布边 雪人
阅读全文
摘要:这段时间确实遇到一个很有意思的问题。众所周知,Codereview是配置管理过程当中一个相当重要的过程,对于提高代码质量来说有着相当重要的作用。上个月开始公司的过程改进已经推进到了配置管理中的CodeReview这个阶段。对此我首先是考察了各种语言下的静态代码分析软件。因为公司所用的语言比较杂,所以为了照顾大多数,C,C++有老牌的PC-lint。java下有CheckStyle。但是C#找来找去就找到了个FxCop
阅读全文
摘要:请DuDu允许我放半天首页,以期有在微软工作的大能放出StyleCop的下载的Url。此工具据称是微软内部使用,因为在MsBuild里找到了她的芳踪,但是到处都找不到下载。所以又在微软工作的大贤,请帮忙放出这个工具。我们需要的是Source Code 的Check工具,而不是Assembly的Check工具。FxCop是很大能,但是对我们并不适用。如果大家对配置管理和代码规范以及CodeRevie...
阅读全文
摘要:早上在用StringTemplate转化一个html文件的时候出错,转换出来一片空白,后来仔细一看,原来文件里引入了jQuery.jQuery使用了$而StringTemplate也使用了$作为关键字来定位变量,结果二位大神打架,我就遭了殃。我并没有去仔细研究StringTemplate的源代码,但是用一个单个关键字作为定位的依据却是有点说不过去,这样你的模板里绝对不能出现$(专跟钱过不去)这一点...
阅读全文
摘要:之前发过一篇《混乱的MVC,.NET非要MVC不可么?》的Post,其后纷争不断。又有之前的《为什么要使用MonoRail?》和其后的《MonoRail和WebForm,谁是瑞士军刀》等关于MVC和WebForm的讨论。其实最大的感受就是在.NET社区的人大多比较保守,宁愿跟着党走,WebForm的WebForm,MonoRails的MonoRails,而开源社区的思维就活跃多了,可以说是百花齐放...
阅读全文
摘要:此文写给所有还在迷茫中的初学者并欢迎高手进来讨论。
首先什么是Web编程模型?在这里我们定义Web编程模型为如何编写代码生成html返回给最终用户的方法。它包括两部分,一个是如何编写Web应用程序的规范,另一个则是实现这一规范的Web编程框架,而ASP.NET就是用来实现WebForm模型的框架,当然ASP.NET的功能比较强大,留下了足够的空间,足够我们在此基础之上实现另外的模型,比如MonoRails。换个比方,和ASP.NET比较类似的,Jsp,Servlet也是实现Web编程模型的基础结构,Sun所定义的Jsp2.0规范定义了一个如何编写Web应用程序的规范,当然你可能不喜欢这么做,那么你还可以使用Struts或者SpringMVC,不过换汤不换药,之不过是换了一种做法而已。
WebForm其实是一个很好的Idear。在我才接触WebForm编程的时候,当时的感触是原来Web下还能这么写程序。在WebForm模型下,我们将整个浏览器当成一个窗体来进行编程,把页面上的元素都作为控件来操作,拖放式,基于事件,不再是面条式的流程控制,一切都是那么的美好
阅读全文
摘要:星期五下班前一时兴起,对MVC发表了一点看法。后来就想干脆弄个小东西来验证一些自己的想法帮组理清思路。所要源代码的免了,3个小时的急就章实在是乱得可以,既没有好的架构,也没有任何代码质量可言,主要是实现了对MVC的一点想法。所以拿出来大家给参考一下。申明:不是典型的MVC
阅读全文