对自己狠一点,开始写作吧

我时常会有这样的感觉: 自己心里觉得对一个技术点已经掌握了, 但是当我试图给别人讲述的时候,发现并不能轻松自如、深入浅出地讲出来。

这就说明了一个问题: 自认为掌握了,其实并没有真正地掌握, 大脑只是对这个技术建立了一个整体的概念,在一些细节处做了想当然的假设,等到你用语言再来表达的时候发现,哦, 原来这个假设并不完全成立,是有问题的。

在学习吸收率金字塔中, “转教别人(Teach others)”属于主动学习, 效率是最高的。 但是在工作和生活当中, 你是很少有机会去给别人讲授的。

0?wx_fmt=jpeg

0?wx_fmt=gif

那怎么办? 总不能拉着你正忙着的同事说: 哥们, 来, 我刚学了CQRS,我给你讲讲吧。

也许你的同事很有礼貌, 耐着性子听你磕磕碰碰地讲完了,然后不知所云, 前几次还行,次数多了,就对你敬而远之。

既然没法给别人讲,那就退而求其次吧, 把自己的理解写出来。


当然不是泛泛地记流水账,或者把几个孤立的点罗列在那里, 而是要把思路理清楚, 尤其是要写出为什么要有这个技术?这个技术解决了什么问题,然后才是这个技术是怎么使用的。 

当你逼着自己去回答这些问题的时候,很快就会发现,自己的理解还不够,还需要查找更多的资料。

在你通过google找资料的时候, 你会发现,哎呀,网上的这些文章怎么这么差劲,重复的内容这么多, 大部分都是复制、粘贴。大部分都是在讲述怎么使用, 对于“为什么” 从来都是只字不提,或者犹抱琵琶半遮面 , 羞羞答答的不说出来。

这个整理资料和思考的过程是很珍贵的, 这样才能把信息变成你自身的知识。

如果实在搞不定,就带着问题去论坛提问,去QQ群发言,找大牛请教, 总是可以解决的。

举个例子,你接触到了一个新的知识点: Java 动态代理。

你也看了书或视频中的代码,知道了这个技术是怎么使用的,接下来想要写篇文章, 首先要努力阐明的问题就是“为什么要用Java 动态代理”?   这玩意儿到底要干嘛? 我已经知道了它能够对一个类进行增强, 还是在运行时做的增强, 但是增强一个类有什么用处?

我完全可以新写一个类对原有的类做增强啊? 为什么要在运行时做呢?

如果你顺着这个思路挖掘下去,会在通道的尽头找到一个宝贝: AOP。

具体到技术层面,还有一个问题, 就是为什么Java 动态代理只能对interface进行操作?  不能对class进行操作?    这个问题如果也深挖下去, 你会发现另外一个宝贝: 动态字节码的生成。

继续深挖就能看到ASM, CGLib这样的东西, 看到他们怎么在内存中操作class文件的字节码, 字节码的格式是什么样子的? 只好去看看Java虚拟机了。

到了最后,你也许会体会到, 奥, 原来Java是一门静态语言,  在运行时不能对现有的方法逻辑进行修改,不能新添加方法, 所以得用别的手段,如ASM, 动态代理等创建一个新类来做点“额外的”事情。

赶紧写一篇文章吧,把挖掘的结果记录下来,别人只是学会了什么Java 动态代理,这只是冰山的一角,  而你则看到了整个冰山。

0?wx_fmt=png

有人可能要问了: 我也可以按照这个思路去学习,为什么要写下来呢?  原因很简单,不写出来,很容易放弃深度思考。你会觉得,哎呀我已经知道怎么回事了 -- 其实一些关键的细节被大脑给忽略了。


我们已经进入了一个碎片化的时代, 我们的大脑已经养成了碎片化的习惯,一天不看碎片化的信息就觉得不舒服, 这样下去会慢慢地丧失深度思考的能力。

写作会逼着你去思考,梳理知识体系,防止自己被碎片给填满。


