如果你执意追寻着我的幻影,总有一天会被真正的我打败。 收藏本站
登陆 / 注册 搜索

阅读: 9.3K   回复: 5

[# 交流] 对自己狠一点,开始写作吧

[复制链接]
仗剑天涯论坛大牛 2017-9-7 00:26 |显示全部楼层

今生相逢便是缘分,何苦去怨恨,何苦去仇视。

主题破百
        我时常会有这样的感觉: 自己心里觉得对一个技术点已经掌握了, 但是当我试图给别人讲述的时候,发现并不能轻松自如、深入浅出地讲出来。. R4 P. Z8 Q' Z: f5 n2 t& d9 }
  _. I1 t6 o. m  b" A# d
        这就说明了一个问题: 自认为掌握了,其实并没有真正地掌握, 大脑只是对这个技术建立了一个整体的概念,在一些细节处做了想当然的假设,等到你用语言再来表达的时候发现,哦, 原来这个假设并不完全成立,是有问题的。* R/ H( w+ u/ W0 a- L( D% i
0 ?6 i7 w' H3 q
        在学习吸收率金字塔中, “转教别人(Teach others)”属于主动学习, 效率是最高的。 但是在工作和生活当中, 你是很少有机会去给别人讲授的。1 {8 s* x+ X  O7 b/ D6 p) s

3 a) `9 r: p7 i% R( B
对自己狠一点,开始写作吧 1-写作.jpg
7 A1 F" u& ~( m* L
        那怎么办? 总不能拉着你正忙着的同事说: 哥们, 来, 我刚学了CQRS,我给你讲讲吧。, J( L$ h( O8 k6 A

3 N6 K- L* |$ {% I        也许你的同事很有礼貌, 耐着性子听你磕磕碰碰地讲完了,然后不知所云, 前几次还行,次数多了,就对你敬而远之。
8 p$ Z& ~6 D/ F( B% n- c( e
7 v" e0 `& N5 r        既然没法给别人讲,那就退而求其次吧, 把自己的理解写出来。
9 z: N6 Y2 A  F" T
/ w$ T1 x% n0 T- P        当然不是泛泛地记流水账,或者把几个孤立的点罗列在那里, 而是要把思路理清楚, 尤其是要写出为什么要有这个技术?这个技术解决了什么问题,然后才是这个技术是怎么使用的。 ' s2 K: X4 t  h4 X/ k' v* a4 z
* ?9 [" T- G  T' t5 L* S
        当你逼着自己去回答这些问题的时候,很快就会发现,自己的理解还不够,还需要查找更多的资料。
( q; |$ E: F# I  A. O
3 L# Z3 x5 ^  v  L5 ]" I        在你通过google找资料的时候, 你会发现,哎呀,网上的这些文章怎么这么差劲,重复的内容这么多, 大部分都是复制、粘贴。大部分都是在讲述怎么使用, 对于“为什么” 从来都是只字不提,或者犹抱琵琶半遮面 , 羞羞答答的不说出来。
5 a! N- V$ }6 Q8 q+ \1 j  N3 t
$ p' D" B- y  z3 W4 S: q, q. V        这个整理资料和思考的过程是很珍贵的, 这样才能把信息变成你自身的知识。
; y1 N- Q) M6 L# j3 K5 E( g7 ~; \/ A+ n7 j
        如果实在搞不定,就带着问题去论坛提问,去QQ群发言,找大牛请教, 总是可以解决的。
# f6 T" M2 g, j" \; s* D% l1 n! Q* E/ Z( k) l$ l' A0 }
        举个例子,你接触到了一个新的知识点: Java 动态代理。
$ Y, h' K; ~# J6 V
! N  B( I8 j1 ?- M* a        你也看了书或视频中的代码,知道了这个技术是怎么使用的,接下来想要写篇文章, 首先要努力阐明的问题就是“为什么要用Java 动态代理”?   这玩意儿到底要干嘛? 我已经知道了它能够对一个类进行增强, 还是在运行时做的增强, 但是增强一个类有什么用处?1 `1 j4 ]# R3 ~) }; ?" c

2 J+ a0 f, j& R) i0 m) R        我完全可以新写一个类对原有的类做增强啊? 为什么要在运行时做呢?  ^# X( k% k- W

3 y2 c# [' y" H, D        如果你顺着这个思路挖掘下去,会在通道的尽头找到一个宝贝: AOP。6 |9 @( \1 ^* r! z( m- F+ L
, _# N$ m; V9 b$ D& }3 ~7 ^
        具体到技术层面,还有一个问题, 就是为什么Java 动态代理只能对interface进行操作?  不能对class进行操作?    这个问题如果也深挖下去, 你会发现另外一个宝贝: 动态字节码的生成。, _8 I$ c/ E# t
2 j1 D  b1 t9 K8 v
        继续深挖就能看到ASM, CGLib这样的东西, 看到他们怎么在内存中操作class文件的字节码, 字节码的格式是什么样子的? 只好去看看Java虚拟机了。# u4 [: \$ ^3 a8 k8 t/ U

2 ]: A% }( m. u" H/ y, g  s        到了最后,你也许会体会到, 奥, 原来Java是一门静态语言,  在运行时不能对现有的方法逻辑进行修改,不能新添加方法, 所以得用别的手段,如ASM, 动态代理等创建一个新类来做点“额外的”事情。
+ O. l7 o; Y  N$ O& B' k3 \( E6 y; e8 h4 U& d
        赶紧写一篇文章吧,把挖掘的结果记录下来,别人只是学会了什么Java 动态代理,这只是冰山的一角,  而你则看到了整个冰山。1 b8 T. n! t* ~2 h

8 e/ r; e6 K% R* `' f
对自己狠一点,开始写作吧 tip-of-the-iceberg-90839-e1445394137621.jpg
3 ?  I/ T; `) p9 f: N% E
        有人可能要问了: 我也可以按照这个思路去学习,为什么要写下来呢?  原因很简单,不写出来,很容易放弃深度思考。你会觉得,哎呀我已经知道怎么回事了 -- 其实一些关键的细节被大脑给忽略了。
/ U' @- _" G' W* E. V3 F; g
- r  V7 b- {$ _/ ~9 [        我们已经进入了一个碎片化的时代, 我们的大脑已经养成了碎片化的习惯,一天不看碎片化的信息就觉得不舒服, 这样下去会慢慢地丧失深度思考的能力。
1 ]8 u3 N/ [6 g0 o9 Q9 ]1 E7 y* l0 l, _
        写作会逼着你去思考,梳理知识体系,防止自己被碎片给填满。7 q% S% f5 e; m5 B2 j2 E; a

5 F+ I: I- @7 k1 m3 I. ]" I        其实很多人都知道写作是一件很好的事情, 就是犯懒,执行不下去。 还是行动起来吧! 逼自己一把,对自己狠一点 !  有自制力的人, 能够坚持的人才更有可能成功!
- S: C" ?6 t0 Y7 `- `' O6 I! w" E5 j; w6 K/ U. ?3 B
上一篇
下一篇

巴黎环抱的花海 「龙战于野」 2017-9-23 11:33 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

这么强,支持楼主,佩服
上帝之眼 「龙战于野」 2017-10-1 14:46 |显示全部楼层

啦啦啦啦

  ∧__∧
8 p* v2 l; s- J ( ●ω●)
( F/ R' U. _' I7 A/ P3 h |つ/(___
( W- G- _- e6 `* m: p/└-(____// x, T8 O; z3 d: ^% C/ o
 ̄ ̄ ̄ ̄ ̄ ̄, W5 z# V. _; C- t$ L
我好像懂了什么( k( a. r  I/ w8 i* G: ]7 S- C! v
上帝之眼遇到高手虚心请教,获得 2 个 金币.
故事,还未完、 「锋芒初露」 2018-1-20 22:41 来自手机 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

顶顶更健康
眼泪早已泛滥 「出类拔萃」 2018-1-20 23:13 来自手机 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

楼主!我一辈子都没有像今天这么开心,这么幸福,这么快乐,我想我已经找到了人生的真谛,那就是每天都能看这篇贴子,每天都将这篇贴子读一篇。这样生活才充满了朝气。可是这样我只是得到肉体上的满足。我卑微的灵魂并没有在烈火中得到永生。我想对你说,能够让我永远活的像个人,像个真正的人。就只有楼主——您了!
hhjj543212012 「龙战于野」 2019-1-16 14:52 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

   顶
您需要登录后才可以回帖 登录 | 免费注册  

本版积分规则

快速回复 返回列表