![]() | 1 tctc4869 2020-09-30 16:22:20 +08:00 你目前需要学习 Spring 源码么?为什么需要?谁告诉你必须要学 Spring 源码的?不学有什么问题么? Spring 只是个工具 |
![]() | 2 lewis89 2020-09-30 16:25:18 +08:00 看看 spring-context spring-core spring-aop spring-tx 就行了 |
![]() | 3 huifer 2020-09-30 16:37:14 +08:00 想看就看多学肯定没问题 (其实只是想推广一下 https://www.yuque.com/huifer/spring) |
![]() | 4 chendy 2020-09-30 16:38:08 +08:00 可能有必要通读 spring 的文档 |
![]() | 5 reeco 2020-09-30 16:57:45 +08:00 via Android 没必要 |
6 xianyuya 2020-09-30 17:12:09 +08:00 完全没有任何必要 |
![]() | 7 Ho1iday 2020-09-30 17:18:30 +08:00 没有必要看源码,知道并理解原理就行了 |
![]() | 8 lewis89 2020-09-30 17:18:35 +08:00 ![]() |
![]() | 9 wysnylc 2020-09-30 17:20:55 +08:00 记住看源码是学习效率最低的方式,要看就看其他人的博客讲解 |
![]() | 10 lewis89 2020-09-30 17:25:26 +08:00 如果你想为 CRUD 节省时间,或者以后做一些 Spring 组件的开发, 最好通读一下 Spring 几个核心模块的代码并了解其中其中的原理,大部分 Utils 跟 Bean 装配的代码不必须要细读, 因为其中很多拐弯抹角的 Spring 代码是擦了不少 Java 遗留的屁股。 https://github.com/jonwinters/auto-generate-enum-api-parent 我最近开发的一个组件,就因为当时不是很清晰 Spring 的整体流程 没注意细看文档,坑了好长的时间 在 processBeanDefinitions 阶段,spring 容器并未为 bean 做 property 注入的处理,你可以看到我并没有使用 @ConfigurationProperties 包装的 Bean 而是手动注入了 Environment 然后 get 到环境配置的变量 |
![]() | 11 Nuttertoo1s 2020-09-30 17:25:35 +08:00 一开始我觉得没必要,直接去学 spring boot,发现还是需要学习一下 spring 方便辅助了解 spring boot 。 |
![]() | 12 sagaxu 2020-09-30 17:26:13 +08:00 via Android 个人觉得啃 spring 源码一点用都没有,但是准备面试的话不妨看看 |
![]() | 13 gaocc 2020-09-30 17:45:37 +08:00 刻意去看,个人感觉也是今天看,明天忘。最好是开发都时候,有意识的去瞅瞅,源码怎么走的,留个印象就好。真遇到问题,方便入手 |
14 frankkai 2020-09-30 17:45:43 +08:00 老板不关系你会不会源码 关心你能不能交付功能。 |
15 x940727 2020-09-30 17:51:41 +08:00 |
![]() | 16 lewis89 2020-09-30 18:00:38 +08:00 @x940727 #15 看做什么吧,如果你只是 写 CRUD 的,说实话真没必要去看源码,我平时工作也用不上,但是你真要做一些组件开发,了解怎么减少代码编写,或者做一些中间件去 支撑业务 监控性能 或者资源权限的东西,不懂框架原理没阅读过源码 真的不行。 |
![]() | 17 lewis89 2020-09-30 18:05:04 +08:00 @x940727 #15 因为 Java 本身动态性并不够,像 Python 其实语言自带了很多魔改功能,可以直接自己修改自己,可以在运行时做很多东西 来减少手工重复代码编写,但是 Java 这块 对代码增强 或者具体点说是 AOP 相关的技术 都是通过 Spring 来实现的,你如果没有 Spring 想自己完成一套 切面简易的鉴权系统 十分困难,除非你每个 Java 调用的方法都手工去复制一遍代码,不然最终还是绕不开 AspectJ CgLib Javassit Spring 这些技术。 |
18 wangkun025 2020-09-30 18:12:42 +08:00 我觉得没必要。 |
![]() | 19 git00ll 2020-09-30 18:28:29 +08:00 普通新人后端有没有必要学习 Spring 源码? ----------------------------------------------------- 新人没必要,毕竟把 spring 全家桶的用法学会也要很长时间, 一两年后肯定是要看的,不看 spring 也要看其他的框架的,目的是提高读源码能力。 |
![]() | 20 hcx0 2020-09-30 21:03:10 +08:00 ![]() 非常又必要 首先,Spring 中有很多优秀得设计,多学习有好处。其次,Spring 甚至已经成为事实上的标准,了解 Spring 本身的设计可以帮助你减少很多不必要的操作、以及避免很多会恶心同事的操作。 |
![]() | 21 misaka19000 2020-09-30 21:08:04 +08:00 没必要 |
22 mtmax 2020-09-30 21:36:40 +08:00 没必要 说必要的先想想你 jdk 源码看多少了 哪个重要不用我多说了吧 |
![]() | 24 anguiao 2020-10-01 00:21:28 +08:00 via Android 很多人连文档都没仔细看,就跑去看源码(不特指 Spring )。然后各种“手撕源码”的水文,也是层出不穷。 其实很多人并不真的需要看源码,只是为了面试的时候能吹上几句。谁让现在的面试都喜欢问有没有看过源码呢? |
![]() | 25 amiwrong123 2020-10-01 00:49:09 +08:00 via Android 借楼问下各位,为了面试的话,spring 的源码应该重点了解那些方面?比如 ioc 的依赖注入,aop 如何切面。 或者说,应该带着哪些问题(可能是面试会问到的问题)去看源码? |
![]() | 26 ycbb123 2020-10-01 08:51:08 +08:00 很多人文档都没看过 |
![]() | 27 yiyi11 2020-10-01 09:57:53 +08:00 via Android 所谓 java 框架,无非就是 反射 + 正则 + 设计模式,spring 亦如此,你可以先从这些知识点入手。 至于源码,你直接看肯定一头雾水,因为代码版本到今天已经非常庞大,要有目的性去看(比如看一些源码分析的教程),取其核心。 |
![]() | 28 yanguango 2020-10-01 10:09:12 +08:00 via Android 厚着脸皮提一下,有个工具帮助你阅读源码。https://wonder.codes |
![]() | 29 sunwei0325 2020-10-01 10:12:22 +08:00 你就想象, 开车是不是也要研究明白发动机原理 |
![]() | 30 Cyron 2020-10-01 10:26:12 +08:00 via iPhone 黑盒就先用,用熟练了再慢慢深入 |
31 qwzhang01 2020-10-01 11:15:06 +08:00 有一定必要,面试非常有必要,后期自己开发中遇到坑填坑帮助也非常大。但是不能死磕,看文档,看比较好的博客,理解设计模式,然后找一个细小的点,debug 进去慢慢看,做的时间久了,自然久明白了。 |
32 qwzhang01 2020-10-01 11:16:47 +08:00 @sunwei0325 这样理解好像也不准确,造车的工程师和司机的技能树差别有多大,用 Spring 写项目的和写了 Spring 的程序员技能树差别呢!!! |
33 inwar 2020-10-01 11:30:58 +08:00 via Android Spring mvc 要看,spring 可以了解一点,不然遇到问题就捉瞎 |
![]() | 35 br00k 2020-10-01 11:43:30 +08:00 via iPhone 可以先把使用文档看了,实践了。再深入的时候可以从源码学习。 |
36 aguesuka 2020-10-01 12:45:58 +08:00 via Android 如果你能熟练使用 spring,对软件设计有一定见解,能实现一个乞丐版的 inject 和 mvc 框架,不妨一试 |
37 Zchary 2020-10-01 16:00:00 +08:00 via iPhone 我想问新人后端有必要学 Java 吗?(前端转的 |
![]() | 38 notejava 2020-10-01 17:11:00 +08:00 没必要刻意去看,带着开发中遇到的问题去阅读源码就可以了。 |
39 lionseun 2020-10-01 17:57:28 +08:00 via Android 源码论者占据了高薪行业,10K 工资不需要,其他看情况 |
![]() | 40 clf 2020-10-01 19:11:09 +08:00 更多的是了解框架的思想吧,比如 AOP 和 IOC 。 |