我的自学编程之路
我打算写这篇文章,纯粹是为了记录我的编程之旅。我相信每个程序员都是自学成才的,因为没有自身的努力,我们不可能成为一名更优秀的程序员。
2016年,我考入了计算机科学专业。计算机科学家研究如何利用计算机解决各种各样的问题,以及相关的应用数学。唯一的问题是,我的数学基础很差。我完全不知道计算机科学是什么样的,我以为它只是教人如何操作电脑,甚至都没想过要上网查一下。
从小我就梦想成为一名计算机科学家,开发应用程序等等。这始终是我的梦想,随着时间的推移,我终于如愿以偿地进入了计算机科学专业。我开始逐步实现我的梦想,成为一名计算机科学家和程序员。但作为一名初学者,我发现学习编程很难,很难知道从哪里开始,而掌握基础知识后该做什么则更具挑战性。
说实话,那时候我甚至不知道编程是什么,直到我在 Visual Studio 里用 VB.net 写并运行了我的第一个“Hello World”程序。大二的时候,我又用 C++ 写并运行了另一个程序。大三的时候,我用 HTML 和 CSS 写并运行了一个简单的个人博客。
我当时一窍不通,只知道自己想开发能在手机或网页上查看的应用程序。最初的几个月学习过程非常混乱。我接触到的信息五花八门,从网络到 A+ 认证,再到 Java、Scratch、Python,以及图形设计、HTML、CSS 和数字营销等等。在各种学习内容的冲击下,我感到很沮丧。我寻求建议,决定一步一步来。
真正的问题是,我一直没找到真正让我热爱的事情,没找到能让我投入时间和精力去做的事情,而不是把它当成“工作”。最终,我找到了自己真正想专注的方向——Java。我决定把精力和时间都投入到学习中。我决定余生都从事编程。
我告诉自己,为了集中精力开始编写代码,我需要做到以下几点:
从一门学科开始,只有在掌握了足够的知识后才能学习另一门。
想想你为什么要学习编程。例如,你最终想要掌握哪些技能?你为什么要学习编程?你能投入多少时间和金钱?
选择合适的编程语言。
选择合适的学习资源,例如在线编程课程、教科书、YouTube 视频。
下载代码编辑器。
练习编写程序。
加入在线社区。
永远不要停止学习。
有了这些,我目标明确,知道自己要去哪里。
从我的故事中,你可以学到的第一件事是:始终关注你真正的梦想或目标,你真正想要的是什么,而不是你认为可能带你到达目的地的那些东西。你可能不知道如何实现目标,但只要有互联网的帮助,只要你专注于目标,你就能做到。
我为什么选择Java?
我爱上Java,因为我知道,成为一名Java开发者,我成为移动应用开发者的梦想就能实现。我发现,如果我能学好Java,我就可以轻松学习任何其他语言。Java课程不仅仅教授Java代码,更重要的是教授编程的概念。Java用途广泛,例如后端开发项目,包括涉及大数据和Android开发的项目。它也用于桌面计算。它可以用来在一个平台上编写软件,然后在几乎任何其他平台上运行。它可以用来创建可以在Web浏览器中运行并访问可用Web服务的程序。它还可以用来组合应用程序,创建高度定制化的应用程序。它还被用于编写功能强大且高效的应用程序,适用于手机、传感器、网关、消费产品以及几乎所有其他电子设备。
“从笔记本电脑到数据中心,从游戏机到科学超级计算机,从手机到互联网;” Java 不是无处不在吗?是的,它无处不在。它可以在台式机、企业级台式机、电视设备和手机上运行。
我还记得我在大学实习期间上的第一堂计算机编程课,当时我们被要求编写一段简单的 Java 代码:
问题 1:println、printf 和 print 是什么?
问题 2:如何存储变量?
问题 3:什么是 Java?
班上一半的同学都有 IT 背景。因此,他们轻松地编写了给出的代码,而包括我在内的另一半同学则一脸茫然。我对课堂上发生的事情一无所知。我
这辈子从未如此尴尬过。在你的编程生涯中,你很可能会遇到类似的情况。
意想不到的是,总有一天,别人会知道一些你不知道的事情。这可能会让你颜面扫地,可能会让你错失晋升机会,甚至可能让你丢掉工作。但事后你的应对方式至关重要。
后来我发现了 Udemy 和 Sololearn,很快就意识到自己拥有巨大的学习潜力。虽然当时我还不确定未来的方向,但能够学习新知识、记住这些信息,并将它们运用到我脑海中原本只存在于想象中的作品中,这种感觉简直太棒了。我犯了很多错误,总是逃避问题,把难题交给朋友帮忙解决,但现在我可以自豪地改正一些错误了。
我收集了各种资料,看了很多关于Java的YouTube视频,甚至还在Udemy上报了个课,花了几天时间学习基础知识。说实话,这并不容易。这对我来说是全新的体验,但我当时只知道我必须做到。我的同学们比我强,我知道自己还有很长的路要走。但这反而激励我更加努力学习。
我努力学习,但错误不断,这让我很沮丧也很恼火。我必须保持冷静、专注,努力学习,并且坚持不懈。我建议大家尽早选择自己的学习方向并专注于此,因为即使现在还不行,我们最终也一定会到达目的地。
我的错误包括:自我怀疑、缺乏自信(恐惧)、拖延、容易放弃和胆怯。错误会带来很多收获,无论是我们自己的还是别人的,所以我决定分享我的经历,希望在我努力改正错误的同时,你们也能从中受益。 “永远要从别人的错误中吸取教训,因为我们不可能活得足够长,去犯遍所有的错误!”
编程如何改变了我的生活?
编程让我更加相信自己能够解决问题,克服错误。
它让我彻夜难眠。Stack
Overflow 成了我的挚爱。
我的思维能力得到了提升。
我开始欣赏那些带有完善文档的代码。
它给了我人生的意义。
有时,我会因为忽略了简单的语法错误而感到沮丧,但同时也会为自己取得的进步而感到高兴。
所有语句都变成了布尔值……要么是真,要么是假。
我的计数从 0 开始,而不是从 1 开始
。我现在明白,训练计算机完成特定任务比训练人类要难得多。
结论:
我花了几个月到一年的时间才找到自己的方向,并开发了一些小型桌面应用程序,才开始逐渐适应开发者的角色,并开始坦然面对自己的错误和恐惧。
我期待着学习更多,成为一名更优秀的程序员,并尽快找到我的第一份程序员工作。我想鼓励所有人,包括我自己,成为一名程序员并非仅仅通过参加计算机课程就能学会的。即使你拥有计算机科学学位,你仍然需要对编程充满热情,勤加练习,阅读书籍,观看演示,尝试不同的编程语言,阅读代码,编写代码,学习盲打(我使用https://www.keybr.com或https://www.typingtest.com)。这样做可以改善你的姿势和肌肉记忆,你肯定会注意到打字速度的提升。给变量和子程序命名时,要确保它们易于识别或表示。与其阅读,不如直接输入。对我来说,我会把代码写在笔记本上或者输入到电脑里,因为这样我能记住我看到、记住或练习过的内容(为了更好地理解,一定要把相关知识写下来)。学习并实践,每天编程或编写代码,编写你感兴趣的软件。我玩游戏,但那不是我的兴趣所在,我更期待开发社交媒体应用或商业应用。从第一行开始向下阅读堆栈跟踪信息,力求编写尽可能小的可运行程序,经常上网搜索,一次只构建一个程序,确保大括号始终成对出现,并正确格式化代码。
每个故事都能启发我们重新思考优先事项或调整努力方向。
犯错的尴尬只会持续几秒钟,但从中吸取的教训却能终身受益,相信我,这绝对值得。
我希望这篇文章能激励更多人永不放弃。我们一定能做到,也一定能成功。只要保持热情和求知欲,并找到一位良师益友。
特别感谢查尔斯·贝斯特,在他的鼓励下,我分享了我的编程之路,这在以前我从未做过。感谢他指导和帮助我不断进步。
现在就下定决心,让你的梦想成真,它就一定会实现。