代码改变世界

ASP.NET AJAX 4.0 Preview 3 (Part 2 - ASP.NET AJAX Template)

2009-03-14 10:43 by Cat Chen, 4712 阅读, 0 推荐, 收藏, 编辑
摘要:在上一篇文章里,我们说到了如何使用ADO.NET Data Service Client Library能够轻松访问到存在服务器端的数据,然而将数据展现出来仍需要人手拼接HTML这点就实在是让人难以接受,所以我们现在就来看看如何利用ASP.NET AJAX Template解决这个问题。文章中所用到的示例代码,可以在这里下载:ASP.NET AJAX 4.0 Preview 3 Demo,然后参考... 阅读全文

ASP.NET AJAX 4.0 Preview 3 (Part 1 - ADO.NET Data Service Client Library)

2009-03-11 00:18 by Cat Chen, 4116 阅读, 0 推荐, 收藏, 编辑
摘要:自从Microsoft与jQuery合作以来,ASP.NET AJAX与jQuery就被定位为两个互补的AJAX库。既然jQuery已经实现了如此多轻量级的AJAX特性,自然ASP.NET AJAX会继续专注于富客户端所需的一些重量级特性。 在ASP.NET AJAX 4.0 Preview 3里面,开发人员能够接触到的两个重要的新特性就是ADO.NET Data Service Client L... 阅读全文

假如你愿意以原版或影印版价格购买翻译书籍的话

2008-12-12 12:00 by Cat Chen, 5607 阅读, 2 推荐, 收藏, 编辑
摘要:这篇文章是接着Tony Qu的《批“觉得有必要记一下的东西——关于翻译”一文》写的,就讨论一个问题——你原意以原版或影印版的价格购买翻译书籍吗?为什么问这个问题?这源自Tony Qu批判的原文中的一句话:很多国内程序员看书就只看英文原版,开发就只用原版VS,就是这个原因。我承认,在英语能力相当的程序员当中,这句话说的是事实。能... 阅读全文

SD2C 2008

2008-12-08 00:01 by Cat Chen, 3457 阅读, 0 推荐, 收藏, 编辑
摘要:这几天参加了SD2C,也就是“软件开发2.0技术大会”。规矩当然是照旧的,social第一,session第二。 Day 1 第一天想着12:00开始签到,于是慢吞吞地准备出发,去到九华山庄已经是11:00。这是我第一次在没有车接送的前提下一个人跑来九华山庄,路上浪费了不少时间。签到后开始乱逛,然后陆续找到了公司不同部门来的同事,发现大家都没吃午餐。虽然我自己从McDona... 阅读全文

WinHEC 2008 China

2008-12-03 20:28 by Cat Chen, 3778 阅读, 0 推荐, 收藏, 编辑
摘要:今天是WinHEC第一天。WinHEC就是Windows Hardware Engineering Conference,中文名是做Windows硬件工程大会。昨晚紫柔告诉我9:00到场签到就可以了,因为9:30正式开始,但我早上还是忍不住多睡了一会儿,所以10:00才到场。当时还是张亚勤的演讲,我进入主会场后迅速找到剩余的几个空位坐下来了。张亚勤的演讲当然紧接着若干个demo,其中Surface... 阅读全文

《Introducing Microsoft Silverlight 2》书评

2008-11-23 21:54 by Cat Chen, 2626 阅读, 0 推荐, 收藏, 编辑
摘要:和上次的《Microsoft SQL Server 2005: 数据库基础由入门到精通》书评一样,同样是MVP的书评活动。 这本书适合什么人看?适合好像我这样的,对Silverlight 2感兴趣但是又不知道从何入手的人。整本书非常完整地覆盖到Silverlight每一个技术细节,当然这是Microsoft Press的习惯做法了。如果你想用Silverlight 2来做点什么,却发现开发过程中困... 阅读全文

软件安装时到底是否应该让用户选择路径

