手撕系列文章-序言

author author     2022-10-04     311

关键词:

一.有感而发

  作为一名前端搬砖者,经常出现这种场景:一个npm install 下去,瘦小的工程文件夹瞬间变成了大胖子(这尼玛要是现金这么给该多好)。

  没错,前端开发就是如此,大量的第三方库,瞎了无数的开发者,遇到一个功能,查查第三方库,看看api,一个npm install,然后拿来就用。作为功能开发,不重复造轮子,无可厚非,但长此以往,对于前端工程师来说,无疑是一种束缚,束缚了解决问题的思维,束缚了对代码艺术的想象力。

  我在这条不归路上,也困惑了很久,熟练地捣鼓第三方库,认为玩得游刃有余,但真正需要自己设计上层的框架或者解决底层的细节时,显得无比吃力。我恍然大悟:熟练的使用第三方库,的确扩展了解决问题的路径,但真正成为高手,必须要了解其本质,只有庖丁解牛,才能做到伸缩自如。

二.出发点

  我曾经尝试写几个框架解决自己的需求,兴高采烈地在github上创建完工程后,发现原来自己的想法早有人开始干了,抑或是一些先进的框架,稍作变通就可以解决我要的问题。

  我深刻地揭露自己的私心:想通过一两个开源项目来提高自己的竞争力,这是一个积极,向上的想法(听起来真的很有理),然而,在我们没有达到足够熟练的情况下,愤然开了那么一个烂尾的工程,是不是又有点浪费资源呢。

  于是,我深刻反思,与其生憋框架浪费资源,为什么不能好好分析优秀的代码呢?

  用了那么多好的第三方框架,但从来没有静下心来分析一下源代码(一个简单的fork而已)。

三.一波鸡汤

  认真分析源代码,才能真正的体会到语言的精髓,领略到奇技淫巧的美。

  对与工作中,我们经常会遇到一些问题,使用第三方库显得臃肿,自己写又疏于考虑,这时分析源代码就成了非常好的办法,取其可用,除其多余,代码也变得灵巧。

  嗯,分析源代码就如同吃鸡,一块一块撕下来,细细品味,再沾个小料,变成了自己的味道。

  记住,一定要用手撕。

成为架构师0.序言

欢迎大家进入《成为架构师》系列文章,这是一篇一年后重写的序言。01缘起在2022年初的时候,我某平台发表过一篇《为什么一个网站需要那么多技术人员?》,其中讲述的是一个网站或者app背后为何需要成百上... 查看详情

手撕汇编。。。(代码片段)

汇编系列文章已经更新了三篇,每一篇都是笔者用心总结,希望对你有帮助手把手教你汇编Debug爱了爱了,这篇寄存器讲的有点意思之前的文章我们主要聊了一些基本的汇编指令,并且通过一个名为Debug的调试软件... 查看详情

[新星计划]python手撕代码|十大经典排序算法(代码片段)

文章目录●冒泡排序●选择排序●插入排序●快速排序●堆排序●归并排序●希尔排序●计数排序●桶排序●基数排序系列文章https://blog.csdn.net/cpen_web/category_11089219.html排序算法是《数据结构与算法》中最基本的算法之一。常见... 查看详情

java自学序言

...!    这是作者本人自学Java编程开发的一系列文章,不具有一定的权威性,也算是自己一个人的学习笔记和总结,希望自己通过博客的形式将我自己的学习效率得到提高。如自学的稳重存在不足或错误的地方希望... 查看详情

❤️手撕这十道hivesql题还不能吊打面试官,却能保你不被吊打❤️推荐收藏(代码片段)

全网最详细的大数据Hive文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章前言HiveSQL十题第一题1、需求2、数据准备3、查询SQL4、执行结果第二题1、... 查看详情

为什么要用hashmap?这样回答面试官直呼内行手撕hashmap系列(代码片段)

