您现在的位置:首页
--> 阮一峰的网络日志
• 数学常数e的含义
e是一个重要的常数,但是我一直不知道,它的真正含义是什么。...
"与其说我爱Javascript,不如说我恨它。它是C语言和Self语言一夜情的产物。十八世纪英国文学家约翰逊博士说得好:'它的优秀之处并非原创,它的原创之处并不优秀。'(the part that is good is not original, and the part that is original is not good.)"
• URL的井号
去年9月,twitter改版。一个显著变化,就是URL加入了"#!"符号。比如,改版前的用户主页网址为 http://twitter.com/username 改版后,就变成了 http://twitter.com/#!/username 这是主流网站第一次将"#"大规模用于重要URL中。这表明井号(Hash)的作用正在被重新认识。本文根据HttpWatch的文章,整理与井号有关的所有重要知识点。 一、#的涵义 #代表网页中的一个位置。其右面的字符,就是该位置的标识符。比如...
你是否想过,计算机为什么会加减乘除?或者更直接一点,计算机的原理到底是什么?Waitingforfriday有一篇详细的教程,讲解了如何自己动手,制作一台四位计算机。从中可以看到,二进制、数理逻辑、电子学怎样融合在一起,构成了现代计算机的基础。 一、什么是二进制? 首先,从最简单的讲起。 计算机内部采用二进制,每一个数位只有两种可能"0"和"1",运算规则是"逢二进一"。举例来说,有两个位A和B,它们相加的结果只可能有四种...
日本程序员norahiko,写了一个排序算法的动画演示,非常有趣。这个周末,我就用它当做教材,好好学习了一下各种排序算法。 排序算法(Sorting algorithm)是计算机科学最古老、最基本的课题之一。要想成为合格的程序员,就必须理解和掌握各种排序算法。 目前,最常见的排序算法大概有七八种,其中"快速排序"(Quicksort)使用得最广泛,速度也较快。它是图灵奖得主C. A. R. Hoare(1934--)于1960时提出来的。 "快速排序"的思想很...
我一直很难理解Javascript语言的继承机制。它没有"子类"和"父类"的概念,也没有"类"(class)和"实例"(instance)的区分,全靠一种很奇特的"原型链"(prototype chain)模式,来实现继承。我花了很多时间,学习这个部分,还做了很多笔记。但是都属于强行记忆,无法从根本上理解。
我最早知道庞小伟这个名字,是因为王建硕提到他。我一直很推崇Paul Graham的理念,现在有人愿意在国内尝试他的方式,我当然表示支持。再加上我对庞兄的经历很好奇,就说服他做一次书面访谈。
上周四,我收到Google的邮件,宣布关闭我的Adsense帐户。 "您好! 查看了相关记录后,我们确认您的 AdSense 帐户存在引起无效活动的风险。保护 AdWords 广告客户,使其免受无效活动的侵害是我们的责任,因此我们认为有必要停用您的 AdSense 帐户。您的未结余额以及 Google 的相应收入份额都将会全额退还给受到影响的广告客户。 此致 Google AdSense 小组敬上" 我看到这封信就傻了。为什么要关掉我的帐户?我什么也没...
Javascript语言的设计不够严谨,很多地方一不小心就会出错。举例来说,请考虑以下情况。 现在,我们要判断一个全局对象myObj是否存在,如果不存在,就对它进行声明。用自然语言描述的算法如下: if (myObj不存在){ 声明myObj; } 你可能会觉得,写出这段代码很容易。但是实际上,它涉及的语法问题,远比我们想象的复杂。Juriy Zaytsev指出,判断一个Javascript对象是否存在,有超过50种写法。只有对Javasc...
如何为代码选择开源许可证,这是一个问题。世界上的开源许可证,大概有上百种。很少有人搞得清楚它们的区别。即使在最流行的六种----GPL、BSD、MIT、Mozilla、Apache和LGPL----之中做选择,也很复杂。 乌克兰程序员Paul Bagwell,画了一张分析图,说明应该怎么选择。这是我见过的最简单的讲解,只用两分钟,你就能搞清楚这六种许可证之间的最大区别。
Firebug是网页开发的利器,能够极大地提升工作效率。但是,它不太容易上手。我曾经翻译过一篇《Firebug入门指南》,介绍了一些基本用法。今天,继续介绍它的高级用法。
今年是IETF成立25周年,ars technica有一篇介绍文章,回顾了它的辉煌成就。IETF的全称是"互联网工程任务组"(Internet Engineering Task Force),主要目标是协调制定互联网标准。 几乎所有重要的网络底层协议,都是由IETF制定的,比如TCP协议、IP协议、HTTP协议、等等。可以毫不夸张地说,没有IETF就没有互联网。 我一直以为,IETF与其他权力机构没有不同----一些人高高在上,另一些人服从指挥。但是,读完介绍文章以后,我震惊...
开发网页的时候,往往需要观察HTTP通信。我使用的工具主要有两个,在Firefox中是Firebug,在IE中是Fiddler。但是,一直听别人说,付费软件HttpWatch是这方面最好的工具。 前几天,HttpWatch的官方网志刊登了一篇好文章,澄清了一些HTTPS协议容易产生误解的地方。学习之后,我增长了不少网页加密通信的知识。 HTTPS的七...
• 最常见的电话号码
网上有许多电话号码,你知道最常见的是哪个?有个老外找到了答案,这个号码就是2147483647。 事情是这样的,我们知道,在计算机中,整数往往用4个字节保存。4个字节就是32位,如果第一位是符号位,那么只剩下31位,也就是说,这种方式所能保存的最大整数是2的31次方-1(因为要去掉零),即2147483647。 这个老外突然意识到,这是一个10位数,与美国电话号码的位数相同。于是,他就很好奇,214-748-3647会是谁的号码呢?
有人在Stack Overflow上发问,动手开发网站之前,需要知道哪些事情?不出意料地,他得到了一大堆回答。通常情况下,你需要把所有人的发言从头到尾读一遍。但是,Stack Overflow有一个很贴心的设计,它允许在问题下方开设一个wiki区,让所有人共同编辑一个最佳答案。于是,就有了下面这篇文章,一共总结出六个方面共计61条"网站开发须知"。我发现,这种概述性的问题,最适合这种集合群智、头脑风暴式的回答方式了。这也是我第一次觉...
目前,JSON已经成为最流行的数据交换格式之一,各大网站的API几乎都支持它。我写过一篇《数据类型和JSON格式》,探讨它的设计思想。今天,我想总结一下PHP语言对它的支持,这是开发互联网应用程序(特别是编写API)必须了解的知识。从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。一、json_encode()该函数主要用来将数组和对象,转换为json格式。
2009年底,Google发布了短网址服务goo.gl。Google声称:"......(这是)互联网上最稳定、最安全、最快速的短网址服务。"有人做了比较,证明确实如此。从上图可以看到,goo.gl的响应和跳转时间是最短的。除了速度快,goo.gl还提供详细的点击统计。比如,Yahoo首页的短网址是http://goo.gl/QuXj,那么它的统计数据就在http://goo.gl/info/QuXj。加上后缀".qr",还能得到这个网址的二维条形码,Yahoo的就是http://goo.gl/QuXj.qr。===...
• ARM的历史
本周,微软公司宣布,下一版Windows将正式支持ARM处理器。这是计算机工业发展历史上的一件大事,标识着x86处理器的主导地位发生动摇。目前在移动设备市场,ARM处理器的市场份额超过90%;在服务器市场,今年(2011年)就会有2.5GHz的服务器上市;在桌面电脑市场,现在又有了微软的支持。ARM成为主流,恐怕指日可待。难怪有人惊呼,Intel公司将被击败!与这场轰轰烈烈的变革相比,它的主角ARM公司却没有受到太多的关注,显得不太起眼...
• 产品五问
开发一个产品的时候,应该问自己五个问题: 1、给谁用? 2、他们用这个产品来解决什么问题? 3、这个问题对他们而言有多重要? 4、我们的方法是否足够简单方便? 5、他们要付出的代价与所得是否匹配?当我们对市场进展不够满意时,检视这5个问题比检视广告更有效。
随着国际化程度的加深,国内越来越多的公共场所开始提供英文标识。但是,中国人的英语水平普遍不高,导致大量的翻译错误。比如,下面四个真实的例子,你能看出错在哪里吗?(答案稍后公布) * 停车场:Park * 加油站:Oil Station * 汽车租赁店:Car Rent * 请勿拍照:No Photograph这种"中式英语"有一个专门的单词,叫做Chinglish。很多老外把它们当做笑话看。去年,上海召开世博会,为了维护国际大都市的形象,市政...
近3天十大热文
- [52] IOS安全–浅谈关于IOS加固的几种方法
- [51] Oracle MTS模式下 进程地址与会话信
- [51] 如何拿下简短的域名
- [50] 图书馆的世界纪录
- [49] android 开发入门
- [47] 【社会化设计】自我(self)部分――欢迎区
- [44] 读书笔记-壹百度:百度十年千倍的29条法则
- [44] Go Reflect 性能
- [42] 视觉调整-设计师 vs. 逻辑
- [41] 界面设计速成
赞助商广告