初衷

最近由于

算是装x了一把,导致最近挺多在校生或者编程初学者关注了我的微信公众号【饭谈编程】

然后紧急着而来的便是

类似的问题。

其实关于如何学习Java这个已经是个老生常谈的问题,也明白其实我没什么资格做你们的指导人,只是竟然这么多人问了,作为你们的老学长【其实我才毕业还不到一年(✿◡‿◡) 】,就想将我自己的经历以及经历后认为更好的方式和你们探讨下,毕竟看见别人怎么过来的,你们心底也会多一份自信,事实上我一直想对我母校的师弟师妹们聊聊这个话题,可惜一直很忙没时间回学校看望他们。

那么新手该如何学习Java呢

大一的时候我们专业的课程是C++【分为上下部分,一学年教完】,我大概是在大一第一学期便自学完C++的上下部分,之后由于个人有着想做网站和app的冲动,所以便在大一第二学期开始自学Java。

温馨提示一下

个人经历告诉我,如果有其他编程语言的基础,那么入手另一门语言是及其简单的事情,只要多敲几个实例,然后找本书看就可以了,当然了,我这里说的是入手,如果要做到应用并且熟悉那是远远不够的,因为每一门语言都有自己的特性和精妙的地方,比如学过C语言的对于对象其实没什么概念,而学习Java经常会看到的一句话便是万物皆对象

那么我自学Java看的是哪本书呢? 我一开始入门学习的书籍是

没错,就是这本疯狂Java讲义,这本书籍虽然很厚,但是确实是很不错的,李刚老师的书籍写的很详细,而且实操例子也很多,【经常问我找Java学习例子的师弟师妹们,重点来啦哈,可以看这本,里边很多经典例子,如五子棋、聊天室都有】 基本看了三分之二后,对Java算是能够应用了。 当然了,疯狂Java讲义是我个人学习的入门书籍,目前网络上众多大神推荐的书籍是以及

不可否认,这两本书确实很经典,我第一年入职被要求一个月看完的书籍便是《Effective Java》,目前也在断断续续的看《Java编程思想》,做为入门书籍,这三本书籍都是不错的,可以混合着来,谁说入门只能看一本是吧ヾ(≧O≦)〃嗷~

大致看完以上的书籍并且有跟着书籍的demo写几行代码的,都会或多或少了解到并且迫切想学习数据库mysql以及三大框架了,也就相当于接触到了企业中常用的技术。

如何学习数据库

关于数据库,这里只讨论下mysql,因为从我个人经历上来说貌似只有mysql可以说了(@_@;),毕竟比较cxk。同样我是在大一下学期的时候接触到mysql的,因为做应用需要,记得那个时候是为了参加学校的一个系的软件设计大赛。

同样先提下我学习数据库的入门书籍是什么呢?

抱歉,不装逼的说我是通过菜鸟教程自学的

因为数据库是比较基础的东西,和Java语言不同,如果研究的很基础,比如数据库引擎,在那个时候的我看来是很有难度的,也学不会,因此我选择先从使用入手,事实证明我这条路的选择是正确的,在大一下学期的系级软件设计大赛中我【包括两个队友】成功拿到了系级一等奖。

其实,对于初学者来说,很容易陷入一种深入学习的思维,然后越深入越发现搞不懂,最后陷入自我怀疑,然后放弃,这也就是为什么会出现从学习xxx到弃疗的原因了。原因很简单,因为你连使用都不熟悉,那么谈何深入的去了解呢?所以到目前为止我都是比较推荐先使用再深入了解的学习模式。

对于已经对数据库的使用有了一定的感觉后,那么深入学习数据库便很有必要了,这里我推荐的书籍是

个人觉得这是一本很不错的书籍,在我们几个朋友里边【都是比较厉害的后端大神】都是看这本书成长过来的。 以及 从这本存储引擎书籍里边学到的数据库底层模型成功让我忽悠过几个面试官,不得不说我成功拿到校招12*13的offer这本书有一定的功劳。

当然了,这两本书都是比较深入的,建议慢慢看。

关于三大框架

基本上学习Java的都会迫不及待的想做网站,那么就绕不过三大框架了。这里说的三大框架着重指的是ssm,也就是spring、springmvc、mybatis,很多学校也会从structs、hibernate先入手教学。

这里我要说一句了,教structs、hibernate不是说不可以,虽然编程思想最后都是一样的,但事实上structs、hibernate已经是很落后的技术了,外面大部分的互联网公司都是用ssm甚至是springboot,当然了,如果你工作的时候运气不好碰到的公司刚好技术旧,其实也是有可能的哈哈哈。不过嘛,个人建议还是要跟着时代在发展的,因此我是从ssm开始入手学习的,这里暂时不说springboot哈。

