摘要: 为什么要CLI CLI 英文全称为Command Line Interface,是在图形界面普及之前人们与电脑的交互方式。例如我们经常在控制台敲的命令系统,或者linux的操作系统命令,或者自己定义的一些列电脑操作命名,凡是通过这种命令去与计算机交互的统称为CL 阅读全文
摘要: 浏览器 消息队列 我们之前在这篇文章中讲到过关于浏览器线程和进程的知识。这些知识在本文中将继续被用到。浏览器上的任务主要执行在一条线程上,我们称这条线程为浏览器主线程。在它上面执行这众多的任务:包括界面绘制,排版,用户手势/鼠标动作,处理滚动,用户输入,以及执行 阅读全文
摘要: ###开篇 我们之前在这篇文章里面讲过浏览器的事件循环,还提到事件队列,调用栈等浏览器的一些实现机制。但还有一些细节我们没有提到,这篇文章我们就来把这些细节补充。 帧和动画 你一定知道动画片是怎样制作的,没错,只需要很多张画满动画的纸张,只要这些纸张的动画情景是 阅读全文
摘要: 问题 有没有遇到这样的一个问题,为什么在某些设备上需要用到2倍图。当你的设计师过来问你的时候,你可能回答她:因为这些设备像素高,需要高清的图片才能显示清楚呢。事实上要搞清楚这个问题,我们需要知道的不仅仅是分辨率这么简单。为了弄清楚为什么要用2倍甚至三倍图这个问题 阅读全文
摘要: TL;DR 错误的缓存策略是如何抵消你所做的性能优化工作的。 缓存存在于客户端并且通过chrome或者其他抓包工具查看其状态信息。 客户端通过header中的各个字段做缓存的过期判断。 代理服务器上也存在缓存,并且使得我们在计算浏览器缓存时变得复杂了。 合理地配 阅读全文
摘要: Note: This series blog was translated from Nathan Vaughn's Shaders Language Tutorial and has been authorized by the author. If repr 阅读全文