阅读:1082回复:0
实战学习中的”代码要多练”是怎么个练法?
话说 练武“练拳不练功,到老一场空”。 力量、速度、柔韧性、抗击打等基本功很重要,仅仅是练套路、动作是没用的。
技术也一样。很多同学看技术视频只看不练,认为看懂了就算会了。其实也是“学技术不练,明日就一场空“。 那么问题来了,传说中的代码要多练,怎么个练法? 之前在群里 有同学很诧异我在课程视频里打代码打的很six,遂询问有啥诀窍吗? 可能我在群里回话就回复的不太严谨,于是说了句:“别看我视频里打这么快。其实背后这段代码我已经练了几十遍了”。 问题又来了。 有部分学员认为我是把 同一段代码敲了 几十遍。。。。。。。 很久很久以前大学老师教我们写代码,就有异曲同工之样。老师经常把代码敲一遍,然后当着我们的面” 夸嚓 “删了,又无比轻巧的打了一遍。反复2次,然后告诉我们:“要想熟练,就要这么练”。 这种方法和抄书没啥太大区别,对于学习基本命令和语法时是挺有用的。 那么到了实战学习中,我们是否也是这么 夸嚓、夸嚓? 答案并不是这样的。 我要开始变形了,请大家注意。 for example: 譬如我练习sql语句和代码结合。以insert into 这SQL为例,看我是怎么反复练几十遍的 第一遍写: insert into table(xxx) values(xxx) . 这个得写两遍,认识到插入语句的写法 第二遍写: 拉起程序,利用老外帮我们弄好的sql驱动,如jdbc啊之类的,调用下原生SQL。体验下程序执行原生SQL的快感。 期间要对class.forName这种玩意有所了解。为啥tmd只要写个forName就能用了。 第三遍写: 这时就要尝试用ORM写写了。体验下模型操作数据库的快感,写出面向对象化的代码 第四遍写: 就要想想了。如果有个字段是唯一的,譬如username 不能重复。那我直接写insert 插入重复值咋办? 此时你就学到了唯一索引,顺便把ON DUPLICATE KEY UPDATE 也学了 第五遍写: 比较不同ORM插入数据的区别,至少掌握mybatis或hibernate的两种框架。 第六遍写: 如果我们同时在两张表插值,那么事务怎么玩 第七遍: 开始学习主从。了解读写分离,同样是insert 第八遍: 数据量大了。insert 感觉好慢? 是吗? 那么就要学一学水平分表,顺便学习下分库分表中间件 第九遍: 尝试用协程 执行多个insert 。此时就要学习更多 高逼格语言 第10遍: 考虑insert 的同时,往redis插入缓存 第11遍: 你会发现要学的东西越来越多了。 这一切都是insert into 帮你牵扯出来的。不是吗? 实战学习中反复练,其实并不是反复写同一段代码 而是每次写都有改进 都有逼格的提高、都有不同场景的应用、都有技术境界的提升。强迫你学会思考、学会探索。强迫把你的未知知识点带出来。 |
|
最新喜欢:![]()
|