2008-11-04 00:38 by Cat Chen, 5864 阅读, 0 推荐, 收藏, 编辑
摘要:周末和Google UX Team的Junyu聊天,说到Google现在统一使用Google Installer安装软件了,点一下Web上面的链接就自动开始下载安装并运行,开头我还以为是Microsoft的ClickOnce呢。由于安装过程是全自动的,就如同Microsoft的ClickOnce和Adobe的AIR一样,所以是不允许用户选择安装路径的。到底不让用户选择安装目标好不好?我们认为用户分... 阅读全文

以服务器端为中心的 ASP.NET AJAX 模式 (Part 2 - Control)

2008-10-30 00:50 by Cat Chen, 4813 阅读, 0 推荐, 收藏, 编辑
摘要:在上一篇文章当中,也就是《以服务器端为中心的 ASP.NET AJAX 模式 (Part 1 - Behavior)》,我们探讨了较为易用的Behavior模式。之所以说它较为易用,是因为它不涉及和原有Page处理流程的交互,即使访问网络也是访问独立的Web Service(包括Page上的[WebMethod]),因此和Page处理流程的设计绝对是正交的。但有时候我们需要的就是与Page处理流程... 阅读全文

以服务器端为中心的 ASP.NET AJAX 模式 (Part 1 - Behavior)

2008-10-26 20:33 by Cat Chen, 4656 阅读, 0 推荐, 收藏, 编辑
摘要:早在ASP.NET AJAX从CTP转向Beta再转向RTM时,看着客户端的Control被逐步放弃,与此同时ASP.NET AJAX Control Toolkit越来越多地使用Behavior,我就想深入说说ASP.NET AJAX的模式。不过由于我比较懒,所以这个话题只在《理想的 ASP.NET AJAX (Part 2 - Server Centric)》中一笔带过,没有深入讨论。今天看到... 阅读全文

Vista 为什么要引入 UAC

2008-09-21 23:48 by Cat Chen, 5277 阅读, 0 推荐, 收藏, 编辑
摘要:UAC的目标就是:干扰用户!这其实不是我独创的,而是从TWiT上听到的一种见解。UNIX的命令行有sudo,Mac在GUI上也能够在需要sudo调用时弹出对话框要求输入密码,然而这两者的出现频率比Vista的UAC要低得多。为什么UAC的出现频率那么高呢,难道是Vista的用户体验设计得有问题?显然不是这样,Vista的UAC就是设计来不停地干扰用户的。干扰用户随之而来的是什么?就是用户觉得这个软... 阅读全文

如何动态加载 JavaScript 与 CSS