其实很多人都知道写作是一件很好的事情, 就是犯懒,执行不下去。 还是行动起来吧! 逼自己一把,对自己狠一点 !  有自制力的人, 能够坚持的人才更有可能成功!

ps : 写出了好文章, 欢迎向老刘投稿啊。

你看到的只是冰山一角, 更多精彩文章,请移步《码农翻身2016文章精华》或者《码农翻身2017上半年文章精华

有心得想和大家分享? 欢迎投稿 ! 我的联系方式:微信:liuxinlehan  QQ: 3340792577


码农翻身

用故事讲述技术

0.jpeg

基于51单片机,实现对直流电机的调速、测速以及正反转控制。项目包含完整的仿真文件、源程序、原理图和PCB设计文件,适合学习和实践51单片机在电机控制方面的应用。 功能特点 调速控制:通过按键调整PWM占空比,实现电机的速度调节。 测速功能:采用霍尔传感器非接触式测速,实时显示电机转速。 正反转控制:通过按键切换电机的正转和反转状态。 LCD显示:使用LCD1602液晶显示屏,显示当前的转速和PWM占空比。 硬件组成 主控制器:STC89C51/52单片机(与AT89S51/52、AT89C51/52通用)。 测速传感器:霍尔传感器,用于非接触式测速。 显示模块:LCD1602液晶显示屏,显示转速和占空比。 电机驱动:采用双H桥电路,控制电机的正反转和调速。 软件设计 编程语言:C语言。 开发环境:Keil uVision。 仿真工具:Proteus。 使用说明 液晶屏显示: 第一行显示电机转速(单位:转/分)。 第二行显示PWM占空比(0~100%)。 按键功能: 1键:加速键,短按占空比加1,长按连续加。 2键:减速键,短按占空比减1,长按连续减。 3键:反转切换键,按下后电机反转。 4键:正转切换键,按下后电机正转。 5键:开始暂停键,按一下开始,再按一下暂停。 注意事项 磁铁和霍尔元件的距离应保持在2mm左右,过近可能会在电机转动时碰到霍尔元件,过远则可能导致霍尔元件无法检测到磁铁。 资源文件 仿真文件:Proteus仿真文件,用于模拟电机控制系统的运行。 源程序:Keil uVision项目文件,包含完整的C语言源代码。 原理图:电路设计原理图,详细展示了各模块的连接方式。 PCB设计:PCB布局文件,可用于实际电路板的制作。
【四旋翼无人机】具备螺旋桨倾斜机构的全驱动四旋翼无人机:建模与控制研究(Matlab代码、Simulink仿真实现)内容概要:本文围绕具备螺旋桨倾斜机构的全驱动四旋翼无人机展开研究,重点进行了系统建模与控制策略的设计与仿真验证。通过引入螺旋桨倾斜机构,该无人机能够实现全向力矢量控制,从而具备更强的姿态调节能力和六自由度全驱动特性,克服传统四旋翼欠驱动限制。研究内容涵盖动力学建模、控制系统设计(如PID、MPC等)、Matlab/Simulink环境下的仿真验证,并可能涉及轨迹跟踪、抗干扰能力及稳定性分析,旨在提升无人机在复杂环境下的机动性与控制精度。; 适合人群:具备一定控制理论基础和Matlab/Simulink仿真能力的研究生、科研人员及从事无人机系统开发的工程师,尤其适合研究先进无人机控制算法的技术人员。; 使用场景及目标:①深入理解全驱动四旋翼无人机的动力学建模方法;②掌握基于Matlab/Simulink的无人机控制系统设计与仿真流程;③复现硕士论文级别的研究成果,为科研项目或学术论文提供技术支持与参考。; 阅读建议:建议结合提供的Matlab代码与Simulink模型进行实践操作,重点关注建模推导过程与控制器参数调优,同时可扩展研究不同控制算法的性能对比,以深化对全驱动系统控制机制的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值