前言
本文提出了前端代码编写的一些思考方向,并从工作中总结了如何从一个初级前端进阶到高级前端,这不仅仅需要的是技术、知识量的提升,更是一种思维方式、代码编写风格的提升。
一段好的代码,像一首诗一样优雅
工程师的分类
我对前端工程师做了一个分类,非常主观
- 初级前端工程师:喜欢简单的方法调用、注释不简洁。失去性能的提升,代码的可读性,或者没有为项目使用最好的API或方法。
- 中级前端工程师:将函数压缩到尽可能少的行,使用智能编码技巧来减少代码量。代码可以工作,甚至比初级版本执行得更快,但可能更难理解或修改。
- 高级前端工程师:它们的代码简单明了,使用正确的API方法,确保良好的性能,但不会过早优化-并且易于理解和修改。
我经常想起之前的刚入行的一个前端前辈告诉我:
将所有使用
array.reduce的代码都删了,换成不使用array.reduce的代码,以便大家可读
你是否同意他的观点并不重要,重要的是他提出这个观点背后的情绪。
你写代码不是为了 装 B。代码的牛 B并不重要。只要可读就可以。保持代码简单,就不需要花太多精力去理解、修改,也不需要太多精力去处理。
所以我总结了简单代码的特性包括(但不限于)以下几点:
-
所有变量和函数都是根据其行为/功能命名,要容易理解。
handleLoginInfo 比 handleData 更好 -
代码中的任何函数的参数要合理的数量;没有一个函数大到需要五个或更多的参数。
-
适当的使用自定义的API、方法,ES或者库提供的API、方法要多于自定义的API、方法。
-
使用正确的数据结构(对象、数组、布尔、字符串)来表示使用的数据。
-
如果需要添加上下文和传达无法单独通过代码传达的含义,要写注释。
-
不使用 装 B快捷方法;不必让别人搜索晦涩难懂的JavaScript语法了解代码的功能。
-
在代码可能因为性能原因而可读性较差的地方,需要对此进行了解释、注释,最好是链接到一个文档/内部wiki。
全文完
谢谢!
开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 14 天