自己太菜了,求问,如何看懂有非常多继承的代码?

2021-02-22 23:33:35 +08:00
 fakerw

看一些开源代码,经常被弄得晕头转向,原因是因为某些类调用一些方法, 我要往上倒很多父类才知道原理,

a 类的方法 跳到找到父类 A 然后又找到 父类 A1

b 的方法 找到 B

...

以此类推,跳来跳去就晕了,

平时写前端代码,用的都是组件库,写的都是表单 crud,继承用得很少很少,

求问各种大佬,怎么才能不.....当局者迷呢

太晕了

7017 次点击
所在节点    程序员
48 条回复
fakerw
2021-02-23 00:21:06 +08:00
chendy
2021-02-23 00:26:33 +08:00
如果真的要知道实现方式,可能只能这样了……
更多的时候看一眼调用关系知道个大概就行了
fucUup
2021-02-23 00:54:46 +08:00
晕啥,Linux 21 万个类,查字典即可
fucUup
2021-02-23 00:55:53 +08:00
不要妄想 1 个月练成葵花宝典,至少 20 年
Justin13
2021-02-23 01:57:27 +08:00
先理解设计,再理解流程,再看文件结构,最后看代码。
nuk
2021-02-23 02:00:16 +08:00
运行时 debug
pastgift
2021-02-23 02:36:15 +08:00
有时候其实就是过度设计,一堆没意义的继承导致代码难读,不是你的问题
根据我的经验,好的代码思路清晰,继承多少关系其实不大,你 get 到作者的的点很快就能推测出整体结构。而不好的代码谁来都皱眉头。
laminux29
2021-02-23 06:30:15 +08:00
用 UML 工具,把这些代码转换为图,一目了然。
sam014
2021-02-23 07:03:55 +08:00
@fucUup 20 年为什么要来练葵花宝典,你在欺负前端,哈哈哈
hello2060
2021-02-23 07:04:12 +08:00
点击函数名,跳到定义不就行了。父类的非 private 函数子类也可以用,这个很好理解啊。

所以你迷在哪里?
Skmgo
2021-02-23 07:40:41 +08:00
@laminux29 UML 工具推荐几个?
anthow
2021-02-23 08:54:58 +08:00
多 debug
oatw
2021-02-23 09:17:21 +08:00
组合优于继承。

开源项目的流行度和代码质量不一定成正比,过多继承的建议先绕过。
cczeng
2021-02-23 09:37:01 +08:00
合成聚合复用原则- 多使用组合,而不是多使用继承
cczeng
2021-02-23 09:38:26 +08:00
如果是已有项目,那就只能这样。 #5 楼说的没错。
James369
2021-02-23 09:43:22 +08:00
@fucUup #4 不好意思,程序员的职业生涯没有 20 年,啊哈哈
jadeborner
2021-02-23 09:44:18 +08:00
你说的是 ES6 的继承?
looppppp
2021-02-23 09:44:20 +08:00
所以我喜欢函数式编程
Lemeng
2021-02-23 09:44:35 +08:00
不是大问题,debug
way2explore2
2021-02-23 09:57:38 +08:00
@fucUup xian zi gong a

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

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

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

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

© 2021 V2EX