摘要:
Metadata描述了静态的结构,而IL阐释了动态的执行,这一静一动承载了太多的技术奥秘。
终于到了,说说元数据和IL在JIT编译时的角色了,虽然两个回合的铺垫未免铺张,但是却丝毫不为过,因为只有充分的认知才有足够的体会,技术也是如此。那么,我们就开始沿着方法调用的轨迹,追随元数据和IL在那个神秘瞬间所贡献的力量吧。 阅读全文
摘要:
Azure、Mesh、Live和DataService,已经随着微软云计算的高调面世接踵而来。不管对于云计算,我们身处云里,还是雾中,不管我们接受还是回避,他们还是一如既往的来了。在Azure Services Platform支撑的整个大家族中,Live Mesh始终是诟病最多的一个,大部分的意见认为Mesh最多算作一个不错的网络存储,不至于和云计算这个神圣的概念扯上干系,就像我自己一样当部分时间里,Mesh都是作为几个互连设备的存储平台,为文件共享带来方便。
然而,事实并非如此,我们看到的只是Mesh的一个方面,而它的神秘面纱随着Live Framework CTP的推出而具有了更“云”的特性,难道Mesh只是个网络存储,本文中我们提供一个Silverlight Mesh-enabled Web Application应用,把超酷的Silverlight部署在Mesh中,感受真正的Live Mesh。
我们开始。 阅读全文
摘要:
很早就有说说Metadata(元数据)和IL(中间语言)的想法了,一直在这篇开始才算脚踏实地的对这两个阶级兄弟投去些细关怀,虽然来得没有《第一回:恩怨情仇:is和as》那么迅速,但是Metadata和IL却是绝对重量级的内容,值得我们在任何时间关注,本文就是开始。
书接上回[第二十四回:认识元数据和IL(上)],我们对PE文件、程序集、托管模块,这些概念与元数据、IL的关系进行了必要的铺垫,同时顺便熟悉了以ILDASM工具进行反编译的基本方法认知,下面是时候来了解什么是元数据,什么是IL这个话题了,我们继续。 阅读全文
摘要:
你可曾想到,我们的C#代码,编译之后究竟为何物?你可曾认知,我们的可执行程序,运行之时的轨迹究竟为哪般?那么,本文通过对Metadata(元数据)和IL(Intermediate Language, 中间语言)的认识开始,来逐步给出答案。在这个探索轨迹上,元数据、IL、程序集、程序域、JIT、虚分派、方法表和托管堆这些形形色色的神秘嘉宾将在某个时刻不期而遇,作为你必须知道的.NET 系列2.0版本的一部分,本文首先从认识元数据和IL这两位重量级选手开始,而其他的嘉宾也将很快登场。 阅读全文
摘要:
本文以REST为主线,将WCF REST相关的概念进行了一一梳理,并在理论的基础上创建实例化应用,以实际的服务提供、客户消费方式对Silverlight中实现REST通信进行了探讨,希望本文能提供一个较为全面的铺垫,为我们畅快淋漓的感受Silverlight做好基础上的准备。例如,在此基础上我们可以很容易的对Flickr REST服务进行访问,以Silverlight方式加载自己的图片管理。 阅读全文
摘要:
REST是个好东西,具有诸多的优点值得拿来分享,在WEB更加开放的今天,尽管我们不能否认SOAP在客户端-服务器交互中的大放异彩,但同样也不能抹杀其他技术带来的独特风景和魅力,REST就是其中之一。同时,作为.NET 3.5中WCF框架的重量级飞跃,基于WCF的RESTful服务也让习惯了.NET平台的追随者看到曙光,那么本文的目的正是在上述技术的基础上通过Silverlight视角来消费崭新的REST服务,带领大家体验一下RESTful在Silverlight中的应用。 阅读全文
摘要:
2009年2月15日下午1:30,Jeffery Richter来北京喽。对于技术社区的人而言,正像Jeffery调侃的那样,“听说有很多的Fans”,确实是如此,我就是其中的铁杆粉丝。所以,对于如此盛会,我想无论如何也要珍惜这宝贵的机会,和大师来一次最近距离的接触。本次活动是Jeffery受邀来中国参加一系列活动的第一场,在北京有近百人参加了这一盛会,我想大家的感受和激动是溢于言表的。
Jeffery是个亲切而可爱的人,来会的每个人都有幸得到Jeffery的签名,他也非常乐意和每个人合照留影,并且摆出很多好玩的Pose,让一个下午的技术会议变得异常快乐。作为国际魔术师协会的会员,虽然没有领略Jeffery来一次近景纸牌魔术表演,但是他的技术演讲《Building Responsive and Scalable Applications》同样精彩,也留给我们很多的问答机会。哈哈,我也没有错过这种直接对话的机会,两个问题虽然简单但是足以给我一点思考。会后我也专程找大师要来签名,更重要的是,Jeffery不介意任何技术细节的盘问,我也在繁忙的会场找到Jeffery亲自指导了内存部分的 阅读全文
摘要:
汇集我在ITPub论坛问答,将问题和答案以留言的形式不定时更新,你也可以随时提出自己的问题,我会尽力作答:-) 阅读全文
摘要:
本地化是Silverlight应用或多或少要面临的问题,然而,Silverlight 2对本地化的支持还存在或多或少的问题。以至于,我们不能完全实现类似于在Asp .NET应用中的本地化策略和方案,因此本文的目标是探索Silverlight应用中的本地化实现方法,及其过程。当然,我们也会顺便期望下一个Silverlight版本对多语言支持应有的改善。废话少说,我们开始。 阅读全文
摘要:
Silverlight实在是带给我们很多的惊喜和收获,作为2009年的目标之一(详见我的2008,专注而行),未来的日子我就将与银光相伴,玩玩Silverlight这个超酷感受的技术精灵。
作为[玩转Silverlight]开篇的系列,本文开始将Silverlight的体验和学习做以系列报道,作为系列文章我将从以下几个方面着手记录:
基础篇,讲述技术基础,例如本篇分析与HttpHandler通信的实现细节;
深入篇,讲述技术本质,解开应用和基础谜团,例如DependencyProperty、CrossDomain Policy以及CoreCLR等相关深入内容;
应用篇,以例讲理,通过小实例分享大技术;
翻译篇,翻译国外优秀的Silverlight技术贴,师夷长技以制夷;
推荐篇,推荐好的系列,推荐好的作品,推荐好的文章。
阅读全文
摘要:
软件设计始终是我认为从事Coding必须关注的内容,在[第一回:设计,应该多一点]和[第二十回:学习方法论]两篇文章中就对此进行过一些探讨,收到很多园友的共鸣,看来英雄所见略同。而作为研究软件设计的技术书籍,是我们可想到的最简单的入门法宝,事实上设计领域的著作不乏经典,随手拈来就有几本必读经典值得推荐:
Head First Design Patterns
设计模式-可复用面向对象软件的基础
Refactoring: Improving the Design of Existing Code
敏捷软件开发:原则、模式与实践,对于设计原则 阅读全文
摘要:
气象更新,总有小结。多事之秋,随着寒风而过,虽有很多记忆难眠,但未来还在挺进。对2008做个小结,就像一本年历到了该翻过的时候,应该擦擦干净为来年打个好头。2008,对国家和世界来说,都无疑是一个多事之年,这已无须一届书生多言,留在心里的记忆应该是永恒的。千言万语,唯有祝福在此,擦亮双眼继续技术之路的多味人生。 阅读全文
摘要:
今天你使用Visual Studio了吗?当然,如果你是铁杆的.NET开发者,那么这句问候简直是多余的,在.NET世界里我们有幸能使用超酷的Visual Studio工具,为每天的编程生活增添了无限乐趣。工欲善其事必先利其器,Visual Studio已经足够好了,未来的2010版还会有很多激动人心的feature。
然而,你了解真正的Visual Studio了吗?你知道为什么Visual Studio的可执行文件被定义为devenv.exe而不是visualstudio.exe吗?你了解最新的Visual Studio有哪些超酷的快捷方式吗?你如果正确的使用这一工具来提高自己的生产力?你如果是否认识Visual Studio中一个个功能强大的工具?
带着这些技巧,花边新闻,还有无限的使用体验,来认识更多的使用体验,让你每天的Coding更High起来,Anytao特别推荐一本值得你饭后欣赏的新书《Microsoft Visual Studio Tips: 251 Ways to improve your productivity》。
阅读全文
摘要:
你可能没有听过OXite,但你是否听过 Channel 9 、 Channel 8、 Channel 10、 TechNet Edge、 Mix Online,显然OXite就是这些网站的后台发动机。Mix Online,你就能在Mix首页看到对Oxite的导航。确切的说,Oxite是微软的开源博客内容管理系统,基于ASP .NET MVC架构,正如其团队在Codeplex上的阐述一样,Oxite是为了以下目标而生的:
提供一个Blog范例,除了Blog的基本功能,你还可以了解到Trackback,rss,comment这些基本模块的实现,当然这些东西可以在其他开源项目中了解,但是Oxite至少提供了可以对比借鉴的可能:-)
提供一个现实世界的MVC架构范例。
阅读全文
摘要:
因为,我们人类是最善于搞关系的动物,所以原本可以简单的理论,在人类的意识哲学中变得复杂而多变,以至于我们本应简单的道理变得如此复杂,这就是依赖。那么,从依赖讲起来了解依赖倒置原则,我觉得首先应该回到以下的问题:
* 控制反转、依赖倒置、依赖注入这些概念,你认识但是否熟悉?
* Unity、ObjectBuilder、Castle这些容器,你相识但是否相知?
* 面向接口、面向抽象、开放封闭,这些思想,你了解但是否了然?
带着对这些问题的思考和思索,Anytao带领大家就依赖这个话题开始一次循序渐进的面向对象之旅,以解答这些从一开始就有足够吸引力的问题,从原理到实例,从关系到异同,我期待这篇文章能带来一些认知的变革。 阅读全文
摘要:
一本好书碰撞一种思想,一部佳作影响一个时代。软件领域同样如此,我不想细枝末节似的讨论佳作对于技术的影响,这一点是毋庸置疑的。作为设计话题,历史上的著述不乏经典之作,GoF的《Design Patterns: Elements of Reusable Object-Oriented Software》、BoB大叔的《敏捷软件开发:原则、模式与实践》以及Martin Fowler的《企业应用架构模式》和《重构》都是经典中的经典。而今天,我想分享的一本好书,同样关注的是关于架构和设计的故事,他的名字是:Microsoft .NET: Architecting Applications for the Enterprise。
所以,本身关注的是基于.NET平台下,对于企业级应用的架构和设计问题。
阅读全文
摘要:
2008年的4月之初,《你必须知道的.NET》一书在历经近1年的耕耘之后上市,2008年9月刚过,《你必须知道的.NET》在国庆之后第二次印刷。历经5月销售第一次印刷的所有5000册,在平淡无奇的技术图书市场,我这个新生算是交了一份合格的答卷。这一切还得感谢园子中的朋友们,一如既往的支持和关注。作为作者,怀揣着技术的梦想来展望技术的未来,是我在重印之际的一点感受,作为习惯性动作,这个小结比以往来得晚一些,但是仍然任重道远。 阅读全文
摘要:
在上篇《第一回:认识Azure Services Platform》一文中,我带着TechEd
的兴奋之情将Azure Service做了一个概要性的介绍,因为没有申请到
Invitation Token,所以只能掩饰饥渴的冲动,把完成第一个云端应用的重任
留到了第二回。就是历史上所有讲述编程语言的著作以Hello,world开篇一样
,本文也不例外的从Hello,Cloud!这一传统开始,实现一个运行在云端服务
的Web应用。让我们品尝一下,漫步云端的快感吧:-) 阅读全文
摘要:
今天是TechEd 2008北京站的第一天,作为技术盛会自然少不了很多抢眼的新技术面向广大的技术开发者。虚拟化、SQL Server、NUI、云计算,还有很多很多,每个人都充满了惊叹和期待,只有在那一刻,我们才感觉到技术带给世界的诸多魅力,也同时深味作为技术开发者的自豪。我们虽然常常抱怨于技术跟进的光速,需要不断的充实和创新,我们也同时幸福于技术进度的革命,让世界更多姿彩。
毋庸置疑的是,未来的时代,Azure将不可获缺,它带来的想象空间已经足以让我们为未来喝彩。
所以,未来我将持续关注Azure的所有动向,并第一时间分享所有的新知。 阅读全文
摘要:
今天Artech兄在《关于Type Initializer和 BeforeFieldInit的问题,看看大家能否给出正确的解释》一文中让我们认识了一个关于类型构造器调用执行的有趣示例,其中也相应提出了一些关于beforefieldinit对于类型构造器调用时机的探讨,对于我们很好的理解类型构造器给出了一个很好的应用实践体验。
认识类型构造器,认识beforefieldinit,更深入关注CLR执行机理,品 阅读全文