少说话多办事,我们直接进入正题!文章目录一.为什么用HashMap?二.HashMap的工作原理是什么?三.有什么方法可以减少碰撞?四.HashMap中hash函数怎么是实现的?五.拉链法导致的链表过深,为什么不用二... 查看详情

手撕stlmap和set(代码片段)

map和setsetset的使用举例multisetmultiset的使用mapmultimapmultimap的使用红黑树模拟实现STL中的map与set红黑树的迭代器改造红黑树红黑树的代码(改装后)set的代码map的代码vector、list、deque……称为序列式容器——push系列pop系列ma... 查看详情

手撕stlmap和set(代码片段)

map和setsetset的使用举例multisetmultiset的使用mapmultimapmultimap的使用红黑树模拟实现STL中的map与set红黑树的迭代器改造红黑树红黑树的代码(改装后)set的代码map的代码vector、list、deque……称为序列式容器——push系列pop系列ma... 查看详情

resources&&learningproject

掘金前端查缺补漏掘金前端必读掘金前端100问面试官系列CSS面试官系列JS面试官系列ES6面试官系列React面试官系列网络手撕JS手撕算法手撕数据结构 查看详情

resources&&learningproject

掘金前端查缺补漏掘金前端必读掘金前端100问面试官系列CSS面试官系列JS面试官系列ES6面试官系列React面试官系列网络手撕JS手撕算法手撕数据结构 查看详情

手把手写c++服务器(29):手撕echo回射服务器代码(代码片段)

...】 前言:上一讲《手把手写C++服务器(28):手撕CGI通用网关接口服务器代码》讲解了如何利用复制文件描述符dup重定位标准输出,写一个简单的CGI通用网关服务器。今天我们主要利用splice来实现一个简单的echo回... 查看详情

手把手写c++服务器(28):手撕cgi通用网关接口服务器代码(代码片段)

 本系列文章导航:手把手写C++服务器(0):专栏文章-汇总导航【更新中】 前言:前文《手把手写C++服务器(26):常用I/O操作、创建文件描述符》《手把手写C++服务器(27):五大文件描述符零拷... 查看详情

手把手写c++服务器(30):手撕代码——基于tcp/ip的抛弃服务discard(代码片段)

...务器和CGI网关服务器《手把手写C++服务器(29):手撕echo回射服务器代码》《手把手写C++服务器(28):手撕CGI通用网关接口服务器代码》。discard作为做简单的T 查看详情

《手撕链表题系列-7》链表的回文结构(代码片段)

前言本系列主要讲解链表的经典题注:划重点!!必考~链表分割牛客链接:链表的回文结构_牛客题霸_牛客网(nowcoder.com)题目描述:对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法&... 查看详情

redis系列3——redis哨兵持久化主从手撕lru

你只管努力,——剩下的交给时光。面试开始三个大腹便便,穿着格子衬衣的中年男子,拿着三个满是划痕的mac向你走来,看着快秃顶的头发,心想着肯定是尼玛顶级架构师吧!而且还是三个,但是还... 查看详情

《非线性泛函分析导论(序言):实践中的变分问题》

...bsp;83人赞同了该文章这篇文章是《非线性泛函分析导论》系列文章的大纲。泛函分析是所有基础数学中最贴近工程技术实践的一门学科。我做过一段调查:在工科硕士生中,最受青睐的数学课程是矩阵论和最优化理论,其次是数... 查看详情

❤️手撕这十道hivesql题还不能吊打面试官,却能保你不被吊打❤️推荐收藏(代码片段)

全网最详细的大数据Hive文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点。目录系列历史文章前言HiveSQL十题第一题1、需求2、数据准备3、查询SQL4、执行结果第二题1、... 查看详情

硬核来袭|2万字+10图带你手撕stl关联式容器源码

本篇已同步收录GitHub仓库,这里有小贺的源码阅读笔记:https://github.com/rongweihe/CPPNotes/tree/master/STL-source-code-notes大家好,我是小贺。鸽了好久的 STL源码系列,这周开始更新,还剩最后两篇,分别是关联式容器和STL基本算法。... 查看详情