笔记-《精通CSS-高级Web标准解决方案》(第二版)

《精通CSS-高级Web标准解决方案》(第二版)于2014年上市,该书的第一版是2010年引入国内,英文版则是2009年第一次问世。书中的很多技术方案在今天看来已经比较过时了,但其理念则是不变的。例如 $2.4 节“规划、组织和维护样式表”,作者介绍的方式是在一个大的CSS文件里,通过明显的大块注释与空行,将不同的模块、组件分割开来。现在这种方式已经很少采用,大都是借助于 less/sass 等工具,采用多文件编写源码、单文件引入的方式,来将模块与组件样式更好地分离。但理念与初衷都是一样的:减少模块耦合,使代码更清晰易维护。

PS:这本书我在2015年8月购买,但两年半后才开始认真读,真是印证了“买书如山倒,读书如抽丝” ~~ (说白了就是懒,哈哈哈……)。

整体而言,部分过时的技术细节并不会掩盖这本书亮丽的光华。恰当的示例图片非常精准地指出了CSS2.1里那些容易让人理解错误的关键技术。

《精通CSS-高级Web标准解决方案》(第二版)

Read More

Share

About ECMAScript Async Functions

Async Functions are introduced officially in ECMAScript 7 Spec, as the ultimate way to solve async code writting problems (especially the famous callback hell).

We can easily get the resolved value of a Promise with await operator.

Syntax

1
[rv] = await expression;

expression

A Promise or any value to wait for.

rv

Returns the fulfilled value of the promise, or the value itself if it’s not a Promise.

See also: await | MDN

Read More

Share

初探微信小程序开发

背景

  • 项目起始时间:2017-11-28
  • 前端人数: 3
  • 页面数: 6
  • 一期上线时间:2018-01-16

在我们开发的过程中,小程序的生态也不断变化。例如 <web-view> 最开始不支持其打开的 web 页面调起小程序页面,后来则新增了 JS-SDK 并在高版本的基础库里支持了这样的功能;再例如它的 IDE 不断优化升级,开发体验变好;页面的5级跳转限制,改为了10级;小程序体积限制由 1MB 扩大为了 2MB …… 总体来说,一直在朝着好的方向发展。

Read More

Share

2017年度小结

去年的总结在这里

2017年要结束了,我很怀念它。

(注:banner 图片拍摄于我租住了两年的房子的窗台,在某个天气极好的下午。)

Read More

Share

最少硬币找零问题的动态规划解与贪心算法解

最少硬币问题找零问题是说,已知某种硬币系统 [Ci, …],以及期望凑齐的找零值 Amount,找到硬币数量最少的那个找零方案:

∑NiCi = Amount 且 ∑Ni 最小

Read More

Share

Red-Black Tree

Catalogue
Share

Binary-Search-Tree in JavaScript

这里用 JavaScript 实现一个二叉搜索树。二叉搜索树可以很方便地进行排序。下面的实现比较简单,很容易就会出现非平衡二叉树。G.M. Adelson-Velsky 和 E.M. Landis 在 1962 年的论文《An Algorithm For The Organization Of Information》中提出了一种可以实现自平衡二叉树,后世称为 AVL 树。

除了 AVL 树,还有很多其他的平衡二叉树的实现,例如 AVL树,红黑树,B树,B+树,Trie树都分别应用在哪些现实场景中? 就是个不错的入门级参考,可以大致了解这些平衡树的特点、区别。看起来,红黑树是应用最广泛的。

Read More

Share

ImageMagick 简单入门

ImageMagick 是一款可以运行在 Linux/Unix/Windows/MacOS (现在甚至支持 iOS、Android)下的免费开源图片处理程序。使用 ImageMagick 可以进行图片的拉伸、裁剪、缩放、格式转换、生成 GIF 、添加文字/图案等各种操作。

安装

MacOS 下可以方便地使用 Homebrew 进行安装:

1
2
3
4
5
$ brew install imagemagick

# 查看使用帮助
$ man magick
$ man convert

magick 和 convert 应该是同一个程序。

ImageMagick 的最新版本目前已经是 7.* 以上了。建议安装最新版,因为之前它还暴露过了一个严重漏洞,在最新版本里该漏洞是已经修复了的。它的源码放在 Github 上面维护:https://github.com/ImageMagick。

Read More

Share

heap sort using javascript

Catalogue
Share

关于插入排序

Read More

Share