博主是一个普通三本的物联网工程学生,但是我们专学校安排到了计算机学院,我之前在没有上大学的时候根本就不知道什么是编程。身边也没有从事这一行业的,我也不知道我最后选择了干这行。

首先说下博主 目前在岗实习,虽没有像培训班里的那种一出来就是10k-20k,但也不算差,等到毕业有毕业证因该也能够到。

为什么学

这段大多讲的是博主在大学的学习科目,可以跳过向下看,如想看也可以看看。

我大学专业物联网听着以后发展都好,但是越是这样的专业,越是让你感到无力,物联网也是新型行业,我上学那年好像物联网研究生都没有出来几批。学校安排的课程很杂很浅,当时上课的时候一度不知道这到底是在学什么。

大一开的C语言(这门课只要是大学生基本上都要学,当然有的专业不用哈)、数据结构、物联网导论还有什么就记得不是很清了。C语言是谭浩强的教程,我们大约学了3/4,感觉学的不错(当时自认为),其实后来发现,C语言别说我刚学的就算是干了多少年的C工程师都不敢这么说(毕竟指针和内存管理能把人逼疯)。数据结构寥寥草草(当时数据结构用的C++,虽说和C很像但是肯定是有差距的)。大一基本上就是在参加活动和满课中度过的,说实在的这一年真的不知道自己学的是个啥?最最倒霉的就是上学期考试英语还挂了。(在这里奉劝各位,不要不知好歹,千万不能挂科,会损失很多的哦)。

大二开了Python、Mysql、C51当然还有一切其他的课程,这里就不一一说了,对于Python当时就是感觉这个编程语言真有趣啊,几行代码就可以实现那么多事情。当时疯狂迷恋爬虫(当时有句话不是爬虫学的好,牢饭少不了),经常在网上爬一些视频、图片、文章。mysql学的也还可以,但是后来因为课时原因没有Mysql高级部分没有学完。讲C51单片机老师非常敬业,所以这门课我也贼喜欢,当时我一度认为卧槽这就是物联网,用C编码后就可以执行对应的操作,当时实现流水灯就能让人高兴坏。后来发现还有很多高级芯片,就不怎么玩C51了。大二也就这么平平淡淡过去了。

大三算是对物联网有稍微了解了一点,因为这学期的课很少大多都在实验室里面,学习了Zigbee、自学的Stm32,然后基本就天天看这些东西,确实也挺有意思。也自己做了一些小玩意,当时就是觉得以后干这个也行挺爽的。其实当时挺纠结的到底是干硬件还是软件。但是仔细想了一下干硬件肯定搞不过机电院的最后依然决然的选择了软件这条路。

大四… 这段没法写,因为博主目前就是大四。

如何自学

刚开始的时候我想的向Python方面发展,但是看了很多评论和文章发现Python虽说确认人才需却但是,人家需却的是高精尖。无奈放弃这条路。之前也了解过Java但是并没有真正写过一行Java代码,就觉的这个语言和C一行严谨但又没有指针和内存管理,然后就搜了一下,感觉好至少在近几十年还不会落伍。就这样目标算是确定了。

接下来就是开始疯狂找资料。说实在的现在网上的资料还是很多的,这样就需要我们能辨别那些适合你(这里不能说谁讲的好或不好,既然能发出来肯定有这个实力来讲课的)。咱们不能说因为自己感觉不好就贬低别人的努力成功。

看视频肯定是首选B站大学,在刚开始阶段,我首先选择的是作者:狂神说的Java学习路线学习

这里要说一下,狂神的视频确有自己的特点,语速较快,但是能在上课途中能留足时间让你做笔记,同时他也会做笔记(做笔记是个好习惯)。但是它的Javase高级部分不全,所以就转向马士兵的马老师了。

狂神的视频适合刚接触Java的同学,但是不能只看狂神的视频,只是体系是挺全的但是,在细节方面扩展不是很多,讲的不是很全面。(在其他的Java视频评论区中经常能看到贬低狂神的,说狂神讲的不行,照搬尚硅谷的什么什么…但是至少别人这也是免费的课程,而却视频录得也可以,所以我们没有必要去恶意攻击。)

马士兵的视频是我主看,视频的质量都还可以,但是也有的视频有点老了,但是一直在更新,估计很快时评都是最新的了。马士兵的学习路线是相当全的。马士兵的视频大约看了有80%左右。

