25个学习要点帮助你从java菜鸟成为Java高手
想要精通Java,成为Java高手,需要不断的学习和积累。本文给出了Java学习过程中需要注意的25个学习目标,希望可以给您带来帮助。
1. 你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该了解UML,尤其是class、object、interaction以及statediagrams。
2. 你需要学习Java语言的基础知识以及它的核心类库(collections、serialization、streams、networking、multithreading、reflection、event、handling、NIO、localization以及其他)。
3. 你应该了解JVM、classloaders、classreflect以及垃圾回收的基本工作机制等。你应该有能力反编译一个类文件并且明白一些基本的汇编指令。
4. 如果你将要写客户端程序,你需要学习Web的小应用程序(applet),必需掌握GUI设计的思想和方法,以及桌面程序的SWING、AWT、SWT。你还应该对UI部件的JavaBEAN组件模式有所了解。JavaBEANS也被应用在JSP中以把业务逻辑从表现层中分离出来。
5. 你需要学习Java数据库技术,并且会使用至少一种persistence/ORM构架,例如Hibernate、JDO、CocoBase、TopLink、InsideLiberator(国产JDO红工厂软件)或者iBatis。
6. 你还应该了解对象关系的阻抗失配的含义以及它是如何影响业务对象与关系型数据库的交互,和它的运行结果。还需要掌握不同的数据库产品运用,比如Oracle、MySQL、SQL server。
7. 你需要学习Servlets、JSP,以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries。
8. 你需要熟悉主流的网页框架,例如JSF、Struts、Tapestry、Cocoon、WebWork,以及他们下面的涉及模式,如MVC/MODEL2。
9. 你需要学习如何使用及管理Web服务器,例如tomcat、resin、Jrun,并且知道如何在其基础上扩展和维护Web程序。
10. 你需要学习分布式对象以及远程API,例如RMI和RMI/IIOP。
11. 你需要掌握各种流行中间件技术标准和与Java结合实现,比如Tuxedo、CROBA,当然也包括JavaEE本身。
12. 你需要学习最少一种的XMLAPI,例如JAXP(JavaAPIforXMLProcessing)、JDOM(JavaforXMLDocumentObjectModel)、DOM4J或JAXR(JavaAPIforXMLRegistries)。
13. 你应该学习如何利用Java的API和工具来构建WebService。例如JAX-RPC(JavaAPIforXML/RPC)、SAAJ(SOAPwithAttachmentsAPIforJava)、JAXB(JavaArchitectureforXMLBinding)、JAXM(JavaAPIforXMLMessaging)、JAXR(JavaAPIforXMLRegistries)或者JWSDP(JavaWebServicesDeveloperPack)。
14. 你需要学习一门轻量级应用程序框架,例如Spring、PicoContainer、Avalon,以及它们的IoC/DI风格(setter,constructor,interfaceinjection)。
15. 你需要熟悉不同的J2EE技术,例如JNDI(JavaNamingandDirectoryInterface)、JMS(JavaMessageService)、JTA/JTS(JavaTransactionAPI/JavaTransactionService)、JMX(JavaManagementeXtensions),以及JavaMail。
16. 你需要学习企业级JavaBeans(EJB)以及它们的不同组件模式:Stateless/StatefulSessionBeans、EntityBeans(包含Bean-ManagedPersistence[BMP]或者Container-ManagedPersistence[CMP]和它的EJB-QL),或者Message-DrivenBeans(MDB)。
17. 你需要学习如何管理与配置一个J2EE应用程序服务器,如WebLogic、JBoss等,并且利用它的附加服务,例如簇类,连接池以及分布式处理支援。你还需要了解如何在它上面封装和配置应用程序并且能够监控、调整它的性能。
18. 你需要熟悉面向方面的程序设计以及面向属性的程序设计(这两个都被很容易混淆的缩写为AOP),以及他们的主流Java规格和执行。例如AspectJ和AspectWerkz。
19. 你需要熟悉对不同有用的API和frame work等来为你服务。例如Log4J(logging/tracing)、Quartz(scheduling)、JGroups(networkgroupcommunication)、JCache(distributedcaching)、Lucene(full-textsearch)、JakartaCommons等等。
20. 你应该熟练掌握一种JavaIDE例如sunOne、netBeans、IntelliJIDEA或者Eclipse。(有些人更喜欢VI或EMACS来编写文件。随便你用什么了)
21. Java(精确的说是有些配置)是冗长的,它需要很多的人工代码(例如EJB),所以你需要熟悉代码生成工具,例如XDoclet。
22. 你需要熟悉一种单元测试体系(JNunit),并且学习不同的生成、部署工具(Ant,Maven)。
23. 你需要熟悉一些在Java开发中经常用到的软件工程过程。例如RUP(RationalUnifiedProcess)andAgilemethodologies。
24. 你还需要紧跟Java发展的步伐,比如现在可以深入的学习Webwork2.0。
25. 你必需要对实际项目的开发流程有所了解,至少要有两个有实际应用价值的项目,而不是练习项目!因为现在企业看重的是你有没有实际的开发经验,真正开发经验的体现就是你做的项目,也就是有实际应用的项目!
很多很乱很复杂?先入行再说。学java到知海匠库互联网学院。
转载于:https://www.cnblogs.com/zhilelele/p/7365837.html
25个学习要点帮助你从java菜鸟成为Java高手相关推荐
- 成为Java高手的25个学习要点
成为Java高手的25个学习要点 想要精通Java,成为Java高手,需要不断的学习和积累.本文给出了Java学习过程中需要注意的25个学习目标,希望可以给您带来帮助. AD: 2013大数据全球技术 ...
- 零基础学Java,这些学习要点一定得注意!
许多年的编码经历,在Java编程的路上磕磕绊绊也算是经历啦许多,今天我向大家分享一些我个人的自学方法.现在在网上报个正经点的班得花几千块钱,线下就更夸张,都是万元起步, 我的这些学习方法如果你能用好, ...
- Java、大数据开发学习要点(持续更新中...)
Java.大数据开发学习要点 这里有作者本人学习Java.大数据开发时的详细知识记录,随时根据学习状态更新. 以下是关于
- 倚天剑与屠龙刀java_菜鸟入门 java语言学习六大要点
Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface.简称API)构成.Java 应用编 ...
- JAVA源码学习要点汇总
一.基础知识 1.宏观上理解java的本质 2. JVM的原理 3.java变量 4.java数据类型 5.java运算符 6.java判断语句if-else 7.java循环语句switch-cas ...
- 学java 的要点_零基础学Java,掌握Java的基础要点
对于程序员群体来说,了解一定的技巧会对学习专业技能更有帮助,也更有助于在自己的职业发展中处于有利地位,无限互联Java培训专家今天就为大家总结Java程序员入门时需要掌握的基础要点: 掌握静态方法和属 ...
- java学习中,DVD管理系统纯代码(java 学习中的小记录)
java学习中,DVD管理系统纯代码(java 学习中的小记录)作者:王可利(Star·星星) class DvdMain{public static void main (String[] args ...
- 办公自动化系统OA学习要点
办公自动化系统OA学习要点 1.OA的发展历史: 办 公自动化系统(office Autumtion System,OA)是指:基于先进的网络互连的分布式软件系统,通过有效的资源共享和信息交流.发布, ...
- Java基础_00 | Java语言概述 + 学习路线
1.Java语言的诞生 1991年,Sun公司有一群异想天开的上层领导觉得观众点播电视节目是个发展趋势,于是派Jame Gosling建立一个团队去开发电视机顶盒,当时准备采用C++,但是C++太复杂 ...
最新文章
- 孟子曰:道之所在,虽千万人吾往矣!
- 【XAudio2】1.XAudio2 介绍
- java语言语法--- Java标识符(标识符命名规则)、Java关键字、Java变量(变量的声明、赋值、使用)和常量(字符常量、字面常量)(包括Java字节码文件反汇编命令javap)
- 初学者选黑卡还是微单_明日之镜 十年索尼微单和他的镜头王国
- What is AJAX?(转)(二)
- idea 多模块build_[史上最详细]springboot创建基于maven的多模块项目
- linux 服务器鼠标右键失灵_【华鹏客服维修部】系统重置后,键盘失灵怎么办?...
- 二层交换机 不在同一子网_IP地址、子网掩码、网关之间有什么联系呢?各自用途有什么?...
- 一个有趣的例子,JS+CSS实现【兴趣是最好的老师】
- python下载后在哪打开_centos6/7系统的自带的python安装在哪里?
- UG10.0如何导出CAD图
- 单片机实验计数显示器C语言代码,单片机实验1-计数显示器.doc
- 2022年程序员开工第一周,应该收藏这样一份书单
- create-react-app创建的项目配置多入口MPA模式。报Cannot read property ‘filter’ of undefined
- jQuery学习笔记总结
- 腾讯云一键搭建WordPress博客网站
- 全球及中国高岭土市场运行规模与投资发展建议报告2022版
- pytorch | 常用归一化方法
- DVWA 之 XSS(Reflected)反射型XSS
- 可重入锁的理解及公平锁和非公平锁的具体实现
热门文章
- 页面中flash文件的加载
- 想悄悄的做渗透测试?这里的工具足够你用了
- 海龟交易法则02_揭秘海龟思维
- go解析多个html,解析html-Go语言中文社区
- Facebook史上最严重宕机,全网宕机近七小时,到底是怎么回事?
- 案例学习BlazeDS+Spring之十二:Traderdesktop
- 方舟服务器端口协议,《方舟:生存进化》正版开服端口映射教程及后台命令一览...
- lua按钮unity_在Unity中使用Lua脚本
- elisa标准曲线怎么做_ELISA标准曲线制作方法.pdf
- 工厂模式 java_JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式)