翔如菲菲

其实天很蓝,阴云总会散;其实海不宽,此岸连彼岸.

2012年2月9日 #

浏览器内部工作原理

摘要: 目录 一、介绍 二、渲染引擎 三、解析与DOM树构建 四、渲染树构建 五、布局 六、绘制 七、动态变化 八、渲染引擎的线程 九、CSS2可视模型 英文原文:How Browsers Work: Behind the Scenes of Modern Web Browsers 一、介绍 浏览器可以被认为是使用最广泛的软件,本文将介绍浏览器的工作原理,我们将看到,从你在地址栏输入google.com到你看到google主页过程中都发生了什么。 将讨论的浏览器 今天,有五种主流浏览器——IE、Firefox、Safari、Chrome及Opera。 本文将基于一些开源浏...阅读全文

posted @ 2012-02-09 16:49 翔如飞飞 阅读(5) 评论(0)  编辑

2012年2月4日 #

如何查看我的订单-REST的流程API设计案例

摘要: 这是一个关于订单的故事。四个月前,我在某刚刚上市不久的网上书城框框网购买了一包纸尿裤,因为尺寸不对,我选择了退货,由此开始了我糟糕的用户体验:首先是快递公司取回了纸尿裤却没有还款给我,接下来,在两个月的时间里,我不得一次又一次的向框框的客服投诉,客服很客气,她让我说出我的订单号然后说需要帮我查一查,两分钟后,她说需要和快递公司联系,稍后再打给我;随后的客服都很客气,但无一例外的,她们都不清楚我订单的处理情况,她们甚至很惊讶,快递公司还没有给你办吗?终于,我失去了耐心,我说,难道你们框框就只负责卖东西吗?送货外包了你们就不需要负责了吗?究竟是谁在处理我的订单,谁是责任人你们不知道吗?整个流程的处阅读全文

posted @ 2012-02-04 10:33 翔如飞飞 阅读(10) 评论(0)  编辑

如何获取(GET)一杯咖啡——星巴克REST案例分析

