志存高远-----论编程的章法
一年以来的学习,见过各种各样的问题也跳过无数让人哭笑不得的坑,作为 19 年的年末总结决定推出程序员修炼系列博文。有一句话讲的好“一力降十会,一巧破百拙!”,作为互联网界的“至上武功”,编程固然有章法可循,但“武功秘籍存于内心,人心各有所长各具特色,故修为也各不相同”,作为开篇之作一方面要奉上自己这一年对编程的新领悟新认识,另一方面也会“剑指天下”,谈谈今年编程领域的新技术和新变化。
一、无量不谈才
“不积跬步无以至千里,不积小流无以成江海”
好多人会自夸自己有多么厉害,他们会说中国的教育是应试教育,自己不屑于这种教育方式。在我看来 这种人是最让人鄙视的,一个不怎么好的,在你眼中被称之为“不入流”的简单事情,自己懒于动手去做却在一旁大谈特谈国民教育,这样的人如果真让你接受素质教育你的所谓“天赋”就能得到极大的展现吗?真正厉害的人他们会将所有人可以完成的事物做到最好,与此同时会在此基础之上完成一般人做不到的东西这样的人才可以称之为“高手”,“大家”。如果你想展现自己的天赋,让世人知晓你不一样的地方,那么请先沉下心,把“天才”可以达到的“量”做到,在达到这个量之前就谈英雄论天赋“为时尚早”。假如你的量达到了甚至都超出了标准自己还是资质平平,那么你就真的是没什么天赋了。但在没有达到量的标准之前就放弃,这样的人是懒汉,蠢材,是上帝取笑的劣等小丑。所以领先于人的第一步就是不要在输在行动和执行力上,先在量上达到标准,那个时候再看你天才还是普通人。
二、能力分开看
"能力是要分开来看的,理解能力好不代表编程能力强"
在谈到和程序员相关的能力的时候,我是抱着分开来看的角度来评价一个人技能高低的。你可能看了很多编程的书籍,甚至吃透了无数编程底层原理,但如果仅凭这一项说你很厉害是不科学的,这只能说你的理解能力阅读能力很强。你也可能写了无数的项目,拥有超强的程序调试和代码编写的能力,同样靠这一项技能也不能助你成为“天下第一”。只有具备各种能力,并且在任何一项单独的评比项中都名列前茅的人,才是真正的“高手”。所以想成为高手我们首先要认清高手的标准。在“程序员”这一职业当中我们在“修炼”的过程中一定要把能力分开来看,根据不同的能力标准去分开培养自己各个方面的技能,把每一项都做到极致,让自己真正走向“王者之巅”。
三、走在最后的人
"走在最后是一种坚持,无论面对多么难的问题我们要做的是持之以恒不断深究"
无数次,我们在万千的项目代码中反复查阅,调试,无数次我们被一个 Bug 搞的面容憔悴苦不堪言。有人会说这很痛苦,很考验一个人的耐性,为什么不对自己好一点呢。当提出这个问题的时候我首先会想到的是你是不是一个程序员,对于一名程序员来说这种疑问是不该有的,因为我们在调试的过程中并不是苦不堪言的。相反却是乐在其中。其实对于我个人来说真正的乐趣是期待,一个疑难问题当你通过自己的分析推理一点一点改进,而且每一次改进都产生相应变化,到最后“水落石出”,一切努力都有了回报的时候,那份喜悦和成就感是无与伦比的。遇到问题再坚持一会,当你极度痛苦想要放弃的时候没错再坚持一小会,当你感觉自己已经不能再坚持的时候没错坚持下去,当你忍受了常人忍受不了的极限的时候,成功最后就属于你了。
四、主次不代表有无
"好多人会说编码动手能力更重要,看书来的太慢,看视频太浪费时间,其实不然"
在过去的一年中我和无数同行的人聊过如何去学习,他们大部分人会说动手能力是最为关键最为有效也是最为重要的,当然我并不会否认这一观点,从短期来看的确我们最应该干的是先写他几十万行的代码做他几个项目,先要把编码能力动手能力练上去。但从长远的角度来看你会发现如果我们一味追求纵向发展,而不去扩充自己知识广度的时候,往往很难走的更远。在我看来读书,看视频一样是有很大作用的只不过他们对个人发展学习起到的作用不一样,比如看视频,在刚开始入门新的知识时,其实看视频是最直接有效的方式,除此之外通过反复的看视频可以加深我们对知识点的认识和记忆,在你效率不高的情况下看视频是最好的学习方式之一。看书呢一样很关键,他对一个人能力的晋升至为重要,不过看书讲求的是坚持要的是时间,对我而言看书不能求快,而应该顺其自然带着兴趣去赏析,细细品读,用心揣摩,一遍完了然后再来第二遍如此才能把书读透,读薄。不过综合来说实践还是应该成为编程学习的主流,看书也好,看视频刷博客也罢都是服务于实践的,我们最终还是要回到编码中,所以不是有无而是主次问题,这一点必须要明确。
五、聊聊“闪电战”
"闪电战作为二战的一种经典作战方式有着其独有的优势但也有不足"
年前和我大学的好友在聊他考研的经历,他一直和我在说他成功的关键就是运用了“闪电战”。闪电战指的就是集中一段时间然后只干一件事情,当然本质就是快速量化将知识点真正融入自己的血肉之中。通过大量时间集中攻克一个目标,要领是“先慢后快”,这种学习方式极大考验一个人的执行力和耐性,但效果惊人。回顾自己的学习经历和他的考研经历,我感觉就是一个字“量”,而达到这个“量”有两种方式:其一是延长学习时间(学习效率低下);其二则是提高学习效率。所以要想在最快最短的时间内实现质变,我们要干的就是加大闪电战的执行率和强度,在相同的时间之内达到先人一步的效果。
六、我的最佳状态
"编码的最佳状态就是一上手便是十万行代码,真正做到得心应手便说明你入门了"
我们通常会说我把 Java 玩六了,但是 js 还是不太行。这里行与不行的标准是什么呢?其实就是你是否真正得心应手形成身体记忆了。可能在初学的阶段,我们认为代码的 API 文档还有无数的 SQL 语句需要先记在心中然后才能在不看相关文档的情况下敲的出来。但是,假如我们真正每天照着相应的文档多敲几遍,你会发现时间长了,我并没与经过先前的背诵,却可以通过自己的印象将那样难那样多的东西敲出来了。没错这就是身体记忆,好多时候直接上手操作,会比我们刻意去记忆更简单有效。这就好比玩游戏一样,我们是在实战当中通过失败来认识规则并改进自己,而且在实际操作中通过切身的体验认识的规制往往比直接去刻意理解更形象深刻也更简单。所以,多敲多练通过大量的操作将一门语言或者是框架玩熟练玩明白才是真正的制胜之道。
七、做好简单的事情
"把简单的事情做好就是要求我们要踏踏实实,认认真真当然还要心平气和"
做好简单的事情对于我来说就是一种不求甚解的心态,玩一个工具软件我们要尝试着看看他其他的功能按钮,熟悉下他的各种快捷键和特色功能。当然这只是其中的一个方面,一年下来通过自己的实践和努力我总结除了如下几个好的学习习惯:1.学会思考着实践(知道琢磨)2.要善于总结(体系化写技术博客和文档)3.实践着学习(简单,深刻,直接,有效)4.学会写测试 Demo(认识新技术新知识)5.重视外网网站。
总结:
2019 年,回顾这一年的工作和学习经历,自己做的并不是很好,一方面是个人内心不够沉稳,另一方面是没有协调好生活和工作的关系,当然也因为一时的贪玩错过好多可以进一步提升自己的机会。新的一年,我会更加成熟更加自信,摒弃掉先前不好的习惯,以一个阳光积极的面貌实现自己人生新的飞跃。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于