不少同学从Hello world学到文件操作之后,回顾感觉会又不会? 学会了又感觉没学会?这种不踏实、模糊虚无的感觉?
原因在于编程不同于理论学科,你听懂和理解了理论就可以运用,比如历史地理,看完书,我们在讨论的时候:“北美洲和南美洲的分界是什么? 辛亥革命是什么时候? ”这些问题只要你看到过,脑子有记忆你都可以说出来,从大脑记忆到用嘴表达是我们很顺理成章的事情,因此你会觉得很容易。
如果是编程,比如我们在谈论数组的时候,你想到的只能是书本上 “int a[10]”、“中括号”、“{1,2,3,4,5,6,7,8,9}”这些零星的关键字,你想了想说:“哦,我好像学过!” 但其实呢,你压根没在电脑上敲出来过,更没有写过具体的例子,经过编译、运行看到运行效果等等。
因此你的印象就停留在书本上那些,总不用那么忘掉只是迟早的事情。何况编程是一门非常强调动手的课程,只看不练能行吗? 无论是从事开发、教学、竞赛还是当做一个工具,都需要足够的上机练习才可以证明你真的掌握了这门编程语言。
因此缺失上机编码的过程就会让你产生前面提到的那种虚无的感觉,感觉自己学过又没会,过阵子就会忘掉!
所以回到我们的最初问题上来,学编程最难最关键的部分不在于学,而在于练。在具体点:在于配套的学练过程。
因此对于正在学习的同学,我们的建议是,不必拘泥于学习资料的形式,是视频还是书籍,是线上还是线下,找到自己舒服的形式就可以。
而最关键得在于学习过程中,及时的训练刚刚理解的知识点,从而通过上机练习巩固理解的知识,由大脑的意识通过双手实践出来,最终深深的印在大脑皮层,学和练的配合,最终牢牢掌握这门课程。
C语言网正是基于这种考虑,为大家提供教程的同时提供对应的OJ练习,让大家每个知识点都能有完整的代码实践,检验自己强化动手,而杜绝眼高手低的纯理论学习,最终避免学完之后感觉没学一样的效果。
这就是学习编程目前最大的问题和解决方法,希望可以帮助更多的编程学习者!
学习编程还要注意一大禁忌:“眼高手低”
这个词第一次听到是我在上初中时,数学老师讲的,为什么会用这个词,因为许多数学题,比如方程式,我们看着感觉很简单,不用练了,就跳过到下一个。
待到考试的时候,遇到这个题了,嗯感觉会,但是一做就错,这就是所谓的眼高手低导致的后果。
原因在于眼睛看到的懂是基于“感觉”或“关联”的直觉感受,比如这个题要用到的xx知识点,我学过,那就问题不大,但事实上,一道数学题的实现、解决过程需要从头到尾的逐步实现、环环相扣的严谨的过程,任何一个环节写不出来、关联不上就进行不下去或者中途出错了,这就一定导致错误或失分。
同样的道理,编程也如此,我们看这个题眼睛觉得很简单,但手也觉得简单吗?真的不一定,因此“”眼高手低”的问题的就非常值得被重视了!
以我们常见的Hello World题为例,不少书籍的入门第一个程序就是如此,但有多少同学真的上机实践一下呢?
相信不少同学会认为,这个程序就一句printf,我照着敲还会出错吗?
直接往后看吧
但事实上就会因为少一个分号、括号不对、打错一个字母等等问题造成就是不对的情况
千万别忘了,编程是一个严谨的编码实现过程!
某网站的Hello World题的通过情况,该题目仅仅是输出HelloWorld和*号的问题,有超过十万次的提交,但经过机器严谨的评测,则会出现各种各样的问题,出现惊人的通过率!仅不到40%!十个人当中六个人不通过!大家可想而知,有多少同学面临动手差的问题!
大家可想而知,问题出在哪里,为什么编程学了感觉没学一样提到过学练同步的必要性,因此大家理解尤其在编程学习领域的重要性和必要性,强化上机重视上机,才能真正掌握编程这门技术,才能踏上学习编程的正确路线!
如果你不知道如何学习C/C++,你可以来找我,学习资源可以更好的帮助你学习,我这里有成体系的视频教程,你不用在网上寻找零碎的资料,更好的节约时间。
如果你是想转行或是正在学习编程的同学,马上到期末了,大家一起抱佛脚,分享资料吧,欢迎大家加群免费领取噢:1151395975