找回密码
 立即注册
注册 登录
×
热搜: 活动 交友 discuz
查看: 94|回复: 5

How To Series: 初中生如何自学编程?

[复制链接]

1

主题

3

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2023-1-12 14:58:02 | 显示全部楼层 |阅读模式

昨天晚上一时兴起,想要写点儿啥东西分享给大家。于是乎申请了这么个专栏用来写点儿自己想分享的东西,同时还可能写点儿其他乱七八糟的吧~
好了咱们言归正传,今天我来分享分享关于初中生如何自学编程这件事。我从初一开始自学编程,到了现在也算是对写程序有一点点了解啦。做过几个小项目练手,自认为自学的效果还算可以,所以来分享下我自己的学习经历。希望大家可以不要踩到我当时踩到的一些坑,少走些弯路。
但是其实有时候,踩坑和走弯路是学习提升上必不可少的一环,还是得踩,得走的。
console.log("Let's Learn Some Cool Shit"); //Never Forget the SEMICOLON or else it is not elegant.
这边打个小广告贴一下我的几个GitHub Repo 大家感兴趣可以去star一下呀!

  • 囚牛 - 小程序电商框架: https://github.com/MohaElder/Project-QioNio
  • GPAC - GPA计算器框架: https://github.com/MohaElder/GPAC
  • GPACW - 小程序GPA计算器框架: https://github.com/MohaElder/GPAC-W
小朋友们最关注的问题 Most Concerned Questions:

初学者适合学习什么语言?
大概学到什么程度可以做软件?可以做学校里最酷的人?
我数学贼差可以学编程不?
<hr/>我的见解 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哈哈哈哈哈(误)。
<hr/>大概学到什么程度可以做软件?可以做学校里最酷的人?

一句话回答 Straightforward Answer:每周学一个小时(认真学),学三个月

我知道很多小朋友包括我自己当时学编程的一个最大的动力就是想要做一个吊炸天得软件然后成为学校里的Cool Kid。这个也是在这么一个相对中二的年纪学习编程相较于工作之后学习编程的一个区别,大家学习的初心会更加单纯一点,而不是为了去找到好工作啥的。这一点是很值得鼓励的。
我当时学了三个月左右,我当时其实有在外面上过一个python的课。怎么说呢,老师很好,是我的启蒙老师。帮助了我很多,同时也在她的帮助下完成了我第一个完全靠自己做的项目:




这是一个办公软件,可以把电脑上的文本文件(*.txt)转换成二维码导出在手机上查看和编辑。其实现在听起来好像还蛮酷的,但是实际上真的很简单就是一行代码的事情。
所以说呀,小朋友们不要觉得软件做起来很难。实际上不是很难,这里推荐一下vb,真的是一个可以很快帮你建立成就感的语言。它支持拖拽可视化ui制作,非常地简单好用,但是背后的语言么有点垃圾。但是我还是见过人用vb写图像识别的,所以语言其实不是最大的问题,看你自己喜欢哪一个。
我当时就是一直在做一个叫GPA计算器的东西,你们可以理解为一个算成绩的计算器(比较复杂的那种哈哈哈哈哈)。这个软件是我们学校所有学计算机的人基本都做过的一个类似于成人礼的东西。只要你做过这个软件了就证明你的编程技术在我们学校算ok的了,你就可以成为这个学校最酷的计算机小孩了嗷!我当时八年级左右用Python写了一个GPA计算器,当时不懂循环,所以我写了三百多个if(我当时真的佩服自己)。之后到九年级左右把这套代码转职成JavaScript放到了web端,然后再知道了循环(我是真滴有问题怎么学了那么久编程才会知道循环)把代码进行了重构。再过了几年到现在放到了小程序上给这个软件加上了用户排行榜统计图表绘制等看起来很酷的功能。



GPA计算器现在的样子


<hr/>我数学贼差可以学编程不?

一句话回答 Straightforward Answer:可以,但是有难度

有一说一吧,我数学肯定是我们学校里学计算机的当中最差的。我数学真的不太好,考试一般都只能考个八十来分的这种。都说计算机科学和数学离不开关系,这个是真的。首先编程是计算机科学的一部分,今天这篇文章我们只讲编程。然后编程里呢会用到逻辑判断,基本运算呀这些。如果你研究更深一点玩到人工智能啥的学到KNN,状态机,神经网络这种就真的是很数学很数学的东西。
但是可以肯定的是,你数学不好同样可以学编程。我数学虽然不咋滴,但是我觉得我逻辑思维能力还可以。所以我当时就决定学,而且我当时还不相信数学和编程有关系。学习的时候我会因为数学差导致学编程学起来要比一般人慢,一开始编程的概念对于我来说就是一个崭新的世界。里面的思路我完全是陌生的,当时我就想要放弃。但是当我坚持下去之后,我会发现有这么一个门槛,只要跨过了这个门槛你就像是被打通了任督二脉,瞬间找到了学习编程的正确姿势。能够让自己用一个很顺畅的合适的方法和姿态学习编程,并且开始以编程的方式思考问题。
什么叫以编程的方式思考问题呢?(这个是我随便想的词应该学术上没这种东西哈哈哈哈哈)
就比如说我前几周和朋友在外滩走路,然后看到路边有那种无人售货机。就去买了瓶饮料,买饮料的时候我就会开始思考这个机器是怎么判断饮料被取出的。取出后又怎么判断我取出了那瓶饮料?在经过研究后我发现每瓶饮料下面都会有一个RFID标签,机器应该会在你拿走饮料关上门的那一刻通过门旁边的传感器判断你拿走了哪瓶饮料然后扣你钱。



