这样写代码,活活气死你leader和老板

Posted 小北哥哥和北妈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了这样写代码,活活气死你leader和老板相关的知识,希望对你有一定的参考价值。

大家好,我是北妈。

欢迎阅读,本文将告诉你,如何用我们的代码,气死老板们~

什么?删库跑路就完事了

那也弱爆了,这种是要负法律责任的,我们怎么能干违法的事情呢,我们要合法的做事,然后 "惊艳" 所有人

话不多说,我们直接开始!

正文

降低代码的复用性

日常写业务代码,好枯燥,而且大部分时间都在思考,最后看代码产出,发现我们的 diff 或者新增的代码少的可怜

这怎么行呢,显得我们的工作量严重不达标啊

平常一个文件,也就几百行代码,身为一个合格的前端攻城狮,这显然是不行的,无脑堆代码量

代码的可复用性,会大幅减少我们的代码量,所以开发时候,我们一定要减少所谓的复用能力,提高我们的工作产出

你们一个文件就几百行代码,有时候一个页面需要好多文件

而我不一样,我这里一个文件少则几千行, 多则上万行代码,而且,单个文件解决所有问题~

什么,凑不出这么多代码? 举例:


尽可能的不抽取公共方法,功能都是哪里用,就在哪里写

抽出来的方法,很多地方都用,如果需要特定的更改,不改公共方法用不了,改了怕其他地方出错,多难受

不能抽啊,抽了还怎么挣钱!

另外,还有一个辅助神技-if else

疯狂 if-else

只要能用if else 解决,那就不要考虑别的方式,if else 嵌套判断就完事了

这样在判断的分支足够复杂,我们可以获得指数级别增长的 if-else 代码

同时,相信自己,只要嵌套的层级够多, 就没有我判断不出来的东西!

写代码秀操作

避免写很容易就能读懂的代码,使用酷炫的别人看不懂的代码,这样才能展示我们的技术性,体现我们的逼格

让自己的代码有深度

如下图,可以尝试思考一下他是用来干什么的

好了,我摊牌了,这只是用来测试奇偶数的方法

是不是逼格瞬间提升了

如果你嫌我代码写的啰嗦,ok没问题,我可以更精简

位运算符

还是奇偶数的例子,很多人可能第一反应是 对2取余

但这个要做什么太一目了然了

代码可以少,逼格不能掉

如上图,如果这样看代码就得稍微绕一下下

实际上这就是把 i 转成二进制数后,取二进制数的最低位

是不是又瞬间“高大上”起来了

不得不说,代码少了很多,类似的操作还有极其复杂的正则表达式

复杂的正则代替简单的代码

在工作中,尽可能使用复杂到让人看不懂的正则表达式,疯狂的秀操作

“yyyy-mm-dd“ 格式的日期校验

如果使用诸如 dayjs 或者 momentjs 这样的第三方提供的 format 方法

简直弱爆了

使用下面这行正则,“轻松”帮你搞定日期校验~

