更新时间:2022-08-21 08:38:59
曾经的我,也一度迷茫,虽然学的很多,但是技术积累的比较散,在面试的时候,一碰到面试官提一些自己没听说过的问题,瞬间就傻逼了,而且时常不够自信,但是自从认识了一些大牛之后,我才发现自己欠缺的是系统性的知识,以及对自己未来的定位。从那时候起,渐渐的开始思考 Java 为什么至今依然这么火,怎么学好 Java 这门技术,以及自己未来的方向。
从1995年 Sun 发布 Java 以来,一直到现在,Java 似乎从未离开过软件工程师的视线,并且每年涌入 Java 生态的开发者还在不停的增加。
据不完全统计,全球有25亿电子器件运行着 Java,450多万 Java 开发者活跃在 web 应用以及安卓市场上,有7.08亿部手机、10亿个智能卡和7亿部 PC 机上运行着 Java 应用程序,越来越多的企业因为使用了 Java 而提高了生产效率,我想这大概就是为什么 Java 是世界第一的开发语言的原因吧~~在此,我想以第一人称来聊聊自己学习 Java 的路线,谈不上牛人,不一定很全,只希望能帮到那些处于迷茫阶段的朋友,助一臂之力!
任何一门想推向市场的技术语言,除了要拥有一套自己的语言体系以外,还需要有第三方市场,不然单靠自己的核心工具库,很难适应实际开发中业务的多样性,Java 作为最热门的语言,同样也如此!
单靠 JDK 提供的工具库,很难完成 web 应用程序的开发,但是经过多年的发展,Java 通过其他技术栈的融合,已经完成了自己的生态!
在这里,我将 web 应用涉及到的技术栈知识学习分为以下几个部分:
这个部分,主要是熟悉语言的基本特性,各个核心组件,以及编码规范,可以说是整个 web 应用开发中最核心的一个技术栈,内容如下:
java.util
包下,编程时会经常用到。Java 核心知识图分类,如下:
其中,位于在java.util
包下的集合类,涵盖了很多的数据结构和算法实现,例如动态数组、双向链表、队列、栈、Set、Map等,不仅功能强大,而且还提供了很多算法实践案例,面试必问内容。
关于IO
方面的知识,在我们处理文件以及网络上收发数据时,会频繁的接触!
对于多线程,初学的时候可能很少用到,但是在高并发的场景,合理的多线程编程能极大的改善接口请求响应速度,提高系统资源的利用率!
至于JVM
方面的知识,可以说是 Java 最核心的部分,掌握好GC调优,是从熟悉 Java 走向精通 Java 的一个标志,如果你面试的是高级开发,GC调优一定逃不了!
可能有的朋友,会想到SWT
部分,SWT
是一套 GUI 编程框架,可以使用它来开发一套可视化界面,对于后端开发,基本很少用到,现在主流的可视化界面基本被 HTML 替代掉了!
相关学习书籍,推荐如下:
设计模式,是一套高效编程理论,在任何一门开发语言中都适用。
如果将 Java 核心技术比作为外功,那设计模式就是内功,要想深入的掌握这门技术,毫无疑问,必须内外兼修!
从模式上,可以将其分为三大类:创建型模式、结构型模式、行为型模式 ,合计各个类别总共有 23 种!
截图于菜鸟教程
其中,还有一种 J2EE 设计模式,也就是我们 web 开发中经常使用的一种模式,这种设计模式特别关注表示层,由 Sun Java Center 鉴定的。
相关学习书籍,推荐如下: