这篇文章是我写的第一篇不以编程为主题的文章,也是第一篇日记形式的文章,以前一直在写我个人对编程中某些事物的理解和教程。从今天开始,也会多写一些和这篇类似的文章。同类的文章统一分类到随心记
中。
先说一说我的编程之旅是怎么开始的。在初一的某一天,我鼓起勇气询问我的父亲能不能给我买一本《Java从入门到精通》。他爽快地答应了我的要求,很快,一本崭新的图书便摆到了我的眼前。在刚刚拿到这本书的时候,我如获至宝,每天都抱着这本书看。但是没过多长时间,我就和大多数人一样,将这本书放到了书架上吃灰。直到初三的时候,我仍然只会写最简单的“Hello World”。
事情的转机出现在初三的暑假,当时,我们家出去常住。临走时我随手带上了这本书,到了地方,因为谁也不认识,没有玩伴。在无聊之余便重新开始翻看这本书,可能是因为心性的成长,这不看不要紧,一看就深深的被书中的内容吸引住了。我当时用了一两个星期的时间看完了所有基础章节,回到家便迫不及待的实践起来。
说是实践,其实也没有什么了不起的。我到现在仍然记得,我当时写了数十个各种各样的和“Hello World”难度差不多的程序。文件名从A1
一直排到C*
,到了后来想翻看前面的代码的时候才发现找不到在哪个文件里面写的了,也是从这时候开始,我意识到了规范命名的重要性,在研究命名的同时也顺便看了看代码规范,一个良好的编码习惯也在这是埋下了种子。
现在再来说说我为什么会想要接触编程这个领域。我们家在我幼儿园的时候便有了电脑,刚开始还只会跟着哥哥看看动画片,到了小学,逐渐开始打起了游戏。刚开始我们一直在玩4399
一类的网页游戏,接着,我们便不再满足于网页游戏提供的游戏体验,向本地游戏进军。随即便接触了“植物大战僵尸”之类的游戏,紧接着便是“CF”、“LOL”。到了六年级的一天,哥哥向我推荐了“MC”这款游戏。他没玩多长时间便失去了兴趣,但是我一个人坚持玩了下来。我没有满足于原版提供的游戏体验,偶然从网上了解到可以添加模组之后我便开始尝试添加模组,现在还能清晰地记得当时安装JRE
和Forge
就耗费了我很久很久的时间。随后又尝试了IC2
、BC
等工业类的模组,但是发现我想要的一些玩法模组中并没有提供,于是我便有了自己开发模组的想法。到了这时候,我已经具备了一定的网络资源搜索能力,很轻松的就在“MCBBS”上找到了MCR
。简单的使用后我就发现它不能提供我需要的功能,随即在其讨论群中了解到了Java
,在这里便埋下了编程的种子,也因为如此,才有了开头的一幕。
正所谓站得越高看得越远,开始学习Java
后我才发现我了解的知识是如此之少,并且当时距离我初一已经有了相当远的时间。把刚开始接触编程的目的忘得一干二净,并且开始尝试写各式各样的小程序(黑历史),当时还恬不知耻的发到了哔哩哔哩上面,后来相当一部分都被我删除了(想翻我黑历史的可以放弃了)。
后来我也思考过我为什么可以坚持下来继续学习编程,我想很大一部分原因是我当时选择跳过一部分基础内容直接学习图形化开发。因为接触了图形化开发,我可以写出各式各样的能用肉眼看到效果并且可以获得周围人们称赞的程序。这种学习方法确时有显著的缺陷,当学习后面内容的时候很容易涉及到基础内容,遇到不懂的基础内容要么比葫芦画瓢应付过去,要么仔细研究一下再继续。不过我想,对于自学并且没有信心坚持下去的人,这不失为一种好方法。至于我们这些在校大学生,学习编程的大多都是学校要求,周围的人也是懂得,就算不写出来图形界面,他们也可以看出你的代码的亮点(不能看出来的话就更好炫耀了doge(雾)),这种时候这个学习方法的优势便不那么明显了。
直到高二的时候我才突然想起来我的初衷,随即用了好几个星期的时间构建了开发环境,并且开始着手写下我的第一个MC作品。我没有像其他人那样先写一些简单的玩意,而是直接开始着手写我最终想要的作品——现代工业-MI(一波猝不及防的广告doge)。这个骚操作不得不说给我造成了一些麻烦,因为我后面有很长时间都用来改掉原先写的死板、累赘的代码设计。
学习开发模组的过程中也认识了许许多多的大佬,中间有一个人让我受益匪浅。我经常向他询问问题,到后面我们也会讨论一些问题,当我写出一个代码设计的时候也会让他帮忙“评分”。不得不说这几年我确时获益良多,不仅锻炼了编码能力、结构设计能力,也学习了许多关于JVM的知识。
在我刚刚学完Java的基本内容的时候,我可以非常耐心的给任何人回答所有合理的问题。但是随着时间的推移,我渐渐的不再有耐心的千篇一律的回答那些非常基础的问题。所以有些人可能会很奇怪我有时候对不同的人态度不一样,甚至同一个人不同时候态度也会不一样,如果你发现我回答你的问题的时候态度不好,大多时候你应该反思一下是不是自己问的问题太基础了?是不是自己的问题随便百度一下就能搜到答案?基本上不会是因为我心情不好,因为当我心情不好的时候我大概率暂时不会理你(doge)。
我是一个大部分时候乐于分享自己的知识但是经常无法很好的用语言表达我的意思的人,所以我经常用博客的形式发布内容,因为写作的过程中有充足的时间供我思考自己如何表述。从另一个方面来讲,我是一个临场发挥极差的人,如果没有事先的准备,你直接询问我一些有深度或者摄入点很奇怪的问题,短时间内我可能无法分析到问题的本质,而是需要静下来仔细思考。
在了解了更多的知识后,我愈发地深陷其中,无法自拔。每当我写出一个良好的设计来取代老旧的代码,我都会感到无比的自豪与骄傲;在学习到新的知识的时候,我也会异常地兴奋;看到别人(团队)设计出的非常BUG的程序,在了解大致原理后,我也会情不自禁的默默喊出“牛逼”,遇到他人也会很乐意向他“炫耀”这个设计。
总之“站得越高,看得越远”这句话绝对不是没有道理,学到新的知识就能看到更多需要学习的内容,当你沉浸到其中的时候便能体会到探索的乐趣。
写了这么多,一方面是简单记录一下我的过去,另一方面也是给大家提供一个范例。
群里面的大佬绝不是一天练成的,所有大佬都有刚开始懵懵懂懂的时候,很多人会对大佬回避自己简单的问题甚至因此训斥自己而感到委屈和愤怒,但是这大多不是大佬傲慢不逊,而是为了点醒你。因为一味的回答你的问题并不一定是对你最好的。不同的人有不同的理念,但是有一个共同点就是培养独立能力。记住一句话:一味地依赖别人只会毁掉自己的未来。