我一般是马士兵的和狂神一起看,比较重要的框架,两个都看一边,不重要的就主马士兵的看。当然不局限这两个还有黑马的、动力节点的、还有一些不是很出名的博主的视频。

在自学过程中,一定一定要做笔记。当你需要用到这个技术的时候你能有一个回顾的机会。笔记一定不要使用视频的课件直接用做笔记(当然也不一定,应为有些视频的还是可以直接用课件做笔记的)。听一遍、写一遍比只听一遍效果好的多。还有就是学习的时候一定要跟着教程去练习,不要眼高手低。不老觉得很简单,但是当你动手之后,提示栏中就有可能是血月(一片红)。眼高手低是通病一定要克服。

学会克制

说实在的是克制自律是自学最大的障碍,学个一两天就不想看了,就想要不今天歇歇明天再看。要不得要不得,实在是要不得。其实我也没有那么大的耐力,只要放假回到家基本上,就属于脑子塞稻草了,学习不可能绝对不可能。

那如何高效学习那,我的答案就是自己要给自己有压迫感。每个人的情况都不同,方式也不同。有些人本身就自律。博主那就是每天给自己安排好任务量。做不完不睡觉年轻人谁不熬夜啊。边看、边敲、边记这三个步骤缺一不可。如果有人和你一起学习那就更好了。博主宿舍就是,8个人三个培训班,一个自学前端。每天宿舍充斥着键盘敲击的美妙音符。

一起学不是说每一个视频都要一起看,一起学的好处是有氛围。氛围能使你更加有耐心的学习。

选择自学之后,就要收一收自己的那好玩的心了,每天就不要一入Tim就无法自拔。游戏的诱惑如果你能忍住那就不用担心什么,如果忍不住那就删了吧,直接有效。不到放假就别然他出现在你的手机桌面上。

切记思想上不要误入歧途,什么意思那就是,不要过分感动自己。(我今天那么努力, 明天歇一歇,下午遛一遛、转一转)这种思想一定要不得,要是这样最后的结果那肯定是,说努力的吧也努力了,一写代码完犊子这也不知道、那也不知道。

自学一门语言,而且以后想靠它吃饭那就踏踏实实。举个不恰当的对比,他就好似考研,你每天把其他的事情全都抛开,一心只管学就好剩下的交给时间。当然这并没有考研的起那么早,但是有很大可能睡得比他们晚。

应当保持一种我学习我快乐的感觉!

时间安排

这就是一个攻坚战,时间跨度相对比较长,坚持下来你就已经成功了。博主的标准就是,每天的学习时常大约在8~10个小时左右。

基础不劳,地动山摇(SE—到---javaWeb都算基础)

这个时间安排要相对长一些至少要20天或者一个月左右,这个阶段,博主看了两遍全作笔记,但是学到最后还是感觉有点虚,东西多,比较杂容易忘。所以一定要好好把基础打牢。

视频推荐: 马士兵老师

这个也是相当重要的,以后在项目中基本上就是对数据库的增删改查了。虽然以后用的是框架。但基本原理还是要懂得,不然以后报错都找不到哪里的错。

javaWeb

从这里开始,基本上即开始能够看到最基本的不用框架的web项目了, 也是相当重要的。这里要学习很多与Web相关的东西,比如Tomcat、前端三要素 HTML、CSS、JS、Ajax…学完这部分的内容基本上就可以步入框架的学习了。在这里可以扩展一下自己前端的知识。吧LayUI、bootstarp…前端的组件库学习两个会用就行。

这里视频不好推荐,因为都挺不错的,但是又不可能都看。

到了这里就快了,框架上手第一步肯定就是喜闻乐见的Spring了。以后的学习基本上你就不会再离开他的。有人推荐直接上SpringBoot但是我还是感觉一步一个脚印踏实。Spring框架是Spring家族的基础。基本剩下所有的Spring框架都是在Spring的基础上进行改进的。这个地方博主看了两遍(狂神/马士兵),当然到框架这里就没办法在推荐了,萝卜青菜各有所爱,但是我还是个大家一个建议,选择比较全面的视频进行学习。

SpringMVC

