随笔之HelloWorld

就随便写点,把今天想到的写一写

CMD规范、AMD规范、common规范、和npm

花大把的时间去弄清楚这些概念没多大意义,弄清楚下面几点即可:

  1. sea.js和require.js的实现
  2. npm的包管理、模块引用机制,node模块的加载过程以及相关问题
  3. 没了,先不聊ES6

webpack对模块做了拓展,es6模块系统本身是不认识node_module文件夹的,是webpack做了增强,让import也能像node加载模块一样自动寻找模块。刚使用webpack的时候这个问题困惑了半天。

尽管现在已经不推荐过时的模块方案了,大家都默认在用es6, 但模块实现所涉及的编程思想一定要吃透。比如像node模块的循环引用问题,如果只会使用不知道原理就永远停留在照猫画虎的水平上。

对js操作DMO的理解

浏览器加载HTML和CSS之后,会对应生成两个(存疑到底有没有CSS树)抽象的树形对象在内存中,我不知道底层实现原理,但浏览器肯定维护了这两个实例。当用js去操作dom或操作样式时,本质上是在调用这两个对象(两个树)提供的接口。document就是dom树对js暴露的抽象对象,js通过document对象操作dom。这是在用封装和分层的角度去理解html、css和js之间的关系。

学不进去怎么办

看了张鑫旭写的文章学不进去,文中提到的没有立竿见影得到精神上的奖赏是一方面,但我学习时通常都是找不到自己想要的答案,各种教程、文章好像都是在给他们自己讲的,而且好像抄来抄去都是那几篇。有学习的激情是一方面,遇到一位好老师(人或文)也很重要。

一个程序员的功力

金庸把武侠小说里武功分为内功心法和外功招式。

外功是武学秘籍,鸠摩智曾经就用自己的心法去硬练六脉神剑,和他后期走火入魔无不相关。
在前端中,武学秘籍就像是各种层出不穷的框架和工具,我们用框架的同时要理解框架的设计理念和其精髓。最好能看一看底层代码实现,这样不至于乱用一气,更不至于走火入魔。

内功就是内力,靠的是时间的积累。
程序员的内功我暂时还总结不好,但一定是看起来比较基本的操作。比如说设计模式,各种算法,编程思想(js好像还没有一个通行的指导思想)等。

面对技术日新月异的变化,我们是不是更应该把心沉下来,要知道这世上的万事万物都是由最简单构成的。道教有句话叫一生二,二生三,三生万物(这句话是在知乎上看到一位前辈引用的),技术何尝不是。计算机网络发展了这么多年,基础原理性的东西根本没多大变化。作为一个软件工程师,只贪图眼前的快感是走不远的。

posted @ 2019-05-31 17:49  刘一口  阅读(157)  评论(0)    收藏  举报