前言
前天,有个学弟问了一下如何零基础学习一门编程语言。之前呢,我是先学c了,然后发现c++的面向过程部分差不多,于是就继续学cpp。
然后这个学弟有些学习方式个人不太建议,所以专门拿出来说一下。
第一门语言
这里个人建议选择cpp,或者python。不太建议选择Java, 原因是对于萌新来说,Java的环境相对较难配置。编程最重要的是环境搭起来,可以先练练手。
cpp
cpp, 也就是c++, 是c的超集。可以这么理解,cpp有两个部分,面向过程部分,这部分其实类似于c, 这部分对于打算法竞赛的选手来说经常使用。另一部分是面向对象,主要适合开发一些软件时使用。
关于环境配置我在另一篇博客 C/C++入门指南(面向新手文) 有说。新手可以试试dev-cpp等。熟练了之后可以使用clion或者vs等。
大家若不嫌弃可以看看我另外一些博客集 cpp极简入门——概要_(1)
推荐教程:
推荐视频:
- 说实话,关于c++的入门视频暂时没找到觉得适合新生的,如果大佬们有看到,欢迎留言。(这也是我推荐先学python的原因之一)
- c++入门(英频中字)
- 翁恺C语言
todo…
Python
这是我最推荐的一门适合萌新入门的编程语言。简洁好学,很多非计算机专业也学,例如我校文学院。这里提一嘴,当时花了两个晚上时间让一个地科院的师妹(之前文科生)上手python,所以个人还是觉得该语言适合初学者。
关于环境配置我也在另一盘博客 Python环境配置与入门建议(面向新手文) 有说,关于编辑器可以先用vscode编辑好.py文件,然后在cmd下运行 python xxx.py即可。
Python有两个大的版本,分别是2.x和3.x。目前3.x用的多。
推荐教程:
推荐书籍:
这里见仁见智,以我的学习经历来看,我还听推荐这本的:
该书还有配套视频,我感觉很适合第一门语言的入门者。(这里手动cute出版社打钱
推荐视频:
todo…
关于语言学习建议
个人建议是先看看这门程序的语法长什么样。
如果不懂得某些概念,一定要自己多上网查(尽量用bing或google搜索,用百度等总是有很多广告), 或者看视频(是在有很多概念不理解,这时候看视频我觉得是一种很好的方式)。
记得一定要先了解语法再去思考。而不是一股脑在那里胡思乱想。花这时间不入把时间花在算法题上。
对于想要打算法竞赛的同学,比如蓝桥杯和天梯赛(本人太菜,打不了ACM,因此ACM大佬另寻高明),在学了程序的基本语句(条件选择,循环),数组,结构体后,可以看看这个 蓝桥杯刷题汇集 和 算法小结例题剖析系列 。
可能有些东西涉及一些数据结构,例如树之类的,这个可以先看看,对于打算法的,可以借用STL库(可以看这个:STL常用操作)来实现一些数据结构,而不是像学习数据结构 这门课时,自己用基本的编程语言而不是用一些库来实现。
其他内容
其他内容大一规划请查看 cs_大一(或者高三暑假)_规划