在学习编程的道路上,许多人都会感到困惑和无助。即便是掌握基础知识之后,在实际的项目中遇到问题也常常让人感到无从下手。如何突破编程难关,提高自己的能力?本文作者在实践中总结出了一个经验:先解决编写代码的量的问题。
作者在本科期间蹉跎了不少时间,导致编程并未入门。尽管对于数据结构和算法虽然知道其重要性,但实际上却不太懂,考试过了却不知道怎么应用它们。在阅读相关书籍时,如果没有现成的代码,总感觉少了点什么,有些困难。
后来,作者考研了,进入了实验室,跟着大牛做科研项目,编写代码的数量也不多。直到年,作者偶然看到了一个介绍某大学的在线评测系统“PKUJudgeOnline-POJ”的网页,然后就重新登录了进去,没想到从此的一年多时间里,作者基本天天泡在上面写程序。
作者从一些简单的算法开始写,有时候按照一些分类去做,实在想不出来就去评论区和别人的博客看解题报告。在这一年多的时间里,作者基本刷完了道题目。每个程序都比较短,算行每道题的话,作者也就写了5万行代码。就是这5万行代码彻底提高了作者的编程能力,感觉就好像是突然上道了。
这种忘我的、愉悦的心流体验非常难得,以至于在十年之后,当遭遇焦虑时仍用这种办法来解决。在这一段时间里,作者对算法和数据结构没有了恐惧感,变得更有耐心,看其他技术书籍也没任何困难,学习编程语言、框架类的东西的速度也快多了。
总结出的经验就是:先解决编写代码的量的问题。编写大量代码的过程中,人们会反复思考、调试,并逐渐掌握那些在书本中难以理解的知识点。而这个过程中,人们还会形成自己的编码风格,有利于掌握更高级别的编程技能。
当然,只是单纯地写代码是不够的。作者在写代码的过程中还积极参与了社区讨论,看别人的代码,从别人的思路中学习和借鉴。同时,还要坚持思考、总结和归纳,以纠正自己的错误和提高自己的能力。
写00行代码,是一项非常艰巨的任务。但是,只有通过不断的实践和思考,才能掌握编程的真谛,进而取得更高级别的技能和能力。因此,如果想在编程的道路上更进一步,先解决编写代码的量的问题,是一个非常好的起点。