How To Series 初中生如何自学编程?
昨天晚上一时兴起,想要写点儿啥东西分享给大家。于是乎申请了这么个专栏用来写点儿自己想分享的东西,同时还可能写点儿其他乱七八糟的吧~
好了咱们言归正传,今天我来分享分享关于初中生如何自学编程这件事。我从初一开始自学编程,到了现在也算是对写程序有一点点了解啦。做过几个小项目练手,自认为自学的效果还算可以,所以来分享下我自己的学习经历。希望大家可以不要踩到我当时踩到的一些坑,少走些弯路。
但是其实有时候,踩坑和走弯路是学习提升上必不可少的一环,还是得踩,得走的。
小朋友们最关注的问题 Most Concerned Questions:
初学者适合学习什么语言?
大概学到什么程度可以做软件?可以做学校里最酷的人?
我数学贼差可以学编程不?
我的见解 Author's BS:
初学者适合学习什么语言?
一句话回答 Straightforward Answer:英语 && Javascript
当时大概是2015年左右,我当时初一。学的第一门编程语言是Python。Python是一个语法非常简洁的语言,我记得我当时用的Python的idle在写代码(天哪我竟然能用体验这么垃圾的ide写一年的代码)。哦对这里说一下ide是啥,ide全称是Integrated Development Environment,简单的来说就是写代码用的软件。这里讲一下代码是怎么运行起来的,容我放三张图:
这是ide里面的代码
这是在ide里面运行代码的按钮
这是点完运行后的结果
特简单。
咱们言归正传,什么语言最适合初学者?
英语
我是认真的!英语学好真的对自学编程很重要。首先一个比较重要的原因是编程的代码其实都是英文字母,包括里面的一些函数都是英文单词。其次就是自学的资源很多都是英文,包括很多编程语言或者工具的技术文档都是全英文的。会英文真的很重要。
然后编程语言的话,其实我会推荐Javascript。虽然Python的确入门起来很快而且能很快学到相关编程的知识,但是由于Python的语法比较神奇,所以导致我个人在后期学校里学vb的时候遇到了比较大的语法问题。我相信很多人初学的时候最害怕的就是语法,因为根本看不懂好吗!当然啦我说我推荐JavaScript也不是因为人家语法简单,语法这个东西初学的时候都很难,就像是在学一门新的语言。JavaScript这个语言比较野,它不需要声明变量类型并且不是很容易被玩坏。同时对语法的要求并不是这么高,不像隔壁Python是indent sensitive。同时JavaScript的语法结构以及其面向对象的特性使得掌握它的人可以更加高效快速地学习诸如C#,Java之类的语言。而且我最近JavaScript用得比较多,所以会有一点点bias哈哈哈哈哈(误)。
大概学到什么程度可以做软件?可以做学校里最酷的人?
一句话回答 Straightforward Answer:每周学一个小时(认真学),学三个月
我知道很多小朋友包括我自己当时学编程的一个最大的动力就是想要做一个吊炸天得软件然后成为学校里的Cool Kid。这个也是在这么一个相对中二的年纪学习编程相较于工作之后学习编程的一个区别,大家学习的初心会更加单纯一点,而不是为了去找到好工作啥的。这一点是很值得鼓励的。
我当时学了三个月左右,我当时其实有在外面上过一个python的课。怎么说呢,老师很好,是我的启蒙老师。帮助了我很多,同时也在她的帮助下完成了我第一个完全靠自己做的项目:
这是一个办公软件,可以把电脑上的文本文件(*.txt)转换成二维码导出在手机上查看和编辑。其实现在听起来好像还蛮酷的,但是实际上真的很简单就是一行代码的事情。
所以说呀,小朋友们不要觉得软件做起来很难。实际上不是很难,这里推荐一下vb,真的是一个可以很快帮你建立成就感的语言。它支持拖拽可视化ui制作,非常地简单好用,但是背后的语言么有点垃圾。但是我还是见过人用vb写图像识别的,所以语言其实不是最大的问题,看你自己喜欢哪一个。
我当时就是一直在做一个叫GPA计算器的东西,你们可以理解为一个算成绩的计算器(比较复杂的那种哈哈哈哈哈)。这个软件是我们学校所有学计算机的人基本都做过的一个类似于成人礼的东西。只要你做过这个软件了就证明你的编程技术在我们学校算ok的了,你就可以成为这个学校最酷的计算机小孩了嗷!我当时八年级左右用Python写了一个GPA计算器,当时不懂循环,所以我写了三百多个if(我当时真的佩服自己)。之后到九年级左右把这套代码转职成JavaScript放到了web端,然后再知道了循环(我是真滴有问题怎么学了那么久编程才会知道循环)把代码进行了重构。再过了几年到现在放到了小程序上给这个软件加上了用户排行榜统计图表绘制等看起来很酷的功能。
GPA计算器现在的样子
我数学贼差可以学编程不?
一句话回答 Straightforward Answer:可以,但是有难度
有一说一吧,我数学肯定是我们学校里学计算机的当中最差的。我数学真的不太好,考试一般都只能考个八十来分的这种。都说计算机科学和数学离不开关系,这个是真的。首先编程是计算机科学的一部分,今天这篇文章我们只讲编程。然后编程里呢会用到逻辑判断,基本运算呀这些。如果你研究更深一点玩到人工智能啥的学到KNN,状态机,神经网络这种就真的是很数学很数学的东西。
但是可以肯定的是,你数学不好同样可以学编程。我数学虽然不咋滴,但是我觉得我逻辑思维能力还可以。所以我当时就决定学,而且我当时还不相信数学和编程有关系。学习的时候我会因为数学差导致学编程学起来要比一般人慢,一开始编程的概念对于我来说就是一个崭新的世界。里面的思路我完全是陌生的,当时我就想要放弃。但是当我坚持下去之后,我会发现有这么一个门槛,只要跨过了这个门槛你就像是被打通了任督二脉,瞬间找到了学习编程的正确姿势。能够让自己用一个很顺畅的合适的方法和姿态学习编程,并且开始以编程的方式思考问题。
什么叫以编程的方式思考问题呢?(这个是我随便想的词应该学术上没这种东西哈哈哈哈哈)
就比如说我前几周和朋友在外滩走路,然后看到路边有那种无人售货机。就去买了瓶饮料,买饮料的时候我就会开始思考这个机器是怎么判断饮料被取出的。取出后又怎么判断我取出了那瓶饮料?在经过研究后我发现每瓶饮料下面都会有一个RFID标签,机器应该会在你拿走饮料关上门的那一刻通过门旁边的传感器判断你拿走了哪瓶饮料然后扣你钱。
类似于这种售货机
好啦有点扯远啦,我再稍微总结一下这一小节:数学不好可以学编程,但是会难一点。
尾声 The Usual Boring Ending
以上就是我今天想要分享的一些内容,大家如果有其他问题或者意见可以在评论区留言~初中生也能学的编程,不走弯路,先用后学
VB
如果你是初学编程,先用VB(Visual Basic)编个小程序,下载软件VB6.0,因为它好理解,易学,易懂,容易建立自信心。
安装完成VB6.0后,找到安装路径打开VB6.EXE,选择标准EXE:
简洁明了的窗体界面,右边是工程管理窗口,右边下方是属性窗口,可以通过视图显示。
你可以放一个“按钮控件”(commandbutton)和“文本框控件”(textbox):
通过属性窗口设置基本信息,caption属性就是控件上要显示的内容:
“文本框控件”的属性窗口:
运行程序:
效果:
开始写代码,双击按钮进入程序代码窗口,写入代码时程序会有提示:
运行后,点击按钮:
你如果成功了,那么你就认识Visual Basic环境了。
C#
再来看一下Visual C#的环境,控件的数量、类型和用法有一些不同,Button控件和textbox控件基本相似:
双击“按钮”进入代码编辑区后,发现有程序自动生成的代码,先不用去理解类库和命名空间,直接“干饭”即可,这里面代码结束时要加分号,否则就会报错。
看看运行结果:
Visual Basic要比Visual C#简洁易懂,如果临时用选VB,如果长期发展选C#。
再来看一个实例,求圆和矩形的面积:
Visual Basic
首先,摆控件:
这里一共放了三类控件,label控件、commandbutton控件和textbox控件,可以实现不同功能:
控件简介:
label控件:能够显示静态文本信息。
commandbutton控件:触发编写的程序代码。
textbox控件:与用户交互,可以在文本框输入信息。
控件的属性设置:
这几类控件大同小异,都是通过属性窗口,可以对它们的位置、字体、大小、文本显示方式和显示内容进行设置,caption属性就是显示的文本内容信息。
控件布局设置:
在工具栏空白的位置右键选择窗体编辑器,工具栏上出现了设置布局的一些小图标,你可以利用这些图标对窗体上的各个控件进行布局的设计,可以同时选择多个控件,统一设定它们摆放的位置和对齐方式。
写代码:
双击“计算圆面积”按钮控件:
Dim r, pi, s是对变量进行定义,你可以不用定义变量的类型,让系统自动根据其值分配,字符型、数字型是常用的。
r = Text1.Text,把输入的圆的半径送到变量r中存储。
pi为计算圆面积的常数,可以直接进行赋值。
s = pi * r * r表示圆面积的计算。
Label6.Caption = "圆的面积是:" & s,是将结果显示,你还可以用textbox控件实现显示结果信息。
矩形面积:
在关闭按钮中添加代码“end”,实现的功能是关闭窗口:
运行效果:
输入圆的半径2.65后,点击“计算圆面积”按钮,在label控件显示了圆形面积的计算结果。
输入矩形的长和宽,点击“计算矩形面积”按钮,在label控件显示了矩形面积的计算结果。
美化:
将文本框的backcolor属性改颜色,再将label控件的backcolor属性改颜色,最后将窗体的caption属性改标题。
效果:
用Visual C#来实现:
设计界面布局,Visual C#的界面布局调整要比VB灵活得多,鼠标操作即可完成界面的设计。
属性窗口的设置:
分类灵活,便于你去找相应的属性位置:
代码:
Visual C#需要声明具体的变量类型,这里面用到了double类型,双精度型的。
每一语句结尾要加上“;”,否则就会报错。
文本数字的转换Convert.ToDouble(文本),将输入到文本框中的文本转换成数字类型后才能参与计算。
label6.Text = "圆形的面积是:" + s,直接可以采用加号变量的写法,在VB中要用到“&”符号连接。
运行:
结束的代码:
Application.Exit(),点击结束程序。
菜单控件
Visual Basic环境下
添加一个新的窗体form2:
双击form2窗体图标:
选择工具中的菜单编辑器:
在标题栏写上“文件”:
继续如此添加:
单击“面积计算”子菜单,键入如下代码:Form1.Show
键入如下代码:Form1.Show
右键工程选属性,将启动对象设置为form2:
运行程序点击“面积计算”:
其实你还可以做一个带图标的程序菜单,利用API函数将图标添加到菜单上。
Visual C#环境下
添加一个新的窗体form2:
在左侧的工具箱内找到MenuStrip控件后,双击自动进入到窗体:
直接在窗体上进行菜单标题的输入和更改,完成后点击面积计算子菜单进入代码窗口,写入如下代码:
Form1 frm1 = new Form1():将Form1窗体进行实例化,实例化为frm1,也就是给它起个正规名称,这样后面才能够识别它就是代表Form1窗体
frm1.Show ():将实例化后的frm1进行显示,目的是显示Form1窗体
将启动的窗体改成Form2,怎么改,双击右侧窗口的Program.cs后,将Application.Run(new Form1())改成Application.Run(new Form2())就OK了:
改后:
运行点击“面积计算”:
弹出窗体:
再来看下面:
Visual Basic环境
打开窗体Form2后,从工具栏中打开菜单编辑器后,在文件下插入三个子菜单项,并为它们起个名字
插入后,回到窗体当我们点击文件菜单项时,可以看到弹出了三个子菜单项,这就是刚才我们新插入的子菜单项:
在写代码之前,你需要在窗体上放置一个“对话框控件”控件,实现打开文件:
如果工具栏上找不到这个控件,点击“工程”菜单下的“部件”选中下面的选项即可:
添加代码:
运行程序点击打开:
如果想过滤掉一些文件,只看某个类型的文件,可以加一行代码:
只显示txt文件:
Visual C#环境
在Visual C#环境下,同样在主菜单栏下插入三个子菜单:
加入对话框控件:
默认名是openFileDialog1:
加入代码,这里面用到了对话框的两个属性和一个方法,包括InitialDirectory、Filter属性和ShowDialog()方法:
用途:
InitialDirectory:设置初始路径
Filter:过滤文件类型
ShowDialog():显示打开文件对话框
运行程序点击“打开”菜单
弹出相应对话框:
温馨提示
在Visual C#环境下,路径是用“\\”来表示的,这和VB有区别,而它的注释块和Visual Basic环境下也是不一样的,这里面注释块用了“//”,这些语句同样在程序代码中不予执
读数据:
Visual Basic环境
双击“打开”子菜单,加入代码:
运行程序,选择打开子菜单,并在弹出的对话框中,选择文本文件:
将文本框text2的几个属性修改一下
Scrollbars属性,该属性是滚动条的设置,你选择最后一项both让水平和垂直都出现滚动条:
Multiline属性,改为true,表示可以接受多行文本内容,为false表示不接受多行文本:
做好这两个属性的设置后运行:
程序代码解释
If cd1.FileName = "" Then:如果没有选择文件,也就是文件名为空
Exit Sub:如果没有选择文件,则退出程序
Else:如果选择了文件
Text2.Text = "":text2文本框中的内容初始化为空
Text1.Text = cd1.FileName:text1文本框中的内容显示的是文件的路径
Open (cd1.FileName) For Input As #1:打开文件并读取内容
Do While Not EOF(1) :通过While循环来读取文件内容,直到文件结束
Line Input #1, str1:按行进行读取,将读取的内容赋值到字符串变量str1
Text2.Text = Text2.Text & str1:将文本内容的多行数据连接到一行,显示到text2文本框中
Loop:结束本次循环,进入下一个循环
End If:结束本次条件
End Sub:程序结束
这里面用到了Do…While循环语句,关于该语句的具体用法也是比较简单的,当文件没有到结尾的时候,程序就执行循环中的语句,如果文本结束了,则退出循环,EOF(1)表示文件中的文本已经到结尾了,前面加个Not EOF(1)表示没有内容没有到结尾
那么,如何按照文本已经有的格式显示呢?
程序这样修改一下:Text2.Text = Text2.Text & str1 & vbCrLf:加了换行功能
再运行程序,看一下效果,可以看到歌词内容是按照文本文件的原有格式进行显示的:
在Visual C#的环境下
要想读取外部文件信息内容,利用File类的OpenRead方法来实现:
双击“文件”菜单下的“打开”子菜单键入代码:
解释:
FileStream fs = File.OpenRead(openFileDialog1.FileName):以只读方式打开文件并实例化对象
using (StreamReader sr = File.OpenText(openFileDialog1.FileName)):创建StreamReader对象
string s = "":定义变量s,并赋初始值为空,作用是存放每次循环读取的行数据
string t = "":定义变量t,并赋初始值为空,存放所有读取的行数据,并以一定格式存放
while ((s =sr.ReadLine ())!=null):当读取文件内容不为空时,则继续循环
t = t + s + "\r\n":变量t以一定格式存放文件内容,这里面"\r\n"为转义字符,表示换行存储
textBox1.Text = t:将变量t存放的字符显示在textBox1文本框控件中
运行程序:
打开后,则将文件内容输出到textBox1文本框中:
将信息写入到外部文件
将信息写入到打开的文件,这里面使用了StreamWriter类,看下面这段代码
using (StreamWriter file = new StreamWriter(openFileDialog1.FileName, true)):表示向文件里面追加内容
file.WriteLine(textBox1.Text):实现文本框的内容,追加到文件当中最末行
运行程序:
点击“文件”菜单下的“打开”子菜单:
打开文件,发现最末一行已经追加了你想要追加的信息,而这个信息正是通过你输入到窗体界面文本框中的信息所添加的,这样就实现了已有文件的写入功能:
温馨提示:内容较多,欢迎关注,点击收藏,方便查找
相关问答
我是初中生想自学计算机编程,需要什么-ZOL问答
可以先从基础视频开始学习。2一般视频教程有从基础到进阶的教程,比较适合初学者。3如果对哪种编程语言感兴趣的话,就可以去自学。学习关键还是在于兴趣。
初中生想学编程几近零基础要怎么学习-ZOL问答
比如先入手C语言之类的,网上资源很多;如果自学能力不太好的话可以找个本科或者研究生的学长学姐带带你,这样可以很快入门,并且学会。编程最好还是要有人点拨或者...
初中生该怎样学编程?-懂得
中学生如有空余时间可以学习编程语言,但必须从基础学起,如先从DOS下的QBASIC起步,打好扎实基础,学习它的语法结构相似于其它编程语言,而容易掌握.然...
中学生学编程如何入门?
[最佳回答]中学生学编程入门首先要了解基础知识,尤其是掌握计算机电路、编程语言(如C/C++,JavaScript,Python等)的基本知识,并熟悉文本处理、分析及软件开发工具。其...
学习编程入门,本人是一个初三的学生了想学习编程,不知道肿么...
普遍编程学习都从C语言开始,不过由于C涉及到太多的底层知识,而且对于新手实在不易建议从教育编程语言开始入门,比如Smalltalk/Squeakbased,基于Java,基于Lisp...
初中学编程入门先学什么?
[最佳回答]首先来回答您的问题所有编程初始都要学习代码中的语言,最基础的就是C语言,当你稍微了解C语言,可以尝试学一学当今就业比较好的Java语言。接着考虑C++,相对于...
初中学编程入门先学什么?
[最佳回答]初中生编程入门应先学习面向对象的编程语言,如Java、C++或Python,因为这些编程语言可以帮助中学生有效地理解基本的编程概念和编程逻辑,并有助于培养学生的编...
我是初中生,现在考虑以后学做游戏,学电脑编程那些的,我该学...
首先学好英语。编程肯定要用到英语。其次是学好数学,尤其是高等数学。然后是编程语言,C++,JAVA,等等。初中生的话,可以先学RPG,建议上6R论坛学学。
我只有初中文化程度想学编程,从来没接触过,请问我要先学什么入门?
[最佳回答]先学操作系统,硬件维护,再学办公软件,再学点基础计算机语言,你如果想学编程就要学会C语言,该语言对英语要求不高,认识几个基本单词便可(相关网上搜索)。...
中学生学编程入门先学什么?
[最佳回答]学编程自然要先选一门编程语言当入口。语言都是工具,选工具前你要明确自己做什么东西,然后找什么语言适合做。例如后端编程学Java、Python;做前端应用学HTML5...