关于源码和算法 大家怎么看?

2020-04-10 11:03:31 +08:00
 zc1249274251

最近面试比较频繁,做 Java 这块 感觉基本绝大部分都是 Spring 全家桶了,加上 Redis 、MQ 、Mysql 等等,但很多时候在二面、三面时候开始会问算法、还有一些 Spring 源码、Mq 源码等等一些东西,有点没明白,真的有必要这么死扣源码吗?还有感觉工作中接触算法比较少了,这个也有必要吗?

4875 次点击
所在节点    程序员
38 条回复
littlewing
2020-04-10 11:24:07 +08:00
并不是要死抠源码,而是你要知道你用的东西的原理,不能是只会用
maemual
2020-04-10 11:28:01 +08:00
说白了就是看你有没有上进心,有没有探索原理的欲望。
crackhopper
2020-04-10 12:51:52 +08:00
工作中确实用的比较少。但从公司角度考虑,如果公司 hc 有限、应聘者很多,怎么区分应聘者?所以源码、算法这些主要是用来区分人的,并不代表工作用到。一般到这种级别区分人,就意味着岗位的竞争可能比较激烈。
nnqijiu
2020-04-10 13:04:56 +08:00
面试造航母,工作拧螺丝。说白了就是筛选人的
shawndev
2020-04-10 13:12:08 +08:00
根据我的总结,每一个刁钻的产品经理背后,都有一个需要偶尔需要挖掘源码的开发。如果一次都没有,很可能因为你不是这个产品的核心开发。
hantsy
2020-04-10 13:25:40 +08:00
基本上是 Spring 全家桶?太以偏概全了。Java 的世界不要太丰富,盯着一个 Spring 不要枯燥了。
TwoDogSon
2020-04-10 13:38:51 +08:00
最近也在备战 啃源码 啃着啃着发现这玩意 有点像从英文文章里面学词组 语法的感觉 人家这块为啥这么用 以后我遇到类似的是不是也可以用这种方式来实现(主流框架 源码什么的作者比我 nb 多了)换个思路想 都想接手的代码不是烂摊子 那么是不是有看过源码主流框架的人 写出烂摊子的概率更小一些呢 最近啃着啃着还挺有趣的 安利一个 draw.io 然后搭配 googlg drive 存储 祝大佬早日早到如意的工作~
stiangao
2020-04-10 13:49:20 +08:00
杠杆原理大家都知道,四两拨千斤,但是如果你不知道呢,撸起袖子就开干,so~
mazai
2020-04-10 14:17:32 +08:00
都说面试造航母,工作拧螺丝,正儿八经的让你上去造航母你也得造的出来吧?
Jooooooooo
2020-04-10 14:21:15 +08:00
你换到面试官角度就懂了
fkdog
2020-04-10 14:23:40 +08:00
@crackhopper 非大公司专业面试的话,大部分面试官也是随便问问,或者网上找的面试题。
大部分面试官的水平其实也不咋的,和面试者 5 5 开。
fkdog
2020-04-10 14:25:45 +08:00
@TwoDogSon 研究开源框架源码对你的业务编码能力并没有多大的帮忙。
业务代码写的乱往是逻辑混乱、业务理解不到位、应付之类的原因。
Orenoid
2020-04-10 14:35:25 +08:00
Spring 这种生态大而全的可能不怎么需要动源码吧,但中小型框架和库就不好说了。
Java 我写得不多不太清楚具体状况,写 Python 的时候确实改过一些框架 /库的代码,要么继承,要么直接重写的都有。。
blackccc
2020-04-10 14:48:17 +08:00
竞争太激烈了,一般的问题大家都会,也只能这样了
wuketidai
2020-04-10 14:49:14 +08:00
你 debug 的时候可能有一些是用的框架里面报的问题,如果你不了解,你怎么定位修复?
你自己造轮子的时候,别人框架已经解决过类似东西了,你通过源码了解到相关设计与实现细节,可以拿来借鉴也可以拿来改进
sampeng
2020-04-10 15:15:51 +08:00
如果你没看过 spring boot 源码。。来来来来,我们刚提出的一个问题,你看怎么解? spring boot 的项目启动太慢,需要优化。。你都没看过源码,不知道 spring boot 的结构和启动顺序。给你这个线上的问题,你告诉我你不知道?那我要你干嘛?
vitoliu
2020-04-10 15:17:59 +08:00
在岗位竞争不激烈或者急招人的情况下可以一点算法不问。但是一定要问源码。
一是源码看的多的人怎么也能学个一招半式,代码质量相对更高。相信对框架源码感兴趣的人,就算需求急着上线也不会写一些恶心的逻辑在里面。
二是解决问题的能力和耐力,这点不用多说吧,框架源码参差不齐,且一般调用链很深,能坚持看下去的人相对来说更好管理,平时能少操点心不比招个大爷进来好多了。
tc132
2020-04-10 15:23:50 +08:00
@vitoliu 赞同啊
不学别人优秀的代码,业务代码很容易写成屎了
qdzzyb
2020-04-10 15:27:46 +08:00
也挺奇怪的 没人问 mysql 的源码
yRebelHero
2020-04-10 15:32:20 +08:00
其实想知道 spring 源码怎么看,感觉无从下手。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/661076

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX