八股之外
更新: 5/8/2025 字数: 0 字 时长: 0 分钟
最近背了一些八股,也看了一些有关八股的视频,对八股这个存在有了一些的理解,故而想要写下一篇文章,希望可以帮到别人。
为什么要背八股文?
在目前的就业环境下,大多数属于互联网基层的东西已经被开发出来了,现在进入行业的员工的很多时候的工作是维护老项目和增加新功能。在这样的场景下,更加要求一个程序员的随机应变能力——项目经理的需求该如何在原有的功能上实现?这个bug为什么会出现?这个bug该如何解决?
而作为一名应届毕业生,我们往往很难接触到这种场景,这种时候就需要一个人来告诉我们潜在的场景有哪些,而这就是八股文的意义。
八股文的缺点?为什么这是必然的?
八股文省去了阅读者开发项目与遇到问题的过程,直接从问题得到答案(甚至有的八股文没有问题而是直接给出答案让阅读者背下)。这种情况下阅读者往往不能理解八股文的内涵,只是短期记住了八股文的内容,在实际工作的过程中即使遇见了八股文中的场景也可能记不住,或者是无法通过背诵的八股文解决问题。
八股文的出现是必然的。
很多人会抱怨八股文的应试性,甚至不理解为什么要去搞这么应试的东西(曾经我也是这些人的一员)。
但我们仔细思考一下,
这个东西如果真的这么没有必要,为什么这么多企业面试依然会问八股文?
这其实是行业和教育的一个漏洞,目前计算机行业需要的是一个能够立刻工作的员工,很少还有公司还采用一对一or一对多的导师制度(中小厂可以说是几乎没有)。
在这种情况就要求应聘者在进入公司前就有足够的企业开发能力。这其中就包含
- 团队合作能力(大多为自己开发项目)
- 需求分析能力(需求是自己想的或是看的视频,不理解为什么这个产品存在这样一个需求)
- 业务实现能力(拿到需求后不理解为什么会有这个需求,这个需求为什么这么实现)
- bug排查与解决能力(遇到一个未知的bug不会排查和解决)
- .........
而八股文主要可以帮我们提升bug排查与解决能力,八股的主要内容是基础(这个东西是如何来的),原因(为什么要有这个东西/为什么会出现这个问题),和解决方案(这个问题如何解决)。这样可以让我们遇到一个问题时不至于束手无措。
为什么面试官知道我是背的仍然要问?
之前看到一个段子说:面试官清楚的知道我知道他知道我知道他知道我是背八股文出来的
虽然这样,但八股文仍然是目前面试中的一个重点项目,那为什么会这样呢?
首先就是原理速成和一些问题的解决方案,八股文的面试机制强制让开发者去了解底层原理,这对于长久来看肯定是由好处的
其次就是学习能力,八股文的询问过程其实在一定程度上能看出开发者有没有主动学习并且反思的能力
应该如何学习八股文?
(以下内容适合时间充裕者)
在我看来八股文的学习应该不止于只看答案,更多的是注重问题的来源以及什么时候出现这个问题。
也就是说,我认为在阅读八股时我们应该尽可能在脑中或者使用代码去复现八股文中的场景。进而还原从遇到问题到发现问题,再到思考解决方案最后解决问题的过程。
这个过程可能需要我们去主动的搜索文章,去补充更多八股之外的内容,甚至去考虑如何将八股中的内容用到我们自己的项目当中,进而避免一些问题的出现。