类似于这种售货机

好啦有点扯远啦,我再稍微总结一下这一小节:数学不好可以学编程,但是会难一点。
<hr/>尾声 The Usual Boring Ending

以上就是我今天想要分享的一些内容,大家如果有其他问题或者意见可以在评论区留言(无聊想骂我也可以哈哈哈哈哈)。然后我在这里也放一些我自己会用的编程学习资源~


  • 菜鸟教程 - 学的不仅是技术,更是梦想! 这个网站是我入门HTML,Javascript和Python的时候看的网站。上面讲的都很清楚,而且还有一些小的练习可以让你做,也有在线ide方便你直接去试。但是进阶了后就不是特别有用因为我个人感觉这个网站上的一些知识还是比较基础。
  • Stack Overflow - Where Developers Learn, Share, & Build Careers 特别有名的程序员版知乎,基本上你遇到的很多疑难杂症都可以在这上面找到解决方案。各种奇怪的问题都基本可以得到解答。但是基本上都是英语的帖子所以英文要好,而且可能还要科学上网一下。
  • Microsoft Virtual Academy 微软的一个免费的编程教学网站,里面可以学到很多干货。而且部分教程有中文,当然还是有很多英语的教程。
  • Microsoft Learn 上面的那个网站的新版本,但是现在只有Azure相关的教程。未来会有更多教程。而且这个上面的课程学完后会颁发证书。
  • https://www.csdn.net/ 其实csdn的真正用法是你在百度上搜索问题然后再点进去相关的csdn博客,还有博客园也是如此。
  • Build software better, together Github是全球最大的代码托管服务商,也是一个很大的开源代码社区。大家可以在上面看到很多很酷的project然后学习学习。
接下来再给大家推荐一下我个人觉得蛮好用的编程IDE和软件服务啥的。
哦对我先说一下IDE是啥, IDE(Integrated Development Environment),简单来说就是敲代码用的软件。
还有就是各位初学者千万不要学什么所谓的大神用记事本或者vim敲代码,这么多好用的ide免费给你用凭啥不用非得去学他们装个逼,有啥意思。但是这里说一下vim改脚本还是很好用的。

  • Build software better, together 还是要先推荐一下Github,养成代码版本控制的好习惯,方面你在多台电脑编程以及防止你的代码出现偏差然后没有备份恢复。而且你的代码开源在网上说不定还能获得大佬的点评呢(好吧这个我没遇到过)。
  • Visual Studio IDE、代码编辑器、Azure DevOps 和 App Center 宇宙最强ide了解一下,我自己初中的时候学vb和现在写C#用的这个。Xamarin和UWP啥的也蛮酷的可以玩玩。但是不建议你那这个软件当初学代码用的ide,因为很大而且可能会有点卡(如果你电脑配置比较低的话)。
  • Xcode - Apple Developer苹果的IDE,学苹果系的代码只能用这个(现在VS也可以了但是还是要有一台苹果电脑),颜值还蛮高的。
  • Visual Studio Code - Code Editing. Redefined 现在用的最多的ide,上可以写JavaScript,python,下可以写java。这么强的软件跑起来也快,而且还是免费的体积也不大。强烈推荐大家用这个ide入门。
  • A hackable text editor for the 21st Century Github的ide,在VS Code发布之前一直在用,颜值也很高。

回复

使用道具 举报

1

主题

3

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2023-1-12 14:58:52 | 显示全部楼层
太强了!!
回复

使用道具 举报

1

主题

4

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2023-1-12 14:59:02 | 显示全部楼层
牛逼嗷
回复

使用道具 举报

0

主题

5

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2023-1-12 14:59:40 | 显示全部楼层
太给劲了嗷!!!
回复

使用道具 举报

1

主题

7

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2023-1-12 15:00:22 | 显示全部楼层
忽然庆幸咱大浙江有“技术”选修课。
回复

使用道具 举报

0

主题

2

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2023-1-12 15:01:11 | 显示全部楼层
不学C的吗[飙泪笑]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋| 黑客通

GMT+8, 2025-4-6 21:52 , Processed in 0.202566 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2020, LianLian.

快速回复 返回顶部 返回列表