最近在教授前端小白学员编写一些简单的网页。在这个过程中发现了小白们比较容易遇到的一些问题或者坏习惯,在这里对它们进行一一解释。
文件名命名
有些学员的文件命名是这样的:
除了网页的内容外,所有的东西都应该用英文,而不是拼音。
原因有如下几点:
- 编程不是一个人的活动,是群体活动。我们使用的编程语言、框架和库,几乎全部都是英文。使用中文,你的协作者会难以理解你的代码。而且中英混搭会让代码阅读困难。
- 使用拼音和使用汉字基本上没有什么区别,甚至还不如汉字直观。
- 拼音很难加音标,而且即使能加音标,也很难表达真正的意思,因为同音词太多,它存在多义性,比如 heshui,你不知道它到底是在表达喝水还是河水。
- 使用拼音会让你显得非常不专业。
- 坚持使用英文编程,有利于提高英语水平。
如果英语不好,刚开始可能会难以忍受,但是一旦熬过去开始这段时间,坚持下来,将会是长期的回报。
如果你英语实在是非常差劲,可以借助一些翻译软件。比如世界上最好的翻译网站:translate.google.com/,虽然是 Google 的域名,但是大陆并没有墙。
不止是文件名,变量、函数等事物都应该使用英文命名。
使用英语,越早越好。
文件类型命名
有些同学的文件命名是这样的:
文件命名的问题上面已经解释了,这里主要来看文件后缀名的问题。
应该使用小写 .htm/.html 结尾。
原因有如下几点:
- 不同的操作系统处理大小写是不一样的。Windows/Mac 系统大小写不敏感,Linux 系统大小写敏感。统一命名方式会具有更好的移植性。
比如我们有如下目录结构:
├── cat.html
├── dog.html
复制代码
下面的代码在 Mac/Windows 系统上正常。
<a href="./Dog.html">跳转到狗的页面</a>
复制代码
但是在 Linux 系统上会出现 404。
我们开发时通常是在 Mac/Windows 系统,这时问题很难暴露,但是部署时通常是在 Linux 系统,就容易导致开发时正常,部署时异常的不一致性。
- 易读性,事实证明小写的单词更易于阅读。
- 便捷性,文件名和后缀名都保持小写,不需要额外按下 Shift 键了。
- htm 和 html 的区别是,在老的 DOS 系统上,文件后缀名最多只支持 3 位。所以很多语言都会把文件后缀名限制成 3 位以内。现在的操作系统已经没有这个问题了,所以 htm 和 html 的作用是完全一致的。如果你追求简洁一点,那么使用 htm 时完全没问题的。
代码格式化
有些同学的代码是这样的:
VSCode 提供了 prettier 插件,我们可以使用它对代码格式化。
代码格式化有以下优点:
- 代码格式化后更易于阅读和修改。比如它会自动帮你添加空格、对齐、换行等。
- 不需要去刻意学习代码样式了,代码格式化工具会帮你做好,并且在这个过程中你会潜移默化的学会怎么样调整代码样式。
- 使用统一的代码格式化,可以帮助大家在协作时保持一致,不会有比必要的争议。
- 新人加入项目时也可以更容易地融入到项目,不会看到风格迥异的代码。
- 在代码合并的时候也可以减少冲突的发生。
建议一定要开启代码格式化。
补充说明
这部分和文章内容无关,是针对评论区进行补充。
掘金没有评论置顶功能,我没办法逐一回复评论区。所以只能在文末进行统一解释。
很多人在评论区说本文水,或者在拿拼音的事情抬杠。本来我不想解释,但是负面评论的人确实不少。
我说两点。
第一,文章标题开头四字明确表明目标群体是前端小白,小白是什么概念能明白吗?一定是「xxx源码解读」才是干货硬货?
第二,关于中文好还是英文好,我不想继续争论。我从业多年,看过无数项目源码,从后端 Java JDBC、Spring、JVM、Go 到前端 React、Redux、Webpack、Babel,无一例外全是英文。或者你随便找个初具规模的互联网中大厂或者外企的程序员,看看他们公司是不是有不让用拼音和汉字的规范。
程序员群体普遍的毛病就是固执己见。永远只是站在自己的视角去观察世界,看到的永远都是自己想看到的。然后去贸然指责,这样真的会显得自己很没有修养,而且很无知。
哪怕做不到感同身受,也应该给予应有的尊重,哪怕难以理解,也不要随意贬低。这是做人的基本修养。