Java语言在国内IT行业,就业率长年稳居榜首,薪资也非常可观,对于IT应届生和有转行IT行业意向的朋友来说,是个上佳选择;另外,对于要冲击高阶技术岗,例如大数据开发的朋友,也需要Java作为支撑。可以说掌握了Java,就等于拿到了IT行业的高薪入场券。
想要入门Java,以下几大阶段的内容是必须要掌握的。
新手村:掌握计算机基础
想成为一名Java开发工程师,首先要做的就是掌握计算机基础。把地基打牢固了,才能扎实地走好后续的每一步,也会让后续的学习更加得心应手。
有的人或许觉得计算机基础知识不重要。但智者见智,如果你只想当个普通程序员的话,或许不太重要。但如果你想提升、进阶,那么你必须离不开计算机领域的基础知识。
计算机基础包括数据结构、算法、计算机组成原理、操作系统、网络等等。
数据结构
数据结构指的是数据的组织形式,学习数据结构对我们的工作和学习有着很大的帮助,不论是在校还是工作,都是平常面试、考试的重点,有几个感受比较深的点跟大家分享:
-
它可以帮助我们有更多更好的手段来使用数据,特别是了解各种数据结构的原理能够帮助我们在实际开发工作中遇到大数据、高性能、大并发等业务场景时选择正确的处理方式;
-
充分发挥计算机的性能,使我们的代码更加高效,在代码优化的过程中可以更明确的在时间维度和空间维度之间做出平衡或选择;
-
学习的过程本身又是提升我们思考问题能力的过程,可以提升我们对算法的了解和认识,拓宽设计思路,同时提升对全局问题思考的格局和高度。
数据结构入门教程:http://www.imooc.com/wiki/datalesson
在这本教程中,我们将学习数组、栈和队列、链表、树形结构(红黑树与二叉树)等重点内容。
算法
通俗一点来说,算法就是用来解决一类问题或者进行计算的,更多地是一种思想、思考方式。算法作为基础知识,学习算法就等于是学习数学、操作系统、数据库等大学基础课程一样,有助于我们培养良好的计算机基础理论知识,有助于自己更好的职业生涯发展。
算法知识还可以用来解决现实生活和开发场景中的各种问题,并且,算法是各大公司面试一定会考到的内容。
算法入门教程:http://www.imooc.com/wiki/algorithmlesson
我们将学习排序、递归、分治算法、贪心算法、动态规划等重点内容。
计算机组成及原理
在这一块的学习中,我们需要了解计算机的组成全貌及其运行原理,包括计算机程序和硬件之间的作用、关系,程序是如何在计算机系统上执行的。
这一部分的学习资料可以通过购买书籍和观看免费视频内容掌握,作为入门及了解的材料即可。
操作系统
操作系统是程序员必备的知识,所有程序的运行都是在操作系统上跑起来的。
这一部分主要需要掌握计算机操作系统的基本功能,包括进程管理、作业管理/文件管理、存储管理/设备管理。同时,可以进一步了解Linux系统的相关知识。
这一部分的学习也可以通过书籍、免费视频等来掌握。
计算机网络
计算机网络是比较重要的一块知识,在面试中经常会被问到。
作为入门知识,可以首先选择了解下计算机网络的发展历史,必须要掌握的内容包括网络七层协议、TCP/IP四层模型、底层协议和底层设备等,以及网络层、传输层、应用层的各项协议等。
阶段一:Java零基础入门
该阶段目标:掌握Java语言的核心基础,包括常量与变量、数据类型及转换、数组、类和对象、集合、泛型、多线程、I/O流等。
Java语言基础
Java语言诞生于1995年,发展至今20多年,对互联网乃至我们的生活产生了重要影响。Java语言是成为Java工程师必备的编程语言。要学习Java语言,必须掌握其基本语法、语言特性等等。
Java入门教程:http://www.imooc.com/wiki/javalesson
包括Java简介、环境安装配置、Java基础、Java面向对象、Java进阶等内容。
视频教程:
除了1和2适合零基础入门的语言学习视频,还有一些介绍Java中比较重要概念、工具的视频。
1. Java零基础入门视频教程 第一季:http://www.imooc.com/learn/85
本课程充分考虑到零基础学员,采用图文+视频的多元学习形式,从第一个Java程序讲起,由浅入深,一步一步动手实践,最终完成一个简单的实用案例。学练结合,既将所学知识串联,顺利入门Java。
在课程中你可以学到:什么是Java、Java开发环境的安装、Java的常量和变量、Java的常用运算符、流程控制语句、Java程序的Debug调试、数组。
2.Java面向对象编程基础视频教程 第二季:http://www.imooc.com/learn/124
理解面向对象的思想,是理解高级编程语言的核心!该课程不仅带你掌握 Java 面向对象编程基本实现原理,熟练使用封装、继承、多态面向对象三大特性,而且还有ArrayList、Jar包的使用。
通过该课程的学习,你可以掌握Java 编程思路,并熟练运用面向对象程序设计思想。
3. 反射-Java高级开发必须懂的-慕课网:http://www.imooc.com/learn/199
反射是Java开发中一个非常重要的概念,掌握了反射的知识,才能更好的学习Java高级课程,因此必须要学习。本门课程主要介绍Class类的使用,方法和成员变量的反射,以及通过反射了解集合泛型的本质等知识。
学习本课程前需要熟悉Java面向对象的思想,并能掌握Java IO输入输出流、集合和泛型等知识。通过该课程可以理解并应用反射机制,了解反射机制在集合泛型中的应用,这有利于更好的学习框架等Java高级技术。
4. Java继承和多态-慕课网:http://www.imooc.com/learn/1259
本课程主要学习Java中的重要概念继承和多态,通过案例的方式进行讲解,让你对继承和多态在企业中的应用更加了解。通过该课程,可以更好地掌握继承的基础语法,开发符合继承要求的程序;掌握final和super关键字的使用;掌握抽象类的定义和使用;掌握接口的创建和应用;理解多态的概念,能够在开发中应用多态。
5. Java IO流文件读取操作视频教程-慕课