都说现在基本上都是SpringBoot开发了,但是有些公司还是会用SSM(Spring/Spring MVC/Mybatis)、SSH(Spring/SpringMVC、struts/hibernate)进行开发的。所以该学还是要学的跑不脱。

mybatis/MyBatis Plus

这个ORM是现在国内使用较为多的一个数据库框架,方便快捷。Mybatis Plus实在Mybatis的基础上改进的,MyBatis plus推荐学完SpringBoot之后再学也不晚。这个要求熟练掌握。毕竟用的太多了。

到这里ssm基本上就学完了。下面就开始SpringBoot的学习了。这里可以暂停推进,学习一下Spring注解。

这里还要先学Maven,这是一个包管理工具,现在的开发基本上就是,“约定大于配置”默认都遵从一个规范进行开发。这个可以在学习完javaWeb就开始学习。看看自己的情况选择什么时候学。

git/Svn

这个时候也可以学习一下版本控制工具的使用了,现在大多使用的git,但是也有的公司选择使用Svn各有千秋。尽量都掌握。再说了会用就行,而且学习时常都不是很长。

Springboot

学到这里学习方式科能就要变了,因为你发现当你在学SpringBoot的时候突然用了Redis,或者用了其他没有学过的框架。所以这里就要适当学会按下暂停键。如果发现没有学过的框架,就可以在这个用到陌生框架视频的地方打个断点,去学习新的框架,然后在回来继续学习。

Spring Cloud

SpringCloud的学习内容是相当相当多的,里面用到的工具、框架会特别多,但是每个不会特别大,就是多。微服务是趋势,也是目前逐渐被公司采用的技术,所以卷起来学!!!

推荐看: 雷神SpringCloud

微服务框架

下面的一些框架就看自己的需求来进行选择了。还是那一句学无止境,你现在学了,就算以后忘了,脑子里肯定是有印象的在学也快。

还没结束

到这里在提醒一下:笔记、笔记、笔记!最好都放到一个子目录下方便查找。学完之后你会发现,你会多很多的笔记。这些都是你努力的见证。

在这里推荐一个笔记软件:typora挺好用的

到这还没结束,知识是学完了,但是还没动手实践那!有人说在学的时候跟着视频做过一些小的项目。但是那还远远不够,那就好象你会开车,就说自己是赛车手。

到这里就需要在B站或者GitHub上找一下比较好的项目练练手,开开眼。见得多了工作的时候遇见就不会慌。推荐刚开始先在B站找跟着视频做,后面感觉可以了在看开源项目。

这个时候就会把你所有学过的东西进行整合。让顺便也复习一下长时间没有用的一些知识点。

在之后哪,就可以准备你的面试了!同时可以在面试前找两个面试的视频看一下,因为就算你技术再好,面试过不去,也没有办法啊。可以边看便准备测试。

写这篇文章的意思就是给自学的同学、迷茫的同学一些建议。匆匆十几年,也到了我们开始步入社会养活自己的时候了。总是有一门技术来养活自己的。

在最后声明一下:我不是马士兵的托,主要博主就是这样学的。每个人有每个人的选择。其他优秀视频也是可以的。

如果需要交流:可留言 或者 +QQ:2095623172

加油啊!少年!!

