专栏名称: Tiny4Voice
一天一条来自 Tinyfool 的语音鸡汤,暖胃暖心,让我们一起在漫漫长夜里面默默前行,在死之前,没有终点,不会停歇。
目录
相关文章推荐
小小牛财经  ·  华为云官宣DeepSeek V3/R1满血版已上线 ·  2 天前  
丽水在线  ·  定好闹钟!第二批次文旅消费券来了 ·  2 天前  
丽水在线  ·  定好闹钟!第二批次文旅消费券来了 ·  2 天前  
绍兴交通  ·  交通运输部示范典型案例,绍兴+2 ·  3 天前  
绍兴交通  ·  交通运输部示范典型案例,绍兴+2 ·  3 天前  
企业专利观察  ·  汤森路透的胜利,是否为“AI版权化”开了绿灯 ·  3 天前  
企业专利观察  ·  汤森路透的胜利,是否为“AI版权化”开了绿灯 ·  3 天前  
51好读  ›  专栏  ›  Tiny4Voice

我是怎么自学编程的,兼谈我觉得该如何学习编程

Tiny4Voice  · 公众号  · 科技自媒体  · 2018-10-29 12:52

正文

题图就是才子王勃写的“落霞与孤鹜齐飞,秋水共长天一色”的景色所在地,也就是滕王阁上望过去的江景。一来是因为当前是枯水期,所以看起来并不多美,二来对面已经是高楼林立,没有过去的模样。话说,才子王勃写的时候,滕王阁才两层楼,也没多高,但是那在古代的中国,在当地已经是鹤立鸡群一样的高大建筑了。现在呢,到处都是高楼,重修的滕王阁有9层,但是相对今天的标准,也算不得多高大了。


今天聊聊,我小时候是怎么开始自学编程的。


首先大概是在88-89年的时候,大概在我10岁的时候,我看了一个动画片叫做《星球大战-麦克瑞一号》,这个神奇的动画片,其实是两部日本动画片被美国公司引进改编成一个动画片,然后又被大陆引进的。后来好像没有怎么被重播过,甚至在网上都无法找到当时的原版普通话配音版本。



在遥远遥远的未来,黑星和他罪恶的军队为了控制整个地球而发动战争,他们唯一的对手是科学家詹姆斯·查格尔博士和他的精锐勇士。他们在一起,是不可战胜的,他们在一起就是麦克瑞I号。MA……MA……MA……MACRON 1


这段很燃的开场旁白的感觉我至今难以遗忘。


其实那时候电视机上的新闻和一些电视节目已经在讲计算机是什么对未来很重要的东西,但是我当时对计算机没有一个具象的认识。这个动画片第一次给了我一个计算机是什么具象认识,当然,现在看起来也许有点偏颇。



上图是战舰里面的主控电脑,看起来,更像一个巨大无比的吊灯。它叫雨果,平时它用语音和舰上成员交流,你可以问它任何问题,它无所不知,几乎无所不能。甚至主人公还经常用上图的一个台子跟雨果亲密接触,雨果就会用一个现在看起来是一个三维的宇宙投影作为场景跟主人公交流。


现在看起来,我一开始对电脑的预期就过高,我觉得电脑应该是可以语音交流的,应该无所不知,无所不能。虽然我一生中从来没有遇到过这样的电脑,但是这就是电脑给我的第一印象,这伴随了我一生。


其实那时候,国内还没多少计算机。有一些比较好的学校有Apple II,那时候的报纸上也有一些广告,但是显然不是我父母可以买得起的。


后来感谢我们牛逼的早期山寨产业。国内有一家叫做小霸王的公司,一直在山寨任天堂的红白机。



在日本玩正版游戏的玩家一盘几百块钱的游戏卡只能玩一个游戏,而在那时候,中国的玩家就可以买到各种68合一,168合一,256合一的游戏卡了,虽然里面大多数都是重复的游戏,有时候只是更换了一个颜色方案或者一些设置,但是仍旧可以廉价便宜的玩到当时几乎所有热门的红白机游戏。


那个时候,小霸王和类似的山寨游戏机厂商,开始做一种叫做学习记的机器。我不知道这类东西也是从日本或者美国山寨来的软件呢?还是完全自主研发的。反正你可以理解为用任天堂红白机兼容机的硬件,模拟一个PC的一些功能,显示器由电视机充当,带有键盘的这么一台机器。如下图:



