《代码大全(第2版)》笔记

从今年4月初,到9月的最后一天,用了半年,终于断断续续地把这个大部头著作读完了。

按照阅读顺序来记录吧。虽然最开始并没有按照书页顺序来读,而是听从了译序里的“这本书适合谁看,该怎么看”的建议。先看了18章(初级程序员)、11章(低年级学生)、第8章(防御式编程)、第7章(自学
编程的人)、第13章(喜欢参与网上争论的人)。不过看完这几章之后,就开始顺序看了。

总体感觉,这本书是属于“软件工程”范畴的。译序里提到:“这本书讲的正是为了到达‘编码完成’这一重要里程碑所必需的软件构件技术,确切地说,就是如何编写高质量的代码。作者认为,应该首先为人编写代码,其次才是为机器”。这差不多就总结了这本书的主旨。

这个笔记最初是在豆瓣上面一点点记录的,顺便还发现豆瓣上面这本书的一个特点:目前其书评大概是隔2个月会有人写一篇;本书出版10年,共计90篇书评,平均每年9篇。相对于那些畅销书,这样的评论增幅的确较慢,估计也是因为本书非常厚重、比较偏技术类的缘故了。

即使那么多年过去了,程序员在工作时的常见心理表现似乎没什么大变化。程序员普遍自负,例如23.4节说的,“就算是已经看到了一个缺陷,你的自负还是会让你觉得自己的代码完美无缺”。~~

Read More

Share

关于 DOM Element style 属性的一件小事

这几日写了个小插件,因为对 DOM element 的 style 属性的使用不当,导致这个插件有点问题。具体来说,就是无法通过 element.style = 'display: none' 这种写法来隐藏元素。

因为DOM 标准规定 HTMLElement 的 style 属性是只读的。

附:插件地址

Read More

Share

HTML5 fileReader API (1)

本文介绍在使用 HTML5 fileReader API 之 readAsText 的基础用法及常见的问题与解决方案。fileReader 可以将文件内容异步地读入内存,然后提供给浏览器引擎。readAsText 方法将文件内容读取为纯文本。

Read More

Share

PostCSS 系列(1): 基本概念、原理与用法

【占坑文】

PostCSS 是一个可以极大提高前端工程师生产力的工具。

PostCSS:
A tool for transforming CSS with JavaScript.

Read More

Share

《你不知道的JavaScript》笔记&心得

这本书于2015年4月在国内出版,而2个月之后,ES6正式通过,成为国际标准。

ES6的许多特性也在本书中有所提到。例如块级变量声明,箭头函数,Object.keys()方法,Array.prototype.find()方法,属性名表达式,以及 class,等等。

个人认为,本书对 JS 的多处讲解,深度甚于《JavaScript权威指南》和《JavaScript高级程序设计》。

Read More

Share

这三个月

试用期时间:2015-12-10 至 2016-03-09.

终于知道了:大厂的程序员原来是这样工作的。

Read More

Share

记 2015

2014年折腾,但也不及2015年折腾。

Read More

Share

A Turning Point at the Age of 27

11月25号,去单位刷了欠下的债,拿到离职证明,吃了最后一顿工作餐,然后下午去实验室写了会儿代码,解决了第三方微信登录的问题,就撤了。

This is it.

Read More

Share

Git 学习笔记

本文记录一下自己在学习、使用Git时不断碰到的问题与解决方法。个人感觉最好的在线教材是 《Pro Git 2nd Edition(中文版)》。遗憾的是这本书尚无国内出版社出版发行,因此无法享受到纸质书阅读的快乐(除非自己打印了一本~~)。另外,《Git版本控制管理(第2版)》这本书也很不错,有纸质书可以读。

Read More

Share

关于在HTTP请求BODY中使用JSON格式

在使用 HTTP POST 或者 PUT 方法向服务器发送非multipart类型的数据时,有两种最常用的对消息主体进行编码的方法,它们分别对应不同的Content-Type

Content-Type 类型说明 示例
application/x-www-form-urlencoded 以 URLEncoded 的方式进行编码 name=test&sub%5B%5D=1&sub%5B%5D=2 解码后就是:name=test&sub[]=1&sub[]=2
application/json 消息主体是序列化后的 JSON 字符串,要求服务器端能够支持JSON {"name":"test","sub":[1,2]}

Read More

Share