^(?:(?!0000)[0-9]4-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]2(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$

easy work,减少前置思考

很多时候,我们可能都不是在疯狂的写代码,而是在思考

但有时候有那么一些思考,往往会占用我们大量的时间

导致工作的一点也不愉快

“优雅”的变量命名

日常写代码的时候,涉及到方法、变量、类名的命名,真是一个让人痛苦的事情,

苦死冥想整出来一个名字, 严重影响了我们的工作心情

变量名明我们就用最简单的方式来,比如数组就用arr,对象就用obj,字符串就用str,什么,你怕命名重复,别慌,我们还有数字后缀,例如 arr1,arr2...

只要数字没尽头,我们的命名就永远不会重复!

怎么样,是不是感觉再也不会因为各种命名而发愁了~

let const 怎么选?

es6语法出来了let const

无形中增加了我们的工作量:

思考什么时候用let,const

拿捏不定?一律不用拿捏,统一用 let 就好了,简单粗暴,高效决策!

同样的还有

AnyScript,用过都说好!

TypeScirpt 已经普及了

但是很多时候,我们对变量的类型总是很苦恼

这时候就有了TS提供给我们的法宝 - any

类型什么的,通通用 any 就好了,反正也不会出问题

甚至有个小技巧偷偷告诉你

ts 飘红的话

tsconfig error 全关掉如果有 eslint, 也全部设置 off 就行

不花费时间在“无用”的工作上

拒绝注释

之前提到过写代码的时候要秀操作

目的就是为了提高我们的逼格

但是

写了注释,还怎么提现我们高超的代码水平,人人都能看懂的,那还叫大师嘛

写注释,不存在的,这辈子不可能写注释

“实用主义”

在开发过程中,难免会遇到一些比较通用的阻碍

这时候,去网上找别人已经写好的第三方依赖包

这种包,网上一搜一大堆

既然是别人已经写好的包,那我们就完全没有研究的必要了

人家开发好了我们直接引过来用就好了,不用再去仔细琢磨什么安全性之类的

能用,好用就行了,其他的不是咱们应该关心的!


数据的加密

我们经常会被提到,一些数据要做加密

比如在url中避免明文传输重要数据

控制台打印用户信息

等等...

但这在有时候无疑增加了我们的“工作量”

本来可以很直观的一眼看到东西,加密以后就会变的很麻烦

所以

数据加密什么的,可以不需要那么严格对待

error还用处理?

error完全可以不用考虑,等 catch 到 error 了再说

后面遇到问题,自然有其他人来处理,至于排查问题难度,那就另说了

绝对不做“没有用”的事,让我们的工作,“轻松而又优雅”~

统统写死,取代程序的逻辑关联

在程序设计的时候,考虑逻辑关联性是十分痛苦的

往往一个很简单的需求,考虑到未来的扩展

就变的很棘手

这怎么行呢

一些数据,逻辑设计等等,写死就好了,只要当前能用行!


定位,YYDS

画页面的时候,总有那么一些东西,位置和我们预想的差点意思,调样式辛苦又麻烦

这时候不用考虑语义化,或是标准的页面排版,直接使用我们的好朋友 “position: absolute” 就行了

画页面,只要遇到有位置要求,一律用定位解决,省时又省力

拥抱 “Magic Number”

无论是写代码的时候,还是写样式的时候

关联性的逻辑代码往往都比较复杂

相反

直接用具体的数值,会更容易,且更快速的实现我们想要的目的

未来的开发或者程序的维护者看不懂意思?不好意思那不管我的事~

简单粗暴的写代码,更 "高效" 的开发,这才符合我们的 "优秀" 开发人员的气质~

无痕开发,然后“惊艳”所有人

踩坑的经历,不能记录

写代码,难免遇到各种各样的问题,踩坑什么的,可能会花费大量的时间去修复,去趟浑水,最后找到正确的路

这时,有人可能就要说了: 把自己踩的坑,遇到的问题,要及时记录下来,避免重复造车轮

切记!踩过的坑,不要记录,留一个“惊喜”给其他人

首先,这是我们辛苦的试验的成功,不能让人轻易的窃取了胜利果实

其次,踩坑,解决问题这是最能锻炼技能,提高技术水平的方式

如果我们告诉别人不要踩坑,那他岂不是成了温室里的花朵,经不住风雨的摧残了么,我们要帮助其他同学,不能伤害他们

个性化 DIY 第三方包

还有

使用第三方包的时候,发现不能满足我们的需求怎么办

不要慌张

我们直接进入 node_modules 里面去,修改第三方包的源码

根据我们的需求手动进行修改,方便又快捷啊兄弟们!

项目文档随便写

同样的

项目文档能精简就精简,不用写得那么详细

完成正常的业务开发就行了,哪有时间去搞这种文档啊乱七八糟的,还不一定有人看的

别让 package-lock.json 限制我们视野

其他的

例如

package-lock.json 这个文件,抓紧时间删了

想必各位都知道他是干什么的,各种第三方包的版本锁住了,其他人还怎么体验新版本,还怎么紧跟潮流?

快去删了~


当你完成上述各种操作,相信你的leader已经处在崩溃边缘了,这时候,我们再轻描淡写的提出离职,然后准备简历,面试下家,换个地儿继续气死leader~

写在后面

上述所说的,都是开玩笑的

标注出来的重点部分,都是我们在工作中,会导致严重后果的行为,希望我们无论是在开发过程中,还是日常学习的时候,都应该注意这些点

所以

千万不要这么干!

千万不要这么干!

千万不要这么干!

在我们前端开发的日常工作中,很多不在意的小细节,有可能就是下一个重大问题的伏笔

多学习别人真正优雅的代码,你就是下一个前端大🐮~


作者:BEFE团队
链接:https://juejin.cn/post/7074784476429025294
来源:稀土掘金

=========

最后重要提示:北妈私人微信号,每天围观北妈朋友圈和群,还可以咨询。

还没加北妈私人好友的,赶快啦!今天只开放 50好友位,这个号很快又加满了。

请备注:城市~职业~昵称

以上是关于这样写代码,活活气死你leader和老板的主要内容,如果未能解决你的问题,请参考以下文章

气死了

老板问:多长时间搞定?开发说3天,測试说2天,然后……

Team Leader 究竟要不要写代码?

Team Leader 究竟要不要写代码?

Team Leader 究竟要不要写代码?

Team Leader 究竟要不要写代码?