JavaScript 个性特点:编程语言界的平头哥
栏目: JavaScript · 发布时间: 5年前
内容简介:JavaScript 这家伙已经疯球了,什么都不在乎的。无论你把什么玩意儿丢给他,他都能给你摆平。根本不要在这位老哥面前提什么编译错误。就是一坨??? 老哥都能给你运行。什么,你在担心他会给出一个错误的结果?都给你结果了还要啥自行车?如果你担心结果会是错的,那自己用 jest 或 mocha 弄一个测试就结了。JavaScript 测试框架也是啥都不在乎。你用他测试啥都行。不要给我说什么依赖注入、接口过度泛化、反射机制!老哥跑测试就是一把梭!存根(stub),监视(spy),模拟(mock),抄起 sino
JavaScript 这家伙已经疯球了,什么都不在乎的。无论你把什么玩意儿丢给他,他都能给你摆平。根本不要在这位老哥面前提什么编译错误。就是一坨??? 老哥都能给你运行。什么,你在担心他会给出一个错误的结果?都给你结果了还要啥自行车?如果你担心结果会是错的,那自己用 jest 或 mocha 弄一个测试就结了。
JavaScript 测试框架也是啥都不在乎。你用他测试啥都行。不要给我说什么依赖注入、接口过度泛化、反射机制!老哥跑测试就是一把梭!存根(stub),监视(spy),模拟(mock),抄起 sinon 就是干!端到端测试用 webdriverio,API 测试用 lodash-match-pattern,稳如狗!
你说 JavaScript 邋邋遢遢、不够帅气?人家根本就不在乎好吧。你要是嫌弃,就用 eslint、standardize it、prettier 这些 工具 来给老哥打扮打扮吧。
平头哥 JavaScript 浑身是胆,根本不在乎你怎么看。在老哥这里不要提什么私有(private)变量、保护(protected)变量。你尽管检查对象、更改函数,管你啥时候。平头哥一身正气,从不藏着掖着。你问他为啥会这样?艺高人胆大啊!
JavaScript 老哥从不磨叽。等什么等啊,一看就不是平头哥的作风。JavaScript 从来不等那些数据库存取、API 调用什么的。错过了 await 关键字、没完成 Promise 对象,没关系!还是该吃吃该睡睡!
想来点静态类?老哥请 TypeScript 或 Flow 兄弟们来帮忙就成。不过你可能会觉得这有点像给平头哥戴个游泳圈。是有点违和,最后任何类型的声明都能把他轻松击败。(不过,现在还有人在乎“类型安全”什么的吗?)
平头哥喜欢用工具,JavaScript 也是。
last count( http://www.modulecounts.com/ )统计出,NPM 包的项目里有超过 800,000 个模块——大约是 Maven(Java)的三倍了。所以就算这里面的大部分模块和泥蛋一样又脏又丑又怎样,每个月有 180 亿的下载量呢,不服都不行。
平头哥啥都能吃:毒蛇、猛禽蛋、蝎子,来者不拒,最爱的是蜜蜂幼虫。是什么东西不重要,在平头哥眼里都是“吃的”。JavaScript 也能消化一切东西,管你喂给他什么,对他来说全是“对象”。更绝的是,解构和展开语法让 JavaScript 能把对象嚼得碎碎的,吃得更美味、更有营养。
JavaScript 才不在乎怎么和别的语言接口:protobuf 啦,swagger 定义啦,RESTish 啦,graphQL 啦,都招呼上来。老哥就是干这活的,大杂烩 API 把所有接口方式照单全收,交给他处理就行。
平头哥 JavaScript 家的小弟们
Lodash 也是个狠角儿。你要是觉得 JavaScript 中还需要用 for 循环 while 循环什么的,Lodash 就笑笑不说话。如果你在 JavaScript 里还用原始的 foreach、map、filter 等语句,Lodash 表示不想理你。如果你在做字符串处理、类型检查或给对象集变形时还在自己手动写代码,Lodash 只能对你说:对不起我们不认识。
在操控日期方面,momentjs 有自己的想法。他不会在意什么时区、时间存档,甚至连你在哪儿他都不在乎。无论你输入的日期格式有多蠢,他都能抽丝剥茧找到其本质所在,然后输出你所在时区的正确时间格式。
让我们来看看还有哪个老实人需要 ORM(对象关系映射),我们来嘲笑他。反正 JavaScript 不需要。关系型数据表本质不是 OOP 对象,它还想骗你多动脑筋。有了 knexjs,JavaScript 可以避免数据库 / 对象不匹配问题、有漏洞的 ORM 抽象问题,而且一般都能跳过冗余的 OOP 模型定义,因为有 SQL 数据模型就够了。
你是谁,你来自哪里,你现在要做什么?passport 模型能帮你回答这一深奥的哲学问题。
忘了你那神圣的前端 MVC 模式吧!React 以及他的朋友 redux,vue 等等已经彻底毁灭了这一误用的、过度泛化的教条。
还有一些工具如 bluebird、axios、babel 等等,这些兄弟们一起协助 JavaScript,让平头哥更加无所畏惧。
被用了那么多年,也被骂了那么多年,JavaScript 脸皮已经相当厚了。各种编程实践都离不开他,世界各地的开发者们也都在吐槽他。但无论如何,老哥在 GitHub 上每年有 230 万下载量,我管你怎么想叻~
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 逻辑式编程语言极简实现(使用C#) - 1. 逻辑式编程语言介绍
- 那些主流编程语言的知识:C 语言(一)
- 那些主流编程语言的知识:C 语言(一)
- 我的“第二”编程语言
- 编程语言特性:函数
- 编程语言的巅峰
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
爱上Arduino
Massimo Banzi / 于欣龙、郭浩赟 / 人民邮电出版社 / 2012-10 / 38.00元
《硬件开源电子设计平台:爱上Arduino(第2版)》全面透彻地介绍了arduino的相关内容,它会给你带来许多项目的点子,并帮助你顺利地实现从开始策划直到完成安装的全过程。由于《硬件开源电子设计平台:爱上Arduino(第2版)》是arduino项目合作创始人massimobanzi所著,其中一定融入了创始人对开源硬件的独到见解。《硬件开源电子设计平台:爱上Arduino(第2版)》内容完全考虑......一起来看看 《爱上Arduino》 这本书的介绍吧!