说是学习机,其实游戏手柄齐全也完全兼容任天堂红白机的游戏,所以,当时很多孩子鼓动家里买的时候,无非是因为直接说买个游戏机,家里可能不同意。买个学习机听起来好多了,但是至于你在玩游戏还是学习,父母又不可能天天看着你。


但是,我真是冲着学习机这点买的。92年的时候,我刚刚上初中的时候,我父母拗不过我,给我买了一个学习机,那时候,我13岁。


我当时也天真的以为这和真的PC是一样的,无非是便宜一些而已。这种学习机的标配是打字练习软件,五笔练习软件,一两个小游戏,有的还有英语学习软件,后期的还有一些跟课本同步的课程。这些东西,我很快就玩腻了。我发现这里面有一个界面叫做BASIC。当时我其实都不知道计算机语言是什么。那时候,学习机上的BASIC大概就是这个样子:



这是BASIC还有行号的年代,不管你输入的代码顺序如何,实际上是根据行号大小来决定执行顺序。电视机的低分辨率上,每个字符都很大。这个界面本来不该吸引我的,但是我看学习机的说明书上说这BASIC可以用来做计算,在屏幕上打印一大堆字符,甚至可以调用一些图像符号,也就是说,我可以用它来编写类似马里奥一样的游戏。于是,我马上就入迷了。


首先,我先是对着手册用BASIC来试图解决数学课本上各种数学题。除了计算机字符里面是用*代替乘号,用/代替除号,当时没有办法输入分号以外,数学公式基本上可以算作任何一种语言的第一公民,所以非常容易就实现了。我当时就已经感受到了计算机的强大,不管对我多复杂的公式,只要输入到了BASIC,一执行马上就会出结果。


然后这很快就变得无聊了,毕竟我只是一个初中生,我并没有太多真实的计算需求。


于是我来是学习怎么在屏幕上显示字符,然后我干脆用BASIC复制了学习机里面内置的打字练习软件。那个软件其实很简单,就是有不同的字母从屏幕上方一点点掉下来,如果在字母消失之前,找到这个字母在键盘的位置并且用手按下这个键的话,这个字母就会爆炸消失,然后你就会得到相应的分数。如果你让一个字母落到最下面,就会炸掉你的地面上的一个球,好像是炸光了就输了,还是炸了多少个球就输了,我记不清楚了。



然后,后面一定就是写游戏了,用这个BASIC可以操作学习机里面存储的一些游戏角色,比如马里奥之类的。我就天天研究该怎么做一个可以玩的马里奥。那时候毕竟还是个初中生,很多东西都不懂,所以也有很多惊喜。


比如,我发现我可以控制某个键,写代码让角色左右移动。当然这样就像鬼了,那么我可以在移动的过程中,没移动一步切换一张脚部位置不同的图片。那么就有一步一步移动的感觉了。比如,我按跳的按钮,我可以设置一个移动速度,让角色上移,这就有跳起来的感觉了。但是如果一会儿也匀速掉下来,就看起来很奇怪。我记得好像我那时候在物理课已经学习了什么叫做自由落体,就是有固定的加速度往下运动。于是,我就尝试,让角色加速下落,直到落到地面,我就发现,看起来跳起落下的动作就看起来很自然了。


我至今还记得,我研究出来这些东西以后,在上学的路上眉飞色舞的跟同学讲这些的那一幕。


后来,到了高中,我们有了计算机课,学的是另外一种BASIC,更先进一点点,用PC机。不过高中我们只有高一有计算机课,我但是毫无争议的成为了计算机课代表,一时风光无限(每天都有妹子来问计算机作业该怎么做)。然后,我们连去学校机房的机会也没有了(没有课的时候不能去)。那时候,我也就是课上看看谭浩强的C语言和朋友买的Borland C++手册,但是不管是C语言,还是C++的运行环境我都没见过。那时候,我已经知道了学习机相对PC的不足,基本上那个BASIC已经是它能力的极限。而到了高三毕业的时候,我父母给我买了一台计算机,我才真正的拥有了自己的电脑。







请到「今天看啥」查看全文