学习java需要具备哪些基础知识?
由于Java开发涉及到比较多的领域,每个领域需要具备的知识结构也是有所区别的,所以就需要根据领域进行分别阐述。由于目前Java主要的应用集中在Web开发、移动互联开发和大数据开发三个领域,所以下面就从这三个领域进行分别介绍。
Web开发领域
在Web开发领域,Java的主要知识结构包括三个部分,分别是Java基础、Java分布式开发和Java企业级开发。Java基础部分知识是所有方向都需要掌握的,也是学习Java的一个难点,包括Java的面向对象概念、面向对象编程过程以及异常处理、IO、集合和多线程等内容,基础部分需要重点掌握的概念是封装、继承和多态(这部分细节可以参考我之前在头条写的文章)。
Java分布式开发是学习Web开发的重要阶段,这个阶段要了解分布式开发的基础,并采用分布式的方式完成功能的部署。Java的分布式开发可以从了解RMI、Hessian(可以跨语言使用)、Burlap(XML格式)、HttpInvoker、Web service这些方式开始。
看一下Hessian的实现过程:
Java的Web开发还需要学习一些前端的内容,包括HTML、CSS以及JavaScript相关内容,建议系统学习一下JavaScript语言。
Java的企业级Web开发有两套方案,一套方案是JavaEE,另一套方案是轻量级框架,代表技术是Spring(SpringMVC、SpringBoot、SpringCloud等)方案。由于目前JavaEE已经交给Eclipse基金会管理了,并更名为Jakarta EE,未来的发展还有待观察,所以目前更多的程序员选择Spring方案。
移动互联领域
移动互联领域的开发除了要学习基础的Java知识以外,还需要学习Android开发相关知识和云计算相关知识。
Android开发包括几个大的内容,包括Activity、Intent、Service、Fragment、SQLite等内容,Android开发需要学习大量的图形组件开发知识,以及对应的事件处理方式,总的来说,Android部分的内容虽然比较多,但是难点并不高。看一个简单的例子:
移动互联开发还需要学习一些云计算方面的知识,因为移动互联开发往往需要进行云端部署。通常情况下,移动互联开发也涉及到后端的服务开发,但是往往后端服务开发都由Web开发人员来完成。Android的后端服务可以使用Java、Python、PHP等语言来开发,可以根据具体的应用场景进行开发语言的选择。
大数据领域
目前Java在大数据领域也有广泛的使用,大数据开发涉及到的内容比较多,也有一定的难度。由于大数据开发有诸多岗位,不同的岗位有不同的知识结构要求,总的来说集中在操作系统、大数据平台、算法设计与实现等几个部分。
大数据平台目前主要以Hadoop和Spark的应用比较多,Hadoop平台有健全的生态,以及大量成功的案例。但是,Hadoop平台配置比较麻烦,需要一个系统的学习过程。
我做Java开发多年,目前主要的研究方向是大数据和人工智能,也在带相关方向的研究生,我会陆续在头条写一些关于大数据方面的文章,感兴趣的朋友可以关注我的头条号,相信一定会有所收获。
如果有大数据方面的问题,也可以咨询我。
谢谢!
java只是一门编程语言,客观的说,零基础也可以学。不过有英语基础要好许多,毕竟绝大部分变量、关键字等都是用英文表示的;还有就是数学好,逻辑思维能力强学习编程更容易。
作为零基础的兴趣爱好者,学习java可能要比一般人付出的努力多一些。只要自己有学习的动力和自学的能力,一切都不是事,网络上关于java的学习资料非常多,很多编程论坛、学习网站,还有很多网站是免费在线视频教学的,自己制定计划跟着网上视频学习,或者自己下载电子版书籍以及相关教学视频学习。实在找不到资料的可以私信本人,本人具有全套学习资料,可以免费贡献给大家。
学习路线是:先学习java SE,也就是java基础部分,然后java web,SSM框架实战开发;若是打算学习安卓APP开发,可以学完java基础部分直接学习安卓方面的开发内容。
总之,学习编程一定要多敲代码,多练习,熟能生巧,实践多了慢慢就掌握了。
java这门语言已经出来好多年了,记得当初学这门编程语时,当是弄那个编程环境就让我头痛不已。在学它之前也学过了C语言和VB,感觉学会java并不难,但要学好和会很好的使用那就是另一会事了。
如果仅仅是要达到入门的水平,我认为可以先学PHP,当然如果有C语言的基础更好。个人认为PHP作为编程语言的基础是比较很的,尽管它并不算是一门真正的编程语言。PHP相对于java要简单很多,而且还能很快就做一个小项目,这会有利于提高你编程的兴趣。
如果完全没有编程功底,自学Java有难度,但并非不可。
培训班不能让你拿高工资,但是带你入个门是没有问覅的我喔非常建议有钱去参加培训班是最好的。
需要什么基础
不需要基础,当然啦,非要说基础,那至少学过一门其他语言总是有所帮助的。
我认为学习编程需要的几个条件,不过都不是必须的,只是说有更好。
第一至少要会打字,不能看着键盘敲。
第二需要明确目标,不要什么都死钻研,如果像读书那样学习就没有什么意思了,而且效果也极差。
Java有一大堆废弃的技术,你要明白,不要遇到什么就学什么。
第三最起码的计算机硬件知识,不过不懂也没有关系,把以后讲到的内容当真理,以后自己慢慢去探索。
第四解决问题的能力。编程最后就是变成找bug,初学者也是一样,解决问题能力越强,学习越快,不然一个知识点就耗半天,再多时间都不够。
指导
如果有一个人在旁边指导你,肯定是事半功倍,所以你去培训班最大的好处就是有人指导你,也许你要摸索一天的现在只要一会就好了。