总结:我在大学三年是如何学习编程的

 回顾大学三年的经历,总结学习上的不足。

1

自我介绍

    我叫田智,网名北风,或者beifengtz,现就读于四川某211大学,大三,物联网专业(对这个专业不太感冒),是一名Java开发程序员,也打算在这个方向继续奋斗,个人首页:http://www.beifengtz.com。

2

我经历的大学

    纵观我的大学三年,还算比较充实,至少我所经历之后不会后悔,当然如果让我重新来过或许会有些不同的选择,但是没有如果。

    在大学这三年,在校电视媒体中心做过视频剪辑,自学了摄影,到喜欢的地方去旅行,做过小记者,当过班长,也荣幸担任学院历史最悠久的WingStudio软件工作室负责人,给师弟师妹们做过培训,甚至还在虎牙上做过网络直播(编程学习),当然对我影响最大的无遗是踏上了编程这条不归路。回首展望这三年,其实我的大学还算Colorful,原来我经历了挺多的,内心还是比较满足,在2016年9月进校的那一天肯定不敢想象我会选择这些。

大一

迷茫不知所措的一年

    才进大学的我和大部分大一新生一样,就是一张纯净的白纸,对自己的专业毫不了解,我只知道是和计算机相关的(填志愿时了解的),而对于计算机又只会使用鼠标左右键,甚至Ctrl + C/V的快捷键都不知道。大一上学期第一门专业课程是C语言,对于我这种计算机小白来说更是不友好,新奇百怪的编程代码、干瘪瘪的黑框框、看不懂的花样Bug都是我学习路上的绊脚石,于是我更加对计算机不感兴趣,所以这学期我没有选择学习专业。

    上学期更多的时间花在了视频剪辑和摄影上,因为加入了校学生处部门,所以不得不学习一些Adobe剪辑软件,在此期间我迷上了摄影,一头热血的我直接将高中积累的奖学金拿去买了一台半画幅尼康单反相机,然后买了一些书开始学习怎么使用它。小有成之后便和朋友约拍,发现校园的景色不足以饱我的眼福的时候,便开始在假期间去旅行,达瓦更扎、神木垒、红岩顶均留下了我的脚步,同时我单反里也留下了她的美景。

    下学期算是我的编程启蒙的一学期,那个时候开始学数据结构,课程内容对大多数同学来说很枯燥无味,但是我却很喜欢这门课。因为教这门课的老师对我很关注,我总不能让老师失望吧,而且我也喜欢这位老师,所以上课还是比较认真的。还有一个原因是每到上实验课的时候,我成为了那帮哥们的救世主,所以我对每次实验都很认真,每一份作业都踏踏实实地敲代码去实现。因为上学期的c语言基础没打牢,所以边做实验还得边回顾c语言知识,学起来比较吃力,经常会熬夜到两三点,甚至有一次因为实现一个功能做到了四点(身体重要,不建议熬夜!)。

大二

整个大学最最最最充实的一年

    在这一年我开始思考自己的发展方向,我应该做什么样的一个人,将来从事什么样的职业,于是我给自己定了一些小目标,每半年要达到什么什么样子,无论是在能力提升、交际还是编程技能上,于是这一年在我指定的计划中一步一步地走过来了。

    在这一年我选择放弃了一些事情,比如退掉了校全媒体部门,放弃了摄影爱好,出去旅行时间也变少了,甚至我放弃了转专业的机会(因为班长需要为期一年,当时才半年)。我所有的精力和时间都花在了两件事上:第一件就是提升组织管理方面的能力,不愿意当将军的士兵不是好士兵,所以我参加的所有活动、组织、项目都尽量去争取做那个领头羊,不是因为我具备那个能力才去争取,而正是因为没有这方面的能力,我甚至在公众面前说话都要发抖,和别人聊天都不敢对视,我深知自己缺乏语言组织和团队组织能力,为了锤炼自己、逼自己一把,所以我要争取做领头羊。很感激在这一年身边的同学和老师给了我信任,担任了班长、WingStudio第四届负责人、诸多项目leader等等,在期间组织了各种大大小小的活动和会议,庆幸自己还比较争气没有让他们失望。第二件事就是提示编程技能,因为物联网专业到后面会越来越偏向硬件,而我并不喜欢硬件,所以选择学习软开方面,于是尝试学习前端和Java,学习期间也承接了很多的项目来提升和锤炼自己。

大三

总结及进阶学习的一年

    进入大三身边的事情逐渐变少,班长、工作室负责人也陆续的退任,剩下的还有些零零散散的项目。这一年更多的是学习Java,也算是一个进阶学习吧,在之前虽然能用Java写一些网站应用,但是对基础这一块却相当的薄弱,所以这一年买了很多的书籍和视频来学习,将基础知识从头过一遍,对于像JVM底层原理、并发编程、框架原理等也都在认真学习,当然数据结构和算法也不能落下,因为这些都是大一的时候学的,学得快忘得快,所以必须都重新过一遍。目前也正在准备找工作,虽然春招实习对我不太友好,但是我也并没有放弃,相信问题是出在自己身上,接下来继续完善自我,当然也相信努力的人运气不会差。