摘要: 我们已习惯于在大型中间件平台(比如那些实现CORBA、Web服务协议栈和J2EE的平台)之上构建分布式系统了。在这篇文章里,我们将采取另一种做法:我们把支撑Web运行的协议和文档格式视为一种应用平台,一种可通过轻量级中间件访问的平台。我们通过一个简单的客户-服务交互的例子,展示了Web在应用集成中的作用。在这篇文章里,我们以Web为主要设计理念,提炼并分享了我们下本书《GET /connected - Web-based integration》(暂定名称)里的一些想法。引言我们知道,集成领域是不断变化的。Web的影响以及敏捷实践的潮流正在挑战我们的关于“良好的集成由什么构成”的观念。集成(i阅读全文

posted @ 2012-02-04 10:30 翔如飞飞 阅读(7) 评论(0)  编辑

2012年2月3日 #

深入浅出REST

摘要: 不知你是否意识到,围绕着什么才是实现异构的应用到应用通信的“正确”方式,一场争论正进行的如火如荼:虽然当前主流的方式明显地集中在基于SOAP、WSDL和WS-*规范的Web Services领域,但也有少数人用细小但洪亮的声音主张说更好的方式是REST,表述性状态转移(REpresentational State Transfer)的简称。在本文中,我不会涉及争论的话题,而是尝试对REST和RESTful HTTP应用集成做实用性的介绍。以我的经验,有些话题一旦触及就会引来众多的讨论,当涉及到这方面话题的时候,我会深入详细地阐述。REST关键原则大部分对REST的介绍是以其正式的定义和背景作为阅读全文

posted @ 2012-02-03 17:26 翔如飞飞 阅读(15) 评论(0)  编辑

2012年1月31日 #

Ruby开发环境

摘要: 假设您已经安装了Eclipse,那么只需按照如下步骤即可:Please copy the following Update Site URL to your clipboard and then follow the steps listed below to add this URL to yourAvailable Software Siteslist. Attempting to access this URL using your web browser will return an Access Denied error.http://download.aptana.com/stud阅读全文

posted @ 2012-01-31 22:28 翔如飞飞 阅读(16) 评论(0) 编辑

细说 HttpHandler 的映射过程

摘要: 阅读目录开始回顾HttpHandlerHttpHandler的映射过程HttpContext.RemapHandler()HttpContext.RemapHandler()的另类用途GetHandlerMapping()GetFactory()GetHandler()IHttpHandler.IsReusable实现自己的HttpHandlerFactory是否需要IsReusable = true ?HttpHandlerFactory的主要用途在ASP.NET编程模型中,一个来自客户端的请求要经过一个称为管线的处理过程。 在整个处理请求中,相对于其它对象来说,HttpHandler的处理阅读全文

posted @ 2012-01-31 17:24 翔如飞飞 阅读(5) 评论(0)  编辑

Ruby笔记五(简单的字符串操作)

摘要: #E8.1-2.rb字符串操作#双引号括起来的字符串会有转义,例如:“\n”表示换行。还有一些其它的转义符号,比如制表符之类。str="thisisyoustring.\n"putsstr*2=beginresult:thisisyoustring.thisisyoustring.=end#单引号括起来的字符串并不会对字符串作任何解释str2='thisisyoustring.\n'putsstr2*2#thisisyoustring.\nthisisyoustring.\n=begin字符串内嵌表达式在双引号扩起来的字符串中,不仅可以使用各种转义符,而且可阅读全文

posted @ 2012-01-31 16:05 翔如飞飞 阅读(45) 评论(0) 编辑

Ruby笔记四(数组)

摘要: #E8.1-1.rb=begin数组的索引从0开始,一直到数组的长度减去1;负数表示从数组末尾开始的索引;用一对数字来索引数组,第一个数字表示开始位置,第二数字表示从开始位置起的元素数目=endarr=[3,4,5,6,7,8,9]putsarr[0]#3putsarr.first#3putsarr[arr.length-1]#9putsarr[arr.size-1]#9putsarr.last#9putsarr[-1]#9putsarr[-2]#8printarr[1..3].join(","),"\n"#4,5,6printarr[-3,2],&qu阅读全文

posted @ 2012-01-31 14:59 翔如飞飞 阅读(22) 评论(0) 编辑

Ruby笔记二(求素数)

摘要: #E3.12-1.rb求50以内的素数$arr=[]#建立一个全局数组$arr$arr[0]=2defadd_prime(n)#定义方法将n以内的奇素数加入$arr3.step(n,2){|num|$arr<<numifis_prime?num}enddefis_prime?(number)#定义方法判断一个数是否是素数j=0#数组下标while$arr[j]*$arr[j]<=numberreturnfalseifnumber%$arr[j]==0j+=1endreturntrueendadd_prime(50)print$arr.join(","),&阅读全文

posted @ 2012-01-31 14:36 翔如飞飞 阅读(9) 评论(0) 编辑

Ruby笔记一(运算符)

摘要: =beginRuby使用一个约定来区别一个名字的用法:名字前面的第一个字符表明这个名字的用法。局部变量、方法参数和方法名称应该用一个小写字母开头或者用一个下划线开头;全局变量用美元符作为前缀$;实例变量用@开头;类变量用@@开头;与全局变量和实例变量不同,类变量在使用前必须要初始化;全局变量和实例变量如果没有初始化,其值为nil类名、模块名和常量应该用大写字母开头=end=beginRuby的条件运算符比Java更加复杂==:比较两个对象的值是否相等,返回true,falseeql?:比较两个对象的值、类型是否相等,返回true,falseequal?:比较两个对象在内存中地址是否相同,返回t阅读全文

posted @ 2012-01-31 14:34 翔如飞飞 阅读(11) 评论(0) 编辑