自学编程真的很无力吗?不,完全可以相信自己。【肝 5000+字自述java自学】相关推荐

  1. 学计算机编程难吗,编程真的很难吗?为什么会认为学编程难?

    对每一个决心学习编程的程序员来说,你的学习历程可能是这样:如同一片树叶,开始被各种建议拽着走,直到学完了每一个你能想象到的课程. 但会有很多的学生觉得编程很难?其实学习编程是很有趣很好玩很实用并很有成 ...

  2. 软件测试从入门到入职,自学规划真的很重要~

    一.思路 在决定自学之前,一定要问自己几个问题,把这几个问题思考明白了,自学的道路会顺利很多,因为见过了太多的"从自学到放弃". 1.自己是否真的想好了进入这个行业?是否真的经过了 ...

  3. 北海哪里可以学计算机编程,编程真的很难吗?为什么会认为学编程难?

    学习蜜月期:这是一个充满喜悦的.非常容易取得成功的过程,借助精雕细琢的资源,你会解决那些看似很难,但全是可以攻破的问题.你会掌握基本的语法结构,对于取得的成就很开心. 迷雾悬崖:这是一个痛苦的自我实现 ...

  4. 编程到底难在哪里?学编程真的很难吗?

    困难 1. 难在思路的构建 你学了很多语法,很多 API,但是当给你一个实际问题,让你通过编程实现,不是简单地罗列 API 即可完成,而是需要你对问题进行分析,理清解决问题的逻辑,然后再通过各种算法. ...

  5. 你想玩物联网吗?物联网编程真的很难吗?原来很简单。

    今天我们继续通过米思齐来学习编程.上几天我们已经能够通过点灯科技通过网络用手机APP就能控制小灯的亮灭了,今天我们继续通过点灯科技来玩点灯,即是复习又有创新. 今天主角就是点灯科技平台,米思齐编程软件 ...

  6. 小猿圈IT自学分享-自学编程需要克服的困难

    随着互联网行业的蓬勃发展,越来越多的年轻人选择改行做程序员,有些人选择报名学习班,也有一些人选择自学,因为现在网上的学习资料太多了,但是自学的话也不是那么简单的,需要客服很多困难,也有很多阻挡学习的因 ...

  7. 自学编程到底需要多长时间?

    最近,很多小伙伴私信问我,自学编程到底需要多长时间? 我想说的是,到底需要多长受很多因素影响,无法用一个确定的时间段来进行评估. 第一.学习目的 首先你应该明确知道,自学编程你的目的在于什么?仅仅为了 ...

  8. 自学编程5个月找到了月薪12K的工作,我的方法值得大家借鉴

    昨晚在刷知乎的时候,突然跳出了字节发来的录用邮件,期待了很久offer,最大的感受就是这5个月的编程自学没有白费. 高中对编程很感兴趣,但是一边搞主课一边自学编程导致高考没考好,编程也没学出什么苗头. ...

  9. 震惊!某程序员吐槽零基础自学编程很难,真的是这样吗?

    前言:在自学编程的过程中,一部分程序员遇到冰冷的英语字母,枯燥的编程教程,果断选择了放弃.但其实自学编程不是那么难,只要是逻辑思维或者理科比较好的还行的小伙伴,编程入门完全可以. 零基础程序员自学编程 ...

最新文章

  1. 在Ubuntu 14.04 64bit上安装python-pyqt5软件包(python 2.7)
  2. 【Java】字符串(二)
  3. NC:植物与根际微生物之间的通路被破解,通过合成生物学利用微生物固氮!...
  4. tidb 企业_TiDB 在马上消费金融核心账务系统归档及跑批业务下的实践
  5. C#ReadLine()和ReadKey()区别
  6. php代码注释处理类库,php代码注释
  7. 脚本命令_SAP HANA数据库备份命令脚本
  8. 南工程c语言实验报告,Linux环境下-C语言编程实验报告(1)(总4页).doc
  9. android 回退函数,android浏览器研究-回退和前进
  10. Android更改包名
  11. 图解WinHex使用入门
  12. 小学三年级英语听力测试软件,人教小学三年级英语(下)期末检测题+听力测试...
  13. android编程闪退,软件闪退怎么办
  14. python判断可逆素数_可逆素数 - 寂寞暴走伤的个人空间 - OSCHINA - 中文开源技术交流社区...
  15. 开发钉钉小程序(后台)心得
  16. 面试 HTTP ,99% 的面试官都爱问这些问题
  17. 网址大全(hao123和2345)
  18. 关于兼容导入excel2003和excel2007版本注意事项
  19. (01)ORB-SLAM2源码无死角解析-(58) 闭环线程→计算Sim3: 源码Sim3Solver::iterate()讲解
  20. CSS3选择器(选择符)

热门文章

  1. 树链剖分——轻重链剖分
  2. 搭建syslog服务器
  3. python自带笔记本电脑_Python内置常用模块
  4. 在 Virtual Box 安装 Mac Os 并安装 Qt 开发应用
  5. cdh集成sentry
  6. Myeclipse 10激活失败解决方案
  7. java多线程学习一、线程介绍、线程创建的3种方式、lambda创建方式、线程状态、线程示例:12306买票和银行取钱
  8. 怎么调解计算机休眠不断网,win7怎么设置不待机?win7设置不待机的方法
  9. web前端自学之路分享
  10. 【Ubuntu用法】ubuntu下源码安装OpenSSH