2008-09-02 23:01 by Cat Chen, 10167 阅读, 0 推荐, 收藏, 编辑
摘要:Omar AL Zabir这位MVP总是喜欢搞些稀奇古怪同时又很实用的小东西,并且还十分值得参考。最近他就做了一个叫做ensure的小工具用于动态加载JavaScript、CSS与HTML,而且IE、Firefox、Opera、Safari都支持了,那么我们就来看看ensure是如何做到动态加载JavaScript与CSS的。在介绍ensure内部的实现之前,让我们先来看看其功能:ensure({... 阅读全文

英语阅读推荐:创建Silverlight用户控件 & A*路径搜索中使用二叉堆

2008-04-07 04:07 by Cat Chen, 5210 阅读, 0 推荐, 收藏, 编辑
摘要:本期Random Clippings推荐两篇文章,一篇关于时下热门的Silverlight,而另一篇则是相对学术风格的二叉堆使用方法介绍。创建Silverlight用户控件 (Creating and Using Silverlight and WPF User Controls)Scott Guthrie的文章总是那么简单易懂,有时候还有丰富的插图,简直就如看连环画一般容易,因此作为入门级别的英... 阅读全文

救救 Web Developers ,拒绝 IE6 !

2008-04-06 16:41 by Cat Chen, 6368 阅读, 1 推荐, 收藏, 编辑
摘要:这是最近的一场于web developers相关的campaign,官方站点是SaveTheDevelopes.org。在上面你可以下载一段脚本和对应的图片,放到你自己的网站上,然后只要有用户使用IE6访问你的网站,他就会看到一个小小的提示框,建议他升级到IE7或选用其它非IE浏览器。当然,你也可以直接引用SaveTheDevelopers.org上面的脚本文件,但大家都知道潜在的风险,因此最好不... 阅读全文

讲座资源:Silverlight 2.0

2008-03-31 12:17 by Cat Chen, 3290 阅读, 0 推荐, 收藏, 编辑
摘要:这是2008年3月30日微软广州.NET俱乐部活动上Silverlight 2.0这一部分讲座的资源,包括了pptx以及演示网站(演示网站中的SilverlightDemoHost项目需要部署为http://localhost/SilverlightDemo/)。在这次的讲座上,讲的主要是Silverlight 2.0的新特性,而上次Silverlight 1.0所讲过的内容没有再次重复。不过在问... 阅读全文

深入理解 ASP.NET 动态控件 (Part 6 - 模板控件)

2008-03-26 00:39 by Cat Chen, 7636 阅读, 1 推荐, 收藏, 编辑
摘要:在之前的文章中,我极力推荐大家使用Repeater和MultiView这类TemplateControl,为什么呢?因为只有这样做,才算是符合MVP或MVC模式。(到底是MVP还是MVC,这视乎你选用什么呈现引擎了。)虽然我们要动态创建控件,但实际上这部分控件仍然属于View的部分,我们应该尽量采用ASPX的声明性名义来描述这些控件,避免用C#代码来创建控件、设置属性并添加为子控件。就拿最简单的例... 阅读全文

深入理解 ASP.NET 动态控件 (Part 5 - 编译实验)

2008-03-24 12:04 by Cat Chen, 6757 阅读, 1 推荐, 收藏, 编辑
摘要:这次的文章是一个小小的动手实验,你需要准备好Visual Studio 2005或者Visual Studio 2008,以及最新版本的Reflector。通过这次的实验,你将对ASPX与C#代码如何合并编译为一个dll代码有所理解。在实验开始之前,首先来一个小问题:如果不允许你使用ASPX,要你完全使用C#代码写一个具备复杂控件树的页面你会怎么写?把声明控件的代码都放在Page_Load里面吗?... 阅读全文

在校学生找实习、找工作、了解企业情况等等等等

2008-03-14 20:17 by Cat Chen, 7321 阅读, 1 推荐, 收藏, 编辑
摘要:因为时不时就有低年级的同学跑来问我这类问题,所以我干脆写篇文章好了。信息获取最先想到的,也是最重要的,是你想干什么,而不是你父母想你去干什么,或者哪个赚钱之类的。在计算机系里面,你总能碰到一些对这个行业没什么感觉的人,他们会说当年填报志愿的时候根本没什么喜欢不喜欢可言,于是在父母驱使下或者金钱诱惑下就报了计算机系。显然你不想犯这类错误,因此第一步是弄清楚你想要什么,或者说,有什么是你可以选择不要的... 阅读全文

使用 .NET 实现 Ajax 长连接 (Part 2 - Mutex Wait & Signal)

2008-03-08 17:21 by Cat Chen, 8862 阅读, 2 推荐, 收藏, 编辑
摘要:在上一次的文章中,我们说到了如何设计一个ASP.NET Web Service来处理长连接请求。很多人对此就提出了问题,如何hold住请求让它30秒不断开了?这其实很简单,只需要Sleep()一下就可以了:Thread.Sleep(30 * 1000);然而问题是,我们不是要等30秒然后看看是否有事件需要返回,而是在这30秒内随时有事件随时返回。因此,我们需要一套机制来在等待的过程中检查是否有事件... 阅读全文

使用 .NET 实现 Ajax 长连接 (Part 1 - Comet Web Service)

2008-02-26 17:49 by Cat Chen, 14916 阅读, 12 推荐, 收藏, 编辑
摘要:Ajax的长连接,或者有些人所说的Comet,就是指以XMLHttpRequest的方式连接服务器,连接后服务器并非即时写入相应并返回。服务器会保持连接并等待一个需要通知客户端的事件,该事件发生后马上将数据写入响应,这时候客户端就以相当“实时”的方式接收到事件通知。具体的通信模型,请参考这篇文章:《Comet:基于 HTTP 长连接的“服务器推”技术... 阅读全文

Windows 就是一个带 UI 的命令行

2008-01-10 21:22 by Cat Chen, 7582 阅读, 0 推荐, 收藏, 编辑
摘要:这是用过Mac之后对Windows的感觉。用一个对程序员来说比较友善的比喻来说,以面向过程的方式来写一大堆函数,然后再分别塞到几个类里面,这就是Windows了。而Mac是真正的面向对象思想下设计的。在Windows当中,我们貌似在操作一个“文档”、一段“文本”、一张“图片”,但实际上我们都不是在操作对象本身,而是类似于在操作... 阅读全文

编写 iPhone Friendly 的 Web 应用程序 (Part 6 - iUI)

2008-01-07 21:01 by Cat Chen, 4609 阅读, 0 推荐, 收藏, 编辑
摘要:iUI是一个针对iPhone Safari的Web开发框架,由Joe Hewitt开发。这位Joe Hewitt曾经参与过Firefox的开发,包括其中的DOM Inspector以及Firebug,后来到了Facebook,为Facebook开发了iPhone专用版本,对iPhone Web开发社区算是作出了巨大贡献。样式我们继续说iUI这个框架。这个框架所做的事情,就是提供iPhone Fri... 阅读全文

MVP on dot NET - Episode 1

2008-01-07 11:38 by Cat Chen, 4580 阅读, 0 推荐, 收藏, 编辑
摘要:主持:Bean、Jeffrey、Cat 根据PC World的统计,2007年IE7与FF的增长相当,这意味着从IE6转分别转到IE7与FF的比例为50/50。 Mac效果般的Lightbox效果 - 来自CandyBar软件首页(留意页面底部的软件截图) 纯粹用C#编写的SharpOS发布了第一个里程碑版本 - 0.0.1 NeoSmart Technologies报道,Microsoft将使用... 阅读全文

如何订阅MVP on dot NET(或其它播客) - iTunes版

2008-01-01 17:39 by Cat Chen, 3771 阅读, 0 推荐, 收藏, 编辑
摘要:如果您还不知道播客是什么,请先阅读《MVP 播客上线》中的播客介绍部分。首先,请打开iTunes。由于我是在Mac上使用iTunes,所以如果你是PC用户,您所看到的界面细节会和下面的截图略有不同。如果您还没有iTunes,但希望在iPod(包括iPhone)上收听播客,那么请先下载iTunes。然后请点击“高级”菜单下的“订购 Podcast...”... 阅读全文

MVP on dot NET - Pilot Episode

2008-01-01 12:33 by Cat Chen, 3663 阅读, 0 推荐, 收藏, 编辑
摘要:主持:Bean、Jeffrey、Cat 8 + 2 = ☺ - IE8通过了Acid2测试 gOS发布,日后我们仅仅使用Web也能生存下去吗?客户端过剩的CPU资源用来干什么? 文档都放上线!我们用Adobe SHARE还是Office Live Workspace? Linq to SQL、ADO.NET Entity Framewor,以及关于ORM的更多…… ASP.... 阅读全文

新年新服务: MVP 播客上线

2008-01-01 03:39 by Cat Chen, 3686 阅读, 0 推荐, 收藏, 编辑
摘要:其实我很早就想做podcast(播客),10月份从三亚回来一直在筹备一个MVP博客,最终在前天完成了第0集(pilot episode)的录制,并将于今天稍晚时候上线。在整个过程中,我需要感谢dudu以及博客园对podcast提供的支持与服务,感谢Bean与Jeffrey对podcast准备工作与录制的投入。首先,我介绍一下podcast为什么叫做podcast。过往,我们能够订阅feed,从而好... 阅读全文