纯 0 基础学编程肯定是不行的,你至少要具备一些电脑操作的基本知识,否则会很吃力。
又是一年毕业季,昨天同学给我打电话,问我「0基础可以学编程吗?」。
我告诉同学说「纯 0 基础肯定是不行的,你至少要先会用电脑,还要具备基本的思维能力,怎么也要高中毕业吧」。
针对这个问题,于是我整理了这篇文章,分享给大家。
我记得我上大学之前都没见过电脑,班里的同学一大半也没见过,第一学期学校里开的是「计算机文化基础」,讲的内容就是一些很基础的知识,比如:认识电脑桌面、打字、上网、装机等等。
那个时候一个学期下来要说学会啥了,除了了解了电脑的基本操作,就学会了基本的打字,但是也算掌握了电脑的基本操作,第二个学期就开始学编程了。
在这里我们就把没学过编程的人,定义为:0基础吧。
一、0 基础学编程的路径
1、为什么 0 基础可以学编程?
学习编程的本质是学习一种逻辑思维的方式,而逻辑思维是每个人都具备的基本能力。
编程语言只是工具,真正重要的是培养解决问题的思维方式。
2、学习周期预期
学习编程是枯燥的,需要持之以恒的坚持,整个学习过程可以分为两个阶段。
第一阶段是基础入门阶段,这个过程主要掌握基本的语法和培养编程思维,这是一个循序渐进的过程,时间不能太短,至少要 3 个月,也不能无限长,根据自己的时间控制就好,不要超过 6 个月,太长了你肯定也学不好。
第二阶段是提升阶段,主要是培养自己能独立分析问题和解决问题的能力,一般会持续半年到一年的时间。这是你基本上算是出师了,达到初级程序的水平吧。
二、编程必备基础知识体系
对于编程语言来说,无论学习哪种,编程思维都是必须的,在此基础上编程的一些基础知识要掌握,包括:基础语法、条件控制、数据结构、函数算法以及调试测试,定位错误并解决问题等。这些是学习每门编程语言都必修的基础课,需要实验的积累和时间的沉淀。
三、编程语言选择建议
在编程语言的选择这块有很多,学习哪种要看你学习的目的,不过像 vb 这种比较古老的语言还是不要学了,记得大学毕业那会,公司的项目还是有很多用 vb 来开发的,不过不是新项目,而是将 vb 的项目升级为 Java 或者 C#。
我承认 vb 曾经很优秀,但是早就没有人用了,还有像汇编、cobol、C 语言,这些如果你没有特殊需要也不要学了。
我建议你从:Python、Go、C#、Java 中选一门来学习,然后根据自己的需要,选择学习 js 和 C++,一般程序现在都会几门编程语言的。
选择建议总结
四、学习误区
急于求成:学习的过程中切忌急于求成,尤其是基础知识这部分,一定要认真仔细的打好基础,不要上来就学什么框架,你可能会听到很多声音,比如「框架中包含基础知识,基础知识不用学,学习框架的时候哪些不明白,补足就好了,这样节约时间」,这些说法没错,如果你掌握了一门编程语言再这么学是可以的,不过这不适合初学者。
只看不练:想学编程,基础的工具是要准备的,一个台式机或笔记本电脑是必须的,不需要配置有多高,但一定要有,边学边练,一个看似简单的语法知识也要实践一下,而且最好从学习编程开始每天至少有 1 到 2 个小时的编码时间,我从大学学编程的开始,到现在基本每天至少有 2 个小时左右的编码时间。
学习的过程也不要光看书,也可以通过视频的方式学习,现在自媒体平台上有很多视频,讲的也很好。
频繁换编程语言:今天听别人说 Python 在大数据处理方面优秀,就学 Python,明天听说你玩的游戏是 C# 开发的感觉很震撼就学 C#,还有人说 C++ 就业工资高就学 C++,然后又换了。与其这样还不如初期多问问自己该学哪个,然后制定计划坚持下去。
闷头苦学:写代码时出现问题,半小时、一小时都没有解决的话,就先不要解决了,要么找人请教,要么先放下,说不定明天你就会有新鲜的思路解决了。
五、实践项目推荐
学习的过程中通过项目来检验自己学习的效果很重要,如果没有团队带的话,可以自己拟定一些题目来做做。比如:
1、初级阶段:计算器程序、猜数字游戏(练习循环控制、条件判断、随机数生成)、文本处理(练习字符串操作、文件读写、正则表达式等)
2、中级阶段:代办事项管理系统、个人博客系统等)
3、高级阶段:在线商城系统(学习掌握完整的 web 应用开发流程)、实时聊天应用(学习时事通讯、并发处理等)、数据分析平台(练习数据分析、可视化技术等)
六、总结
编程是一件有意思的事,但是需要持之以恒,坚持下去,修改错误的过程是最考验人的,尤其是改 bug 的过程,会让很多人怀疑人生,不过只要方法得当,这些都不是事。
在编程这个职业不是什么好职业,但是却是一个比较好的选择,编程对一个人的起点要求不高,只要你愿意为之努力的决心和行动,成功的机会会很大很大。
愿每一位在编程路上的同学,都能获取知识、技能和成就感,美梦成真!