- 主题:懂一点点java的皮毛语法,做过一点点django,想了解springboot
这么说来
语法上
这个
this.obj
换成 这个
globalScope.obj
也就解决问题了 ?
【 在 oldwatch 的大作中提到: 】
: 说穿了就是建立一个“保管”业务类实例的全局Context
: 然后大家只管用时引用就好
:
--
FROM 47.144.172.*
是这个著名的循环引用?
A a = new A()
B b = new B()
a.b = b
b.a = a
不就是多写两行代码吗... ?
【 在 donald2020 的大作中提到: 】
: 循环依赖呀,有循环依赖你没办法在初始化的时候自己去拿自己依赖的service
: 就总得有个工具在所有service初始化后再把各个service实例注入到各个service里去
:
--
FROM 47.144.172.*
不是两行代码的问题,比如十几个上百个service不同程序员写的
我作为A的作者,不想去了解B需要什么,它可能依赖EGH几个service,
B同样也不想去了解EGH 们都依赖什么,又因为循环依赖也没法直接写到构造函数里保证不是null
如果都像你这么写,那一层一层的你得看多少代码来保证不出问题呢?
其实还有一个办法,就是写个工具类,然后每个service在真正需要其他service时,通过工具类去取对应实例。但这样就把能提前发现的错误延迟到运行时激活才能发现了(比如一个service没有注册),所以既然有spring帮着管理能在容器启动后检查所有依赖并直接注入,不用做null check,不怕service没注册,不就方便多了吗。更何况spring还有事务管理等其他你本来也想要的功能,有什么理由不用呢。
【 在 hongyan2022 的大作中提到: 】
: 是这个著名的循环引用?
: A a = new A()
: B b = new B()
: ...................
--
FROM 165.225.114.*
如果你能把自动注入/组装也弄出来,那确实就差不多了
最初,就是全局的公共业务类,这个阶段用Global(static)没啥问题
然后,为了更好组织代码,必然引出功能拆分/组合的需求
这儿就引出了组装的需求,就必须让框架接管构建过程
有了构建就有销毁,就从静态管理变成了生命周期管理
用多个业务类组合完成一定需求是业务类组件化后的自然选择
依赖注入是让业务类组合这个操作自动化的手段
接管类的生命周期管理只是实现依赖注入后的副作用
【 在 hongyan2022 的大作中提到: 】
: 这么说来
: 语法上
: 这个
: ...................
--
FROM 116.233.92.*
抽象一点的说
如果说 A.B = B 算是请人帮忙的话
如果一系统里一堆这样的相互引用 相互借用 相互帮忙.... 可不是类似于现实里的三角债?
【 在 donald2020 的大作中提到: 】
: 不是两行代码的问题,比如十几个上百个service不同程序员写的
: 我作为A的作者,不想去了解B需要什么,它可能依赖EGH几个service,
: B同样也不想去了解EGH 们都依赖什么,又因为循环依赖也没法直接写到构造函数里保证不是null
: ...................
--
FROM 47.144.172.*
我个人是这么想的:
找个框架 干这些事 就把一些 琐碎 从我们的眼皮子底下 挪开了
从现实中来看 不足够关注小的事 往往是出事的征兆
林总说过 装备的时候 师级以下指战员要亲自上战场熟悉情况
我觉得他说的有道理
【 在 oldwatch 的大作中提到: 】
: 如果你能把自动注入/组装也弄出来,那确实就差不多了
: 最初,就是全局的公共业务类,这个阶段用Global(static)没啥问题
: 然后,为了更好组织代码,必然引出功能拆分/组合的需求
: ...................
--
FROM 47.144.172.*
相当于dang虽然有各个不同部门
但是事务还是要设立多个领导小组
【 在 hongyan2022 的大作中提到: 】
: 抽象一点的说
: 如果说 A.B = B 算是请人帮忙的话
: 如果一系统里一堆这样的相互引用 相互借用 相互帮忙.... 可不是类似于现实里的三角债?
: ...................
--
FROM 165.225.233.*
求公认的权威好懂的视频
【 在 andylinzi 的大作中提到: 】
: 找个视频看看,可能更快一点
: 发自「今日水木 on iPhone 11」
--
FROM 39.144.162.*
求问一下,java 需要本身得到什么程度可以看springboot 了?我看完了类,对象、接口、集合等,其他还需要继续学吗?例如线程并发网络javafx 啥的,感觉太多了。
【 在 oldwatch 的大作中提到: 】
: 如果你能把自动注入/组装也弄出来,那确实就差不多了
: 最初,就是全局的公共业务类,这个阶段用Global(static)没啥问题
: 然后,为了更好组织代码,必然引出功能拆分/组合的需求
: ...................
--
FROM 39.144.162.*
要倒腾spring boot
你真正需要的背景知识应该是http 协议/web server概念/(sql/nosql)数据库原理/......
java么,倒是真不急着往后看
【 在 cyberdyne 的大作中提到: 】
: 求问一下,java 需要本身得到什么程度可以看springboot 了?我看完了类,对象、接口、集合等,其他还需要继续学吗?例如线程并发网络javafx 啥的,感觉太多了。
--
修改:oldwatch FROM 116.233.92.*
FROM 116.233.92.*