3

编程学习之路

    我学习编程的过程也算是兴趣导向吧,因为大一学了c语言对它并不感兴趣,觉得它太麻烦了,甚至对编程提不高兴趣。为了让我对编程产生兴趣,所以我选择学习前端,前端的入门学习基本上是可视化的,写了代码就可立马看到效果,所以我选择前端为编程入门的一个学习方向。后来慢慢涉及到网站,所以我在师兄的带领下接触到了php,也用PHP写过一些网站。又后来听老师介绍Java是目前最热门的语言,于是我便入了Java的坑,再加上个人对于设计和逻辑来讲更偏向于逻辑,包括在前端也更喜欢写js而讨厌写html、css这些(样式设计和兼容让人头疼),所以我后面全面投入学习Java。因为学习后台开发,所以慢慢接触到了计算机网络、数据库、服务器等,为了达到一个人就能做一个简单的应用的目的,多以这些统统都要学。

    学习期间我还是做了挺多的应用。因为喜欢摄影所以我开发了VR360,参加工作室之后又开发了在线投票系统、资源管理系统、房易估小程序等,参加学校科研项目之后又做了室内定位系统(服务端)、导游机器人等。

    只会开发应用不知道底层原理?这种开发者很容易被人替代和淘汰,我也深知自己的处境,所以掌握原理才是真本事。于是后来我便买各种书籍和教学视频,有事没事就去看,虽然花了不少钱但是一点也不心疼,就当是给自己未来投资吧。Linux内核解析、JVM底层原理、并发编程、高性能MySQL、架构等都是我正在学或计划学的。为了不让我学得快忘得快,所以养成了做笔记和写博客的习惯,一些小的知识我会记在云笔记上,稍微多一点的知识我就会写成博客,方便以后学习巩固。当然后来创建了微信公众号,一个目的是促进自己学习,同时记录学习历程,保证每天都有看新的知识,不然怎么写有质量的文章呢。另一个目的是向更多优秀的人学习,在微信公众号里集结了很多行业内的大牛,他们都是我学习的目标,转载他们的文章、参考他们的学习经历、甚至直接请教等。在这里,每一位优秀的人都在无声无息地影响着下一位优秀的人。

4

学习总结

    相信看完我的编程学习经历之后会发现一个很大的弊端,也是我比较后悔的一方面,那就是有点急于求成,先看到效果再学习基础,在之前的基础也不是完全没有就是不扎实,然后就开始写高层应用,这是非常不好的!如果读者是正在编程入门的同学请引以为鉴,不要急于看到效果而忽略了基础,磨刀不费砍柴工。

对于具体的学习内容来说,如果我重新来过或许我会这样来计划:

1. 学牢数据结构和算法,它们是编程长征路上的基石;

2. 学习操作系统和组成原理,了解计算机本质更有助于理解程序;

3. 学习计算机网络,现在的程序大部分都是联网程序,必定会涉及到计算机网络;

4. 学习数据库及其底层原理,数据库是数据持久化的重要工具,无论你学的是前端还是后台,都有必要学它甚至清楚其原理;

5. 学习一门或多门编程语言,这里不区分具体哪个语言,每种语言都有其特性,语言只是程序的实现工具,重点还是编程思维。如果要学一门语言除了学牢其基础语法和语言特性外,还需要理解其内部结构和实现,以java来说类加载流程、GC流程等均是需要学习的;

6. 学习框架并理解其原理,在前面五点均做到之后上手框架便是轻而易举了,你只是需要在设计思维上做更多的提升,而框架里有很多优秀工程师知识的结晶值得去学习。学框架不等于用框架,学习其实现原理才是最重要的;

7. 实践,上面的基础学完之后就可以进入实践部分,根据所学的工具加上自己的想法去设计应用;

    当然到最后可能还有框架设计、架构设计啊等等,因为笔者还没到这种层次所以无法给出学习计划,不过相信一直努力能踏上那一步的,努力吧。

5

推荐

下面推荐一些书籍给大家,看完之后你就是大佬!

1. 《深入理解计算机系统》兰德尔E.布莱恩特

2. 《算法竞赛入门经典》 刘汝佳

3. 《Java核心技术》

4. 《Java并发编程的艺术》

5. 《深入理解Java虚拟机》

6. 《Java并发编程实战》

7. 《Netty权威指南》

8. 《高性能MySQL》

9. 《深入理解Spring Cloud》

10. 《Spring源码深度解析》

11. 《Effective Java》

12. 《Java编程思想》

13. 《架构整洁之道》

 文末送书

ps:今天开始后面会有一个长期送书计划,会把广告恰饭的一部分收入回馈给粉丝。

参与形式也都不一样,本期送书关键字为:0724123456

在后台回复即可以抽奖了。如图所示

挑选了3本书籍,中奖者可随意指定其中一本。

事实证明:参与抽奖和中奖的每次也都是一小部分人

推荐阅读:
前脚跟产品扯完皮,后脚同事把我项目代码分支删了

一次分表踩坑实践的探讨

阿里孤尽:Code Review 是一场苦涩但有意思的修行

彻底弄懂java中的常量池


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值