首页
学习
活动
专区
工具
TVP
发布

阮一峰的网络日志

专栏成员
468
文章
679183
阅读量
136
订阅数
每周分享第 17 期
(图片说明:2018年6月的气温与1951-1980年平均气温的对比,来自推特@SimonLeeWx)
ruanyf
2018-08-21
6580
微信的历史
上周,香港的《南华早报》有一个长篇报道,介绍了微信如何变成中国用户最多的手机 App。
ruanyf
2018-08-21
3K0
每周分享第 13 期
自从我认定,未来二三十年,人类社会将有天翻地覆的大变。我的所有时间,就都投在技术领域了。因为变化是技术引起的,只有了解技术,才可能应对变化。
ruanyf
2018-07-30
8450
朴素贝叶斯分类器的应用
生活中很多场合需要用到分类,比如新闻分类、病人分类等等。 本文介绍朴素贝叶斯分类器(Naive Bayes classifier),它是一种简单有效的常用分类算法。 一、病人分类的例子 让我从一个例子开始讲起,你会看到贝叶斯分类器很好懂,一点都不难。 某个医院早上收了六个门诊病人,如下表。   症状  职业   疾病   打喷嚏 护士   感冒   打喷嚏 农夫   过敏   头痛  建筑工人 脑震荡   头痛  建筑工人 感冒   打喷嚏 教师   感冒   头痛  教师   
ruanyf
2018-04-19
6420
Compass用法指南
几个月前,我介绍了Sass的用法。 Sass是一种"CSS预处理器",可以让CSS的开发变得简单和可维护。但是,只有搭配Compass,它才能显出真正的威力。 本文介绍Compass的用法。毫不夸张地
ruanyf
2018-04-13
1K0
HTTPS 升级指南
上一篇文章我介绍了 HTTP/2 协议 ,它只有在 HTTPS 环境才会生效。 为了升级到 HTTP/2 协议,必须先启用 HTTPS。如果你不了解 HTTPS 协议(学名 TLS 协议),可以参考我
ruanyf
2018-04-13
1.4K0
Freebase.com 介绍
3个月前,就在freebase.com上线的第二天,我在日志里惊呼"这将是互联网上继Wikipedia之后又一个杀手级的应用"。可惜当时freebase.com不对外开放,我不能进去看个究竟。 上个星期,我终于得到了它的邀请信,成为了注册用户。于是,我将这个网站初步研究了一下。 Freebase的作用 首先,我来说一下,这个网站到底是干什么的。 简单说,Freebase是个类似wikipedia的创作共享类网站,所有内容都由用户添加,采用创意共用许可证,可以自由引用。两者之间最大的不同在于,Freeba
ruanyf
2018-04-13
1.2K0
Systemd 定时器教程
Systemd 作为 Linux 的系统启动器,功能强大。 本文通过一个简单例子,介绍 Systemd 如何设置定时任务。这不仅实用,而且可以作为 Systemd 的上手教程。 一、定时任务 所谓定时
ruanyf
2018-04-12
1.1K0
每行字符数(CPL)的起源
前几天,我收到网友小龙的Email。 他想与我讨论一个问题: "各种计算机语言的编码风格,有的建议源码每行的字符数(characters per line)不超过72个,还有的建议不超过80个,这是
ruanyf
2018-04-12
1.2K0
DNS 原理入门
DNS 是互联网核心协议之一。不管是上网浏览,还是编程开发,都需要了解一点它的知识。 本文详细介绍DNS的原理,以及如何运用工具软件观察它的运作。我的目标是,读完此文后,你就能完全理解DNS。 一、D
ruanyf
2018-04-12
1.4K0
Stack的三种含义
学习编程的时候,经常会看到stack这个词,它的中文名字叫做"栈"。 理解这个概念,对于理解程序的运行至关重要。容易混淆的是,这个词其实有三种含义,适用于不同的场合,必须加以区分。 含义一:数据结构
ruanyf
2018-04-12
7990
防止网页被嵌入框架的代码(续)
两年前,我写过一段代码,防止网页被嵌入框架(Frame)。 <script type="text/javascript">   if (window!=top) // 判断当前的window对象是否是top对象   top.location.href = window.location.href; // 如果不是,将top对象的网址自动导向被嵌入网页的网址 </script> 这段代码是有效的。但是,有一个问题:使用后,任何人都无法再把你的网页嵌入框架了,包括你自己在内。 于是,我今天就在考虑
ruanyf
2018-04-12
1.2K0
require() 源码解读
2009年,Node.js 项目诞生,所有模块一律为 CommonJS 格式。 时至今日,Node.js 的模块仓库 npmjs.com ,已经存放了15万个模块,其中绝大部分都是 CommonJS
ruanyf
2018-04-12
8510
IntersectionObserver API 使用教程
网页开发时,常常需要了解某个元素是否进入了"视口"(viewport),即用户能不能看到它。 上图的绿色方块不断滚动,顶部会提示它的可见性。 传统的实现方法是,监听到scroll事件后,调用目标元素(
ruanyf
2018-04-12
1.8K0
asm.js 和 Emscripten 入门教程
Web 技术突飞猛进,但是有一个领域一直无法突破 ---- 游戏。 游戏的性能要求非常高,一些大型游戏连 PC 跑起来都很吃力,更不要提在浏览器的沙盒模型里跑了!但是,尽管很困难,许多开发者始终没放弃
ruanyf
2018-04-12
2.3K1
神经网络入门
眼下最热门的技术,绝对是人工智能。 人工智能的底层模型是"神经网络"(neural network)。许多复杂的应用(比如模式识别、自动控制)和高级模型(比如深度学习)都基于它。学习人工智能,一定是从
ruanyf
2018-04-12
4310
Javascript定义类(class)的三种方法
将近20年前,Javascript诞生的时候,只是一种简单的网页脚本语言。如果你忘了填写用户名,它就跳出一个警告。 如今,它变得几乎无所不能,从前端到后端,有着各种匪夷所思的用途。程序员用它完成越来越
ruanyf
2018-04-12
9190
Javascript继承机制的设计思想
我一直很难理解Javascript语言的继承机制。 它没有"子类"和"父类"的概念,也没有"类"(class)和"实例"(instance)的区分,全靠一种很奇特的"原型链"(prototype ch
ruanyf
2018-04-12
6170
12种不宜使用的Javascript语法
这几天,我在读《Javascript语言精粹》。 这本书很薄,100多页,正好假日里翻翻。 该书的作者是Douglas Crockford,他是目前世界上最精通Javascript的人之一,也是Json格式的创造者。 他认为Javascript有很多糟粕。因为1995年Brendan Eich设计这种语言的时候,只用了三个月,很多语言特性没有经过深思熟虑,就推向了市场。结果等到人们意识到这些问题的时候,已经有100万程序员在使用它了,不可能再大幅修改语言本身了。所以,Douglas Crockford决定,
ruanyf
2018-04-12
6590
五个为什么(译文)
昨天晚上,我终于把 More Joel on Software 翻译完了。 谢天谢地,总算可以摆脱这本书了。 唯一的感觉就是特别倦怠......检查完译稿以后,我一分钟也没等,立刻用Email发给了编辑,然后倒头就睡,直到刚才起床。此书的编辑工作量很大,但愿一切顺利,可以在年底前上市。 下面的文章是此书的第35篇,也就是倒数第2篇。它介绍了一种很好的工作方法,就是说,当你遇到问题的时候,要一连问5个为什么,不停地问,直到找到根本原因为止,我觉得真的很值得借鉴。 ======================
ruanyf
2018-04-12
7880
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档