我是如何学习ssm三大框架的

这里依旧推荐先使用再深入了解的学习模式,关于三大框架的学习,在当时问过很多师兄和老师,推荐的书籍是

不可否认的是这是一本极其经典的书籍,经典到目前为止我都要经常重新回去复习的程度。

我在学习三大框架的时候是跳着读完这本书的,是先了解了大概,没有深入,也无法深入,先知道了spring和springmvc是什么以及怎么使用,之后便开始尝试搭建一个基于ssm的网站。

当初我搭建的项目是gitee.com/xi_fan/Comp…

算是很多年前老项目了,已经年久失修了。

通过搭建这个项目,我了解到了mybaties以及maven是什么,对于初学者来说一次遇见两个技术确实会感觉有点头疼,这点我深有体。

不过我想说的是,无论学习什么技术,都是一个过程,先学会使用再深入了解。 所以在当初,我一开始是是先无视掉这两个东西,先让项目搭建成功并且跑起来,当然了,肯定踩了很多坑,所以就通过翻查资料或者百度谷歌方式去解决问题,而恰巧通过这个解决的过程,我对三大框架以及maven的使用更加的熟悉,和有感觉,之后我便是等成功跑起来后再从项目的源码中往回看三大框架和maven的使用,做笔记。

深入了解框架是什么 等对框架的搭配使用已经很熟悉的时候就会开始想了解框架是什么了,这个时候再回头深入的去品读【spring实战】,才有事半功倍的效果。

自增长

基本上对于0基础学Java的初学者来说,认认真真的学完Java基础知识、数据库、三大框架会搭建个网站,后面其实就会产生一个自增长的意识了,到了这里你会自然而然的发现会使用这些东西知识刚刚入门,你会发现到自己的不足,接下来你还要更全面、更深入的学习它们,并且你也会发现除了这些应用层面的东西,你会发现数据结构、算法、计算机网络、操作系统等很多知识都是很重要的。

而走到这一步了,之后的东西我都无法再给你建议了,因为目前我也只是走到自增长的这一步,如果你有兴趣可以和我私聊,我可以和你说说我自己接下来的行程是什么样的,一起探讨一起进步。

写在最后

以上便是对我大学过程中学习Java过程的一个总结,希望可以对刚入门的大家有一定的指引作用。 以上提到的书籍,如果经济上允许的话建议还是人手买一本,支持正版。

疯狂Java讲义 : u.jd.com/rPI3vl Effective Java 中文版 :u.jd.com/KVTSxZ Java编程思想 : u.jd.com/GUOhBA Mysql核心技术与实践 :u.jd.com/G6dfQV MySQL内核:InnoDB存储引擎 :u.jd.com/XFxWhr Spring实战 :u.jd.com/EoiH9g

看了下,上面有些书确实贵。如果经济上不允许,或者想先看看电子版的【对于贫穷人出生的我,就是看电子书过来的】,我已经把相关书籍放到百度云,大家可以自行下载。

由于微信限制,导致无法直接分享云链接,因此有需要的只能关注微信号发送666获取分享链接。

最后的最后

这篇文章确实都是有感而发,并且是根据自身的经历写的,对于已经进入自增长期的老哥笑看即可,如果某些文不着调或者让你感觉反感了,请见谅!最后再次强调,我的初衷更多的是将自己的经历以及经历后认为更好的方式和你们探讨下。


欢迎关注公众号

公众号主营:服务端编程相关技术解说┗|`O′|┛ 嗷~~

公众号副业:各种陪聊吹水(o≖◡≖),包括技术、就业、人生经历、大学生活、内推等等,欢迎一起侃大山

转载于:https://juejin.im/post/5cf7da5d6fb9a07ef63fcc75

从个人经历出发,说说如何0基础学Java相关推荐

  1. 0基础学Java需要多久?

    0基础学Java需要多久?黑马程序员零基础系统学习的Java课程课时348小时,至少要学习5-6个月的时间,不同的课程大纲课时也不一样,具体课看课程的详情:Java基础课程课时在5-20小时不等,根据 ...

  2. 【0基础学java】教学日志:javaSE-面向对象6-面向对象前4章上机作业点评,主要涉及继承、封装、多态三个章节的内容

    目录 一.面向对象第一章上机作业参考答案(略) 二.面向对象第二章上机作业参考答案: 三.面向对象第三章上机作业参考答案: 1.上机练习1已在第三章博客中编写,请参考: 2.上机练习2 四.面向对象第 ...

  3. 0基础学java有多难?自学Java和参加培训学Java的难易度对比分析!

    在一些知识问答平台上,我看到有很多在问"0基础学java有多难",如果你想0基础自学Java那可能会比较困难,但是如果选择报培训班进行学习,即便是0基础,学Java其实也并不难.所 ...

  4. 0基础学java可行吗_零基础可以学习JAVA吗?

    肯定是可以学的,每一个人做每一件事都是从0基础开始的,他们并不是生下来就会Java,会编程,都是通过后天的努力说得到的技能 你只需要找对方法,找对带你的人,你就可以学好 学习Java的方式有这几种: ...

  5. 【0基础学java】教学日志:javaSE-面向对象6-接口、面向接口编程、内部类

    目录 本章概述: 一.为什么使用接口 1.Door.java 2.DoorBell.java 3.Lock.ja 二.接口的基本使用 1.Lock.java 2.LockDoor.java 3.Tes ...

  6. 【0基础学java】教学日志:项目实战-坦克大战-3

    本章概述:本章主要讲了 1.定义坦克方向的enum,根据按键状态确定坦克方向,根据坦克方向确定坦克位移. 2.抽象出坦克类,封装相应的属性和方法,在tankFrame中直接调用. 3.添加坦克静止的处 ...

  7. 0基础学java培训_零基础可以学习java课程么?零基础java培训需要多久?

    零基础可以学习java课程么? 第一.兴趣爱好是重要,总体目标很重要 在你学习培训java以前,一定要清晰自身对java是不是确实很感兴趣,還是一时头昏脑涨.终究学习培训java不仅要把握技术性,也要 ...

  8. 【0基础学java】教学日志:javaSE--Stream API

    本章概述:本章主要讲了Stream特性,Stream运行机制,Stream的创建,Stream常用API,以及Stream API在实际应用开发中的作用 目录 本章概述: 一.annotation 1 ...

  9. 成都天瑞地安:零基础学Java最快捷的7个计划

    0基础学Java,只要方法得当,就有机会学好Java开发.学Java就像交朋友一样,从陌生到熟悉再到死党,随着学习的深入,你会发现Java并不是想象的那么枯燥和困难,甚至有种妙不可言的乐趣. 1.透彻 ...

  10. 0基础学python-0基础学python 全套教程送你参考

    我0基础学Python可以吗? 我赞成把Python作为入门语言: 为什么选择python Python可以说是编程语言中罕见的既简单又强大的一门语言,python语言简洁,语言优雅,功能强大,使用p ...

最新文章

  1. [BZOJ2017][Usaco2009 Nov]硬币游戏
  2. C#不要再使用Npoi啦,使用MiniExcel操作Excel文件更快更高效!
  3. 【草稿】windows + vscode 远程开发
  4. 前端学习(2828):数组和对象循环
  5. 江苏省高邮2021年高考成绩查询,2021年江苏高考成绩排名及一分一段表
  6. Python 爬虫实战2 百度贴吧帖子
  7. 手机工商银行怎么转账_手机银行如何转账?工行手机银行转账流程
  8. unity粒子特效附上贴图后播放动画
  9. 业内最小体积SOP8封装,带UART输出,高精度免校准计量芯片HLW8110
  10. 剑网三手游哪个服务器人多稳定,“剑网三”手游开服后,我听了半个小时的骂街...
  11. SpringBoot+Mybatis实现三级分类联动
  12. dojo--inherited
  13. 升级macOS Catalina 后辅助功能空白无法添加的问题
  14. C#对.CSV格式的文件--逗号分隔值文件 的读写操作及上传ftp服务器操作方法总结
  15. java在线观看(jav在线网站)
  16. eplan连接定义点不显示_EPLAN操作命令之线色设置
  17. 工会优秀工作者先进事迹材料【加精推荐】 - 蒋炳楠的博客
  18. 怎么用java调用快递接口查询和寄件等功能java-demo
  19. 10大经典数据分析模型,你知道几个?
  20. 解决Edge默认打开PDF内存不足

热门文章

  1. 《统计学习方法》——感知机
  2. Android中的界面组成
  3. P2P(Peer to Peer)网络的原理
  4. appscan无法连接到服务器_和平精英无法连接到服务器是怎么回事 最新解决方案...
  5. 鸿蒙冰心有其他途径得到吗,关索除了人遁礼包,还有其他途径能获得吗?
  6. Linux字体最好看的发行版,如何给任意一款 Linux 发行版添加漂亮的字体
  7. java分布式集群框架_Cacheonix——Java的分布式集群缓存框架
  8. 《Android 第1行代码》读后感—第15章【最后一步——将应用发布到360应用商店】
  9. 写一个控制gpio的驱动
  10. IDEA复制某个类的包名路径