
dev theories
deng131
这个作者很懒,什么都没留下…
展开
-
web服务器反向代理 reverse proxy
代理服务器来接受外部的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给外部的请求连接的客户端,此时代理服务器对外就表现为一个服务器。 [color=blue]反向代理一般作用:1:减轻源服务器负载2:保障源服务器安全3:对源服务器进行负载均衡(Load Balance)。[/color]一般反向代理置于源服务器的前端,配备大容量的内存和高速磁...原创 2011-04-07 09:33:29 · 209 阅读 · 0 评论 -
SVG、CANVAS、VML比较
[code="java"]Svg:W3C标准,Firefox, Opera 支持,在IE下需要插件(Adobe SVG Viewer)。 Canvas〔推荐〕:Firefox, Opera 支持,IE不支持。VML:仅在IE下支持 [/code]GML、SVG和VML都是基于XML的可用来描述矢量图形的标记语言,都是XML词表,它们的语法并不难理解,但它们都有各自不同的用途...原创 2010-10-17 21:54:51 · 128 阅读 · 0 评论 -
浏览器3种文档模式 Q , A ,S
怪癖模式、标准模式和准标准分别表示为Q、S和A。当浏览器仅有两种模式时,如果表格单元格的行高和Mozilla的标准模式表现一致时,标准模式标记为“S”,如果表格单元格的行高和Mozilla的准标准模式表现一致时,则标记为“A”。浏览器的模式选择,有三个:[color=red]Quirks Mode, Standards Mode, Almost Standards Mode[/co...原创 2011-05-22 22:19:55 · 298 阅读 · 0 评论 -
性能黄金法则 (Performance Golden Rule)
性能黄金法则(Performance Golden Rule):只有[color=red]10%-20%[/color]的最终用户响应时间花在了[color=red]下载HTML文档[/color]上。其余的[color=red]80%-90%[/color]时间花在了[color=red]下载页面中的所有组件[/color]上。...原创 2011-05-20 10:41:43 · 285 阅读 · 0 评论 -
互联网产品灰度发布
今天在公司团队敏捷开发培训中培训老师说到的这个词,特地网上google搜索下什么是灰度发布?百度百科上的定义是:[color=blue]灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度...原创 2011-05-13 14:14:59 · 142 阅读 · 0 评论 -
伯斯塔尔法则(Postel principle)
发送时要保守;接收时要开放。 Be conservative in what you send; be liberal in what you accept.参考:[url]http://en.wikipedia.org/wiki/Robustness_principle[/url]2011-01-19 11:46:11 · 633 阅读 · 0 评论 -
帕累托法则(Pareto principle)
80/20效率法则(the 80/20 principle),又称为帕累托法则、帕累托定律、最省力法则或不平衡原则、犹太法则。此法则是由意大利经济学家帕累托提出的。80/20的法则认为:原因和结果、投入和产出、努力和报酬之间本来存在着无法解释的不平衡。参考:[url]http://baike.baidu.com/view/1609041.htm[/url]...2011-01-19 11:20:16 · 1624 阅读 · 0 评论 -
程序员遵守三大法则
第一法则程序员不得损害产品质量,或袖手旁观产品质量受到损害。第二法则程序员必须服从产品经理的命令,除非违背第一法则。第三法则程序员必须保护自己,除非违背第一和第二法则。繁殖定律程序员不得参与程序员的孕育和培养,除非新程序员的行动符合以上三大法则。引用自机器人三大大定律(著名的伯斯塔尔法则),三大法则确实在开发中值得思考。...2011-01-14 23:28:24 · 344 阅读 · 0 评论 -
html 页面指定 Content-Type
经常遇到页面显示文字乱码问题,大多数是由于字符编码问题导致。通常设置[code="java"][/code]在页面头指定字符charset=utf-8等编码方式。[color=blue]Always declare the encoding of your document. Use the HTTP header if you can. Always use an in-docu...原创 2011-04-21 13:56:00 · 3153 阅读 · 0 评论 -
浏览器关闭事件页面处理
开发中遇到问题:业务希望关闭浏览器后后台能够得到用户已经离开系统操作消息,因为这个消息将会触发在其他业务系统中功能,所以在实时性上有要求。需求分析:1:js通过绑定onbeforeunload事件在触发时候调用ajax发送请求到服务器,但是实际上页面对象已经释放了,那么在ajax还没有发送成功时候变被终止了。[code="java"] window.onbeforeunload ...原创 2011-04-20 14:05:58 · 355 阅读 · 0 评论 -
表单中disabled和readonly区别
readonly和disabled是用在表单中的两个属性,它们都能够做到使用户不能够更改表单域中的内容。差别:readonly 只针对input(text/password)和textarea有效,而disabled对于所有的表单元素都有效,包括select, radio, checkbox, button等。但是表单元素在使用了disabled后,当我们将表单以POST或GET的方式...原创 2011-01-04 18:55:05 · 133 阅读 · 0 评论 -
网站SEO优化robot.txt配置
主要介绍下meta标签用法:meta就是写在HTML head 里面的,Robots META标签则主要是针对一个个具体的页面。和其他的META标签(如使用的语言、页面的描述、关键词等)一样,Robots META标签也是放在页面的<head></head>中,专门用来告诉搜索引擎ROBOTS如何抓取该页的内容。Robots META标签的写法:Robots META标签中没有...原创 2010-10-21 20:24:37 · 837 阅读 · 0 评论 -
史特金定律 (Sturgeon's Law)
史特金定律 (Sturgeon's Law),是由科幻作家西奥多·史特金提出的。该定律认为:任何事物(特别是用户创造的内容),90%都是垃圾.引申到目前的社区网站的内容上的意思是:社区所有的作品中,90%以上的作品都是“垃圾”。因此要有能力去芜取菁。一般而言,社区中只有1%人在贡献,10%的人参与评价,而90%是大多数的沉默着。老子言:“善人者,不善人之师;不善人者,善人之资。”要处理好1...2011-02-09 16:17:09 · 1415 阅读 · 0 评论 -
奥卡姆剃须刀定律
如果你认为只有焦头烂额、忙忙碌碌地工作才可能取得成功,那么,你错了。 事情总是朝着复杂的方向发展,复杂会造成浪费,而效能则来自于单纯。在你做过的事情中可能绝大部分是毫无意义的,真正有效的活动只是其中的一小部分,而它们通常隐含于繁杂的事物中。找到关键的部分,去掉多余的活动,成功并不那么复杂。 奥卡姆剃刀:如无必要,勿增实体。 12世纪,英国奥卡姆的威廉对无休无止的关于"共相"、...2011-02-13 18:34:59 · 650 阅读 · 0 评论 -
JavaScript中json对象序列化转换
[code="java"]jquery实现方法是:window.JSON && window.JSON.parse ?window.JSON.parse( data ):(new Function("return " + data))();ext,dojo实现方法是:eval("(" + json + ")"); // Object比较好的方式:JSON = {...2010-11-06 14:30:52 · 181 阅读 · 0 评论 -
Unobtrusive与Hijax概念
Hijax就是一种贯彻了”progressive enhancement automatically guarantees graceful degradation(渐进增强自动保证平稳退化)”思想的Ajax程序设计开发理念,即:[color=blue]1.首先,构建一个老式的网站,通过超链接和表单向服务器传递信息。服务器根据每次请求返回完整的新页面。2.然后,通过JavaScript...原创 2011-03-12 14:58:22 · 229 阅读 · 0 评论 -
页面链接地址自动切换http/https
在支付页面开发中遇到问题:在https页面中引用了http页面元素,将会出现弹出警告窗体,虽然是安全情况考虑,对用户体验很不好。[img]http://p.blog.youkuaiyun.com/images/p_blog_youkuaiyun.com/sfdev/84c17bbf8c9d50d2855920f085f22e73.jpg[/img]该类型的警告出现在:发行方的证书发行方不在IE信任的发...2011-03-09 13:39:15 · 2362 阅读 · 0 评论 -
Yahoo各种浏览器分级策略
对于前端开发经常使用Yslow工具开发者来说对于浏览器分级一定很熟悉了,在网站页面性能打分时候进程遇到。那么浏览器分级原则是什么呐?不是很了解,网上查询了别人翻译浏览器分级。[color=blue]支持的三个级别C 级(C-grade) C 级是最基本的支持,提供核心内容和功能。有时候也称为核心支持。几乎不提供除了 HTML 之外的更多东西,让内容和体验具有高度的可访问性...2011-03-06 22:23:03 · 784 阅读 · 0 评论 -
html 标签中 <object> 元素使用
w3school上介绍 定义和用法:在代码中遇到过通过object创建img图片,或者加载html页面。[code="java"][/code][code="java"][/code]为什么可以这样使用呐?,那么就需要找到创建的原因了。[color=blue] 标签用于包含对象,比如图像、音频、视频、Java applets、ActiveX、PDF 以及...原创 2011-03-01 18:31:07 · 604 阅读 · 0 评论 -
IE中最大URL地址字符串长度
IE浏览器有[color=blue] 2,083 个字符[/color]的最大的统一资源定位符 (URL) 长度。 Internet Explorer 也有 [color=blue]2,048 [/color]个字符的最大路径长度。此限制适用于 [color=blue]POST 请求和 GET 请求[/color] url。如果使用的 GET 方法您限于减去实际路径中的字符数的有 2,...原创 2011-03-01 13:57:01 · 378 阅读 · 0 评论 -
前端交互操作响应时间基本准则
在前端用户交互过程中,会存在等待服务器响应的事件间隔,这个时候对用户展示响应的提示能更加的友好。这样情况就需要考虑操作方式和网络情况。 响应时间的基本准则:[color=blue] * 0.1秒是用户瞬间感受的界限,这意味着不需要任何提示(feedback)可直接显示结果。 * 1秒:即使用户感觉到了延迟,但仍然感觉流畅并保持连续的操作,一般来讲,延迟在0.1秒~...原创 2011-02-16 20:36:26 · 3012 阅读 · 0 评论 -
蝴蝶效应(The Butterfly Effect)
理论基础 蝴蝶效应是气象学家洛伦兹1963年提出来的。其大意为:一只南美洲亚马孙河流域热带雨林中的蝴蝶,偶尔扇动几下翅膀,可能在两周后在美国德克萨斯引起一场龙卷风。其原因在于:蝴蝶翅膀的运动,导致其身边的空气系统发生变化,并引起微弱气流的产生,而微弱气流的产生又会引起它四周空气或其他系统产生相应的变化,由此引起连锁反应,最终导致其他系统的极大变化。此效应说明,事物发展的结果,对初始条件具...原创 2011-02-14 19:33:51 · 1508 阅读 · 0 评论 -
海森堡测不准原理
海森堡测不准原理是建立在经典力学持续后继发展基础上的第三次大进步。基础研究起点的具体内容是物质质量与距离关系形成的万有引力定律、并由质量与力的关系,进一步演义出力与运动速度的关系。第二大进步是爱因斯坦发现的相对论,揭示了运动速度与质量的变化关系。西方经典科学在物理学上的三次大进步前进,并没有引发西方经典数学的原理革命。线性量值数学的数学思想与思维方法,明显的滞后现代物理学先进的运动理念与变...原创 2011-02-14 09:00:59 · 1651 阅读 · 1 评论 -
观察者效应(Observer Effect)
所谓的“观察者效应”,指的是被观察的现象会因为观察行为而受到一定程度或者很大程度的影响。说得广泛一点,我们几乎没办法不影响我们观察的事物——只不过是程度高低不同而已。(需要注意的是,“观察者效应”和“海森伯测不准原理”(Heisenberg Uncertainty Principle)并不是一回事儿,尽管你会常常遇到人们对这两个概念误解误用。简要地说,前者重点在“观察”,后者重点在“测量”。)...原创 2011-02-14 08:52:13 · 2733 阅读 · 0 评论 -
JavaScript中delete操作符
深入理解JavaScript中delete操作符,特此记录下。参考:[url]http://xo-tobacoo.iteye.com/blog/346644[/url][url]http://xiaolele.iteye.com/blog/682242[/url][url]http://perfectionkills.com/understanding-delete/[/url...2011-01-03 10:36:25 · 141 阅读 · 0 评论 -
DOM加载与文档资源加载
在开发中遇到问题,需要在页面加载前显示广告提示。也就是在dom还没有加载先显示广告,当页面所有资源加载完后在隐藏广告,显示dom内容。window onload包含dom load。页面响应加载的顺序是,域名解析->加载html->加载js和css->加载图片等其他信息,jquery的Dom Ready方法在加载图片等其他信息前就可以操作Dom了,先于window.onload事件触发前执行。...2011-01-01 15:11:08 · 160 阅读 · 0 评论 -
JavaScript值类型和引用类型
JavaScript值类型和引用类型:[code="java"](1)值类型:数值,布尔值,null,undefined。(2)引用类型:对象、数组、函数。[/code][color=blue]1:需要特殊说明是:字符串是基本数据类型,String对象是引用类型,基本数据类型字符串在进行对象操作时会临时转化为String对象,所以会出现令人费解的情况,而JS Strin...原创 2010-12-13 12:29:55 · 98 阅读 · 0 评论 -
Pair Programming (结对编程)
[img]http://www.blogjava.net/images/blogjava_net/moxie/pair.gif[/img]最早接触Pair Programming (结对编程)是在公司的ruby on rails项目中,由于公司人手少,公司就安排了另外一位同事和我一起工作,刚开始很不习惯这种工作方式,在共同的认识上有很大出入,但是项目在身,公司作出这样的安排,我想也有他的原因,...2010-08-03 09:06:19 · 104 阅读 · 0 评论 -
MVC架构M-V-C
最早接触mvc架构是在ASP.NET中到我现在接触的ruby on rails的这种框架模式,最初的理解是:控制层,模型层,视图层。[img]http://imgsrc.baidu.com/baike/pic/item/90cebeec25adbf02269791bc.jpg[/img]当然对实现这种方式唯一的认识就是系统的结构层次划分很清楚,但是具体的优点很不足就不是很清楚了,在...2010-08-02 13:39:28 · 371 阅读 · 0 评论 -
程序鲁棒性 (robustness)
简单理解就是:程序在非正常情况下(输入不符合规定等)不会出错或崩溃。鲁棒性(robustness)就是系统的健壮性。它是在异常和危险情况下系统生存的关键。比如说,计算机软件在输入错误、磁盘故障、网络过载或有意攻击情况下,能否不死机、不崩溃,就是该软件的鲁棒性。所谓“鲁棒性”,是指控制系统在一定(结构,大小)的参数摄动下,维持某些性能的特性。根据对性能的不同定义,可分为稳定鲁棒性和性能鲁棒性...原创 2010-08-02 09:28:15 · 1607 阅读 · 0 评论 -
URL格式规范
转自:http://nosound.my.gsdn.net/2004/12/09/6276/ 先记录下,以便以后使用。一、格式说明“|” 表示隔开的两部分只能出现其中一个,方括号[]括起来的表示可选,文字由双引号””括起来,以n*开头表示至少n个或更多的,n的缺省值为0。二、总体格式genericurl = scheme “:” schemepart...原创 2010-07-28 10:19:50 · 206 阅读 · 0 评论 -
GTD,Getting Things Done
转自:http://www.lifebang.com/archives/49GTD,Getting Things Done的缩写。《 Getting Things Done-The Art of Stress-Free Productivity》一书的作者David Allen将GTD总结成为一种将繁重超负荷的工作生活方式变成无压力高效的时间管理系统。这种GTD系统的内容包括:...原创 2010-07-22 09:08:23 · 169 阅读 · 0 评论 -
object-c,cocoa, xcode关系
Object-Ciphone开发用的编程语言不是c,c++,java 而是object-c。虽然很多地方与c/c++相似,却也有很多地方与其不一样。如果你还分不清楚object-c 与 cocoa 的关系,大致可以这样去想: object-c 只是一个单纯的语言,而cocoa则是用object-c写成的iphone基础类库与框架。如果把object-c比作c++, 那么cocoa 大概可以...原创 2010-07-21 15:43:03 · 124 阅读 · 0 评论 -
cookie和session区别和原理
[color=blue]什么是cookie?Cookie是一种在客户端保持HTTP状态信息的技术,Cookie是在浏览器访问WEB服务器的某个资源时,由WEB服务器在HTTP响应消息头中附带传送给浏览器的一片数据,WEB服务器传送给各个客户端浏览器的数据是可以各不相同的。浏览器可以决定是否保存这片数据,一旦WEB浏览器保存了这片数据,那么它在以后每次访问该WEB服务器时,都应在HTTP请求头中将这...原创 2010-05-09 22:49:44 · 107 阅读 · 0 评论 -
需求分析、概要设计、详细设计区别
软件工程的需求分析、概要设计、详细设计的区别-转载按照传统软件工程的软件过程,区别如下: 1.需求分析--产生 软件功能规格说明书,需要确定用户对软件的需求,要作到明确、无歧义。不涉及具体实现方法。用户能看得明白,开发人员也可据此进行下面的工作(概要设计) 2.概要设计--产生 软件概要设计说明书,说明系统模块划分、选择的技术路线...原创 2010-07-20 16:13:23 · 456 阅读 · 0 评论 -
软件发布各版本代号含义
Alpha: Alpha是内部测试版,一般不向外部发布,会有很多Bug.除非你也是测试人员,否则不建议使用.是希腊字母的第一位,表示最初级的版本alpha就是α,beta就是βalpha版就是比beta还早的测试版,一般都是内部测试的版本Beta: 很容易理解就是测试版,这个阶段的版本会一直加入新的功能。RC:RC 就是Release Candidat...原创 2010-07-13 17:22:26 · 1223 阅读 · 0 评论 -
网页中"<![CDATA[" "]]>"标记
经常在网页html代码中看见这样的嵌入标签,但实际使用没有用过,特此在记录下:CDATA是在XML文档里面使用的关键字,用来告诉浏览器,这部分内容不用解析,是给其他程序用的,比如JAVASCRIPT等等。PCDATA是在 XML约束文档里使用的,如DTD类型的约束文档,在这里面表示元素的内容或属性的取值范围等等,是字符串形式的。常常嵌入在script标签中,...原创 2010-08-16 21:15:16 · 774 阅读 · 0 评论 -
迪米特法则(Law of Demeter)
迪米特法则(Law of Demeter, LoD)又叫最少知识原则(Least Knowledge Principle, LKP)。1987年秋天由美国Northeastern University的Ian Holland提出,被UML的创始者之一Booch等普及。后来,因为在经典著作《 The Pragmatic Programmer》而广为人知。 迪米特法则可以简单说成:talk o...原创 2010-06-06 11:38:24 · 110 阅读 · 0 评论 -
算法时间复杂度计算
1)时间频度一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。(2)时间复杂度在刚才提到的时间频度中...原创 2010-06-06 23:31:32 · 173 阅读 · 0 评论 -
网站优雅降级与渐进增强
常用两种策略:要么优雅降级(graceful degradation,一开始就构建站点的完整功能,然后针对浏览器测试和修复),要么渐进增强(progressive enhancement,一开始只构建站点的最少特性,然后不断针对各浏览器追加功能。参考:[url]http://lifesinger.org/blog/2008/10/understand-progressive-enhan...原创 2010-12-25 10:34:19 · 200 阅读 · 0 评论