软件工艺
Mozilla
这个作者很懒,什么都没留下…
展开
-
假如我确实喜欢HTML、CSS和JavaScript又将如何?
Ruby on Rails的创造者DHH最近写了一篇很有趣的blog,原文地址是在这里: http://www.37signals.com/svn/posts/487-what-if-i-actually-like-html-css-and-javascriptCSDN上有一篇图灵刘江老师blog,介绍了DHH的这篇blog: http://blog.csdn.net/turingbook/a原创 2007-06-30 11:33:00 · 7417 阅读 · 5 评论 -
REST架构风格的性能为何比其他的架构风格更好
今天与一起翻译Fielding论文的朋友杨光讨论技术问题,杨光认为因为REST是基于文本来进行通信,所以其性能肯定不如基于二进制格式的通信协议好。因为这是一个对于REST的明显的误解,所以我觉得有必要专门在这里澄清一下。以下是我们的讨论内容,David是我,Allen是杨光。 David: 他们客户端用C#,服务器端用Java,准备用RIA+REST+Java的架构。C原创 2007-05-23 11:17:00 · 6547 阅读 · 9 评论 -
Adobe Flex最佳学习路线
目前Adobe Flex的中文版学习资料比较少,而且大多都很零散,不适合用来系统地学习。我在这里罗列一下在我的学习过程中读过的一些资料。当然是以Adobe的官方文档为主,这些文档内容非常详尽,应该作为学习的首选。首先下载并安装好Flex开发工具Flex Builder 2。Flex Builder 3的Beta版目前还不是很稳定,不推荐使用。我发现这篇文档非常适合新手用来入门:重庆大坪的刘刚所翻译原创 2007-08-23 22:59:00 · 25924 阅读 · 9 评论 -
Flash与Web可用性之一——问题
关心Web可用性的朋友可能听说过Jakob Nielsen大师写过的一篇著名的文章“Flash 99% bad”。这篇文章是Nielsen在2000年写的,指出了滥用Flash对于Web可用性造成的恶果。Ajax技术出现之后,还有人东施效颦地写了一篇 “Ajax 99% bad”。Nielsen指出在大量使用Flash的Web设计中普遍存在三个方面的问题:Encourages Design Abu原创 2007-09-04 04:38:00 · 4888 阅读 · 1 评论 -
RIA+REST如何来化解Java的劣势
我在前面两篇blog中都说到:“REST是简化Java Web开发的良药”。Java的劣势在何处?与前些年相比,现在看的已经很清楚了,Java的劣势就在于做Web表现层的开发。Web表现层开发需求变化频繁,Java这类静态类型的语言不够敏捷,严重影响了开发的效率。而JavaEE的一个最大的缺点,就是企图在服务器端搞定一切,我将这种开发方式称作“传统集中式的开发方式”。标准的J2EE三层架构——We原创 2007-06-15 09:38:00 · 14864 阅读 · 12 评论 -
为REST添加服务发现能力
很多关心SOA的人士都很关注REST,我同意Sanjiva Weerawarana在InfoQ的这篇访谈:揭秘REST/WS-* 中的观点,即:其实,面向资源的架构和面向服务的架构是有很大不同的,它们的目标也有很大的不同。REST主要是为建造面向资源的架构服务的。面向资源的应用不一定要是面向服务的应用,同样,面向服务的应用也不一定要是面向资源的应用。但是,这并不是说REST就不能建造面向服务的架构原创 2007-09-13 21:53:00 · 5989 阅读 · 1 评论 -
共享一些OpenID相关资料
OpenID book:http://www.openidbook.comOpenID的两个主要的规范:http://openid.net.cn/specs/openid-authentication-1_1-zh_CN.htmlhttp://yadis.org/papers/yadis-v1.0.pdfRuby OpenID Library:http://www.openidenabled.co原创 2007-09-12 11:48:00 · 3180 阅读 · 0 评论 -
给热爱Ajax的朋友增添一些信心
现在Adobe和M$都推出了自己的RIA技术,有些朋友似乎对基于Web标准(XHTML/CSS/JavaScript/XMLHttpRequest/XML/JSON/XSLT/SVG...)的Ajax技术的前景的信心产生了动摇。其实我一直都不认为Adobe、M$等公司推出的RIA技术会对Ajax的前景造成巨大的威胁。它们的适用场合不是重叠的。实际上Adobe最新推 出的AIR(就是以前的Apo原创 2007-06-17 10:23:00 · 7660 阅读 · 8 评论 -
NetBeans终于咸鱼翻身了
2002年的时候我曾经使用过NetBeans,感觉很不好。首先是速度很慢,其次是界面像很多Swing应用一样,与native的Windows应用的look & feel差距很大。当时Eclipse发布了2.0版,我使用了一下就被它迷住了。首先是它的速度很快,我从来没有见过桌面Java应用跑的像Eclipse那样快,JBuilder、NetBeans都很慢。其次是它的look & feel与nati原创 2007-10-02 18:36:00 · 13686 阅读 · 11 评论 -
绕过浏览器相同来源策略的一些方法
浏览器的相同来源策略大家都很清楚。它在保证了用户安全性的同时,也为实现某些类型的Ajax应用造成了很大困难。经常有人尝试用各种方法来绕过相同来源策略,但是很少有人成功。相同来源策略是W3C所规定的一个严格的限制机制,如果能够轻易绕过,那将是这个浏览器版本的重大安全漏洞。我来总结一下我至今见到过的绕过相同来源策略的几种方法。1. 通过同一个服务器请求来自不同来源服务器的页面。 在客户端,需要对XML原创 2007-12-21 22:49:00 · 5027 阅读 · 0 评论 -
Ajax还缺什么?
Ajax技术发展了两年半了(从创造出“Ajax”这个术语算起,如果从Gmail和Google Maps等Ajax应用诞生算起的话,还要更久一些),不必说,Ajax技术取得了巨大的进步。现在Ajax已经堂而皇之地成为了一种主流的RIA技术,不再有人认为这些不过只是一些古怪的hack。Ajax技术的进一步发展会受到两方面的制约,即浏览器的发展和Web标准的发展。在浏览器方面,M$的态度是Ajax技术蓬原创 2007-08-15 23:33:00 · 6940 阅读 · 7 评论 -
《CSS实战手册》书评
HTML(XHTML)很容易入门,但是与其他同样很容易入门的技术一样,HTML很容易被误用。在最初学习阶段的愉快感觉之后,开发者在实际工作中很快就会陷入到混乱之中。这并不是HTML的错,正是因为HTML的简洁性和易用性(低门槛),Web才得以以几何级数的速度飞速发展,HTML应该继续保持这样的特点。使用HTML显然并不是我们的目标,我们需要掌握一些更高层次的技术,这些技术可以指导我们以正确的方式使原创 2007-08-12 10:51:00 · 7619 阅读 · 0 评论 -
《精通正则表达式》书评
第一次接触正则表达式,还是在2000年使用Perl CGI做Web开发的时候。Perl给我留下最深刻印象的就是它的正则表达式。我使用Perl的正则表达式开发了一个简单的模板引擎,可以将程序逻辑与页面的HTML标记分离开。正则表达式可以以非常简练的方式高效地完成复杂的文本处理工作。如果不使用正则表达式,做相同的文本处理需要耗费的资源(CPU周期、内存、开发时间)要多得多。精通正则表达式,就好像是掌握原创 2007-08-12 08:44:00 · 4340 阅读 · 1 评论 -
Web表现层技术竞争替代关系一览
很多人对于现有哪些Web表现层技术,它们之间是什么关系搞不清楚,我来简单介绍一下。现有的Web表现层技术按照事件模型所在的位置可以分成两大类,事件模型位于服务器端的和事件模型位于客户端的。基于HTML表单交互的传统的Web开发框架,事件模型都位于服务器端,这些框架包括各种Web MVC框架(Struts、WebWork、Spring MVC等等)、JSF、ASP.NET、RoR、以及PHP、Pyt原创 2007-04-07 14:54:00 · 6545 阅读 · 2 评论 -
为什么一定要了解一种技术的细节
作为一名好的程序员,重视细节是一个必须要具备的优点。粗枝大叶的人很难成为一名好的程序员,至于好的架构师就更不要指望了。好的架构师来自于好的程序员,认为自己可以不经过多年程序员的严格考验就成为一名合格的架构师,那是癞蛤蟆想吃天鹅肉。但是在国内,很多人满足于仅仅知道一些buzzword。他本人在做数据库开发,却不肯去深入了解不同SQL语句的性能差异;本人在做业务层开发,却不肯去深入了解重构为何物;本人原创 2007-04-07 13:25:00 · 5878 阅读 · 21 评论 -
为何你应该选择Dojo?
目前Dojo在国内不是很普及,事实上,国内很多的DHTML/Ajax开发者非常讨厌Dojo,无论是因为不了解还是误解。 Dojo项目的负责人Alex在最新的一篇blog中,摆出了一副论战的架式,列举出了Dojo与其他流行的DHTML/Ajax组件库相比的优势。 http://dojotoolkit.com/book/dojo-book-0-9/introduction/why-dojo我个人其原创 2007-07-09 12:30:00 · 3549 阅读 · 2 评论 -
古怪的arp病毒变种
我的机器自从上次安装操作系统,已经有将近4个月没有重新安装了。过年前感染过一次熊猫烧香病毒,删除了很多文件,不过最后还是恢复了,也懒得重新安装 。可能就是那次大面积的感染,造成了这台机器免疫能力的下降。在将近2个月前,我在家里通过无线路由器上网,经常过一段时间,DNS就全部无法解析了。我必须要重新启动路由器(拔掉电源然后重新插上),能够再使用一段时间,然后又会出现DNS无法解析的问题。这样的情况每原创 2007-04-13 00:57:00 · 1613 阅读 · 1 评论 -
假如一种架构风格已经不流行了,还有必要去研究具体的架构吗?
Fielding先生在他关于REST的博士论文中,大量用到了“架构风格”(Architectural Style)这个词。简单地用面向对象的方式来描述,一种架构风格代表了一组运行环境对于架构设计所造成的约束,它就好比是一个类或者一个接口,而具体的架构呢,则是某种架构风格的一个实例。Fielding这篇论文是继GoF的《设计模式》之后,对我启发性最大的一本书。现在国内外已经出版过的关于软件架构的专著原创 2007-04-14 09:35:00 · 3436 阅读 · 8 评论 -
需要将DHTML与Ajax区分开
JavaEye论坛的Ajax版有几个人具有丰富的DHTML开发经验,我也向他们学到了一些很好的技巧。不过我感觉在那里大多数人的关注点主要还是集中在掌握各种实用的开发框架上。这些开发框架固然很重要,善于使用这些框架有的时候可以取得事半功倍的效果。但是这些开发框架只是Ajax的一部分, Ajax还有更加丰富的内容。这些开发框架解决的问题主要还是属于DHTML开发的问题,我其实一直有意识地将DHTML与原创 2007-04-19 01:27:00 · 3788 阅读 · 2 评论 -
从Java到Ruby——我的最近一次技术转型
这里所涉及到的都是与软件开发有关的技术,感觉很有必要总结一下我从业以来所使用过的开发技术以及所经历过的几次技术转型。1996年7月-1999年10月3年时间一直使用C语言编写电信协议软件,算作我的C语言时代。其中还使用过一段时间SDL语言和基于SDL的代码自动生成工具(瑞典Telelogic公司的SDT)。2000年3月-2000年10月7个多月时间使用Perl语言做网站开发,算作我的Perl语言原创 2007-07-22 23:50:00 · 20343 阅读 · 23 评论 -
传统的Java Web MVC框架距离REST有多远
到目前为止,传统的Java Web MVC框架(Struts、WebWork、Spring MVC、etc.)还无法很好地支持REST风格的架构设计。它们在设计之初时基本上都是围绕着基于HTML表单的交互模式来设计的,View的粒度难以 达到单个页面以下。不能把响应Ajax请求而返回的XML/JSON/纯文本格式的数据简单地认为是Web MVC框架中的View,实际上这个时候这些数据的语义已经与传原创 2007-05-05 20:29:00 · 9160 阅读 · 6 评论 -
一个成功的RIA技术需要满足的条件
不要将自己完全局限在现有技术的能力范围内,来跟我一起预测一下未来技术的发展趋势,看看一种理想的RIA技术应该满足哪些条件。我先来开个头。1. 与服务器的交互方式必需首先支持异步的交互。异步的交互才不会打断用户的操作。当然也可以同时支持同步的交互。 2. 所基于的新的媒体格式必需是基于文本的,这样的格式才可能对于搜索引擎友好。 3. 要能够充分支持REST风格的架构设计,允许开发者充分利用所有H原创 2007-05-05 20:30:00 · 2651 阅读 · 2 评论 -
《RESTful Web Clients》中文版推荐序
一场与超媒体的未了情缘当我在2007年前初次翻译Roy Fielding关于REST的博士论文(中文版名为《架构风格与基于网络应用软件的架构设计》)时,其实对于Web的整体架构是毫无认识的。无知者无畏,当时我仅仅是出于求知欲就开始了翻译工作。后来我发现这个挑战严重超出了我的能力范围,Fielding的博士论文是我翻译过的专业技术著作中难度最高的。后来我在2013年重新翻译了REST博士论文,力...原创 2018-07-27 09:59:37 · 799 阅读 · 1 评论