`
zcz123
  • 浏览: 159580 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类

参考学习java的30个目标

阅读更多

这个仅仅是个参考,看我们到底能掌握多少,应实际应用的需要适当的加强这方面的学习。

       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数据库技术,如JDBCAPI并且会使用至少一种persistence/ORM构架,例如Hibernate,JDO, CocoBase,TopLink,InsideLiberator(国产JDO红工厂软件)或者iBatis。

  6.你还应该了解对象关系的阻抗失配的含义,以及它是如何影响业务对象的与关系型数据库的交互,和它的运行结果,还需要掌握不同的数据库产品运用,比如:oracle,mysql,mssqlserver。

  7.你需要学习JAVA的沙盒安全模式(classloaders,bytecodeverification,managers,policyandpermissions,
codesigning, digitalsignatures,cryptography,certification,Kerberos,以及其他)还有不同的安全/认证 API,例如JAAS(JavaAuthenticationandAuthorizationService),JCE (JavaCryptographyExtension),JSSE(JavaSecureSocketExtension),以及JGSS (JavaGeneralSecurityService)。

  8.你需要学习Servlets,JSP,以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries。

  9.你需要熟悉主流的网页框架,例如JSF,Struts,Tapestry,Cocoon,WebWork,以及他们下面的涉及模式,如MVC/MODEL2。

  10.你需要学习如何使用及管理WEB服务器,例如tomcat,resin,Jrun,并且知道如何在其基础上扩展和维护WEB程序。

  11.你需要学习分布式对象以及远程API,例如RMI和RMI/IIOP。

  12.你需要掌握各种流行中间件技术标准和与java结合实现,比如Tuxedo、CROBA,当然也包括javaEE本身。

  13.你需要学习最少一种的XMLAPI,例如JAXP(JavaAPIforXMLProcessing),JDOM(JavaforXMLDocumentObjectModel),DOM4J,或JAXR(JavaAPIforXMLRegistries)。

   14.你应该学习如何利用JAVAAPI和工具来构建WebService。例如JAX-RPC(JavaAPIforXML/RPC),SAAJ (SOAPwithAttachmentsAPIforJava),JAXB(JavaArchitectureforXMLBinding),JAXM (JavaAPIforXMLMessaging), JAXR(JavaAPIforXMLRegistries),或者JWSDP(JavaWebServicesDeveloperPack)。

  15.你需要学习一门轻量级应用程序框架,例如Spring,PicoContainer,Avalon,以及它们的IoC/DI风格(setter,constructor,interfaceinjection)。

   16.你需要熟悉不同的J2EE技术,例如JNDI(JavaNamingandDirectoryInterface),JMS (JavaMessageService),JTA/JTS(JavaTransactionAPI/JavaTransactionService), JMX (JavaManagementeXtensions),以及JavaMail。

  17.你需要学习企业级JavaBeans (EJB)以及它们的不同组件模式:Stateless/StatefulSessionBeans,EntityBeans(包含Bean- ManagedPersistence[BMP]或者Container-ManagedPersistence[CMP]和它的EJB-QL),或者 Message-DrivenBeans(MDB)。

  18.你需要学习如何管理与配置一个J2EE应用程序服务器,如WebLogic,JBoss等,并且利用它的附加服务,例如簇类,连接池以及分布式处理支援。你还需要了解如何在它上面封装和配置应用程序并且能够监控、调整它的性能。

  19.你需要熟悉面向方面的程序设计以及面向属性的程序设计(这两个都被很容易混淆的缩写为AOP),以及他们的主流JAVA规格和执行。例如AspectJ和AspectWerkz。

   20.你需要熟悉对不同有用的API和framework等来为你服务。例如Log4J(logging/tracing),Quartz (scheduling),JGroups(networkgroupcommunication),JCache (distributedcaching), Lucene(full-textsearch),JakartaCommons等等。

  21.如果你将要对接或者正和旧的系统或者本地平台,你需要学习JNI (JavaNativeInterface) and JCA (JavaConnectorArchitecture)。

  22.你需要熟悉JINI技术以及与它相关的分布式系统,比如掌握CROBA。

  23.你需要JavaCommunityProcess(JCP)以及他的不同JavaSpecificationRequests(JSRs),例如Portlets(168),JOLAP(69),DataMiningAPI(73),等等。

  24.你应该熟练掌握一种JAVAIDE例如sunOne,netBeans,IntelliJIDEA或者Eclipse。(有些人更喜欢VI或EMACS来编写文件。随便你用什么了:)

  25.JAVA(精确的说是有些配置)是冗长的,它需要很多的人工代码(例如EJB),所以你需要熟悉代码生成工具,例如XDoclet。

  26.你需要熟悉一种单元测试体系(JNunit),并且学习不同的生成、部署工具(Ant,Maven)。

  27.你需要熟悉一些在JAVA开发中经常用到的软件工程过程。例如RUP(RationalUnifiedProcess)andAgilemethodologies。

  28.你需要能够深入了解加熟练操作和配置不同的操作系统,比如GNU/linux,sunsolaris,macOS等,做为跨平台软件的开发者。

  29.你还需要紧跟java发展的步伐,比如现在可以深入的学习javaME,以及各种java新规范,技术的运用,如新起的web富客户端技术。

  30.你必需要对opensource有所了解,因为至少java的很多技术直接是靠开源来驱动发展的,如java3D技术。

分享到:
评论

相关推荐

    java源码包---java 源码 大量 实例

     一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下。 JAVA+JSP的聊天室 8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 一...

    经典文章 如何学习Java

    学习Java时,可以参考的经典书籍包括《Head First Java》、《Effective Java》、《Java核心技术卷》等,这些书籍可以帮助初学者深入理解语言基础和最佳实践。此外,随着技术的发展,学习Java 8、Java 11等新版本的...

    java学习资料 java学习资料 java学习资料 java学习资料 java学习资料 java学习资料 java学习资料

    理解这些概念是学习Java的第一步。 2. **面向对象编程**:Java是一种完全面向对象的语言,包含类、对象、继承、封装、多态等核心概念。学习如何定义类,创建和使用对象,以及如何通过继承和多态来实现代码复用是...

    Java最新2024学习路线+Java自学全套免费网盘资料

    - 大处着眼,小处着手:意味着学习Java不仅要有一个宏观的目标和规划,更要从每天的小事做起,如理解并掌握一个简单的知识点。 - 3W学习法(What、Why、How):这是一种帮助初学者构建知识体系的方法,即先理解What...

    java源码包2

     一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下。 JAVA+JSP的聊天室 8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 ...

    JAVA开发文档(参考用-学习用)

    《JAVA开发文档》是针对Java编程语言的一份学习和参考材料,主要涵盖了软件开发过程中的多个关键环节。此文档可能是由一个团队,包括杨坤、马国耀、黄婷儿、周志远和刘长飞,为一个名为“基于提纯的分类系统”(WBIA...

    Java参考手册/Java

    这种文件是Windows操作系统下的帮助文档格式,包含了HTML页面、索引和搜索功能,方便用户查找和学习Java 8的特定信息。Java 8是Java的一个重要版本,引入了如lambda表达式、函数式编程、方法引用、默认方法、日期...

    java源码包3

     一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下。 JAVA+JSP的聊天室 8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 ...

    java / jdk 中文参考手册

    Java/jDK中文参考手册是Java开发者的必备工具之一,它详尽地解释了Java语言的语法、类库以及开发工具的使用方法。这份手册对于初学者和经验丰富的开发者都具有很高的价值,因为它提供了清晰易懂的解释和示例,帮助...

    java蓝桥杯真题及参考资料

    总的来说,"java蓝桥杯真题及参考资料"是一个全面的学习资料,可以帮助参赛者深入理解Java编程语言,熟练掌握各种算法,并通过实战训练提高编程水平。无论是初学者还是有一定基础的程序员,都应该充分利用这些资源,...

    java程序员参考求职简历

    Java程序员在求职过程中,一份优秀的简历是至关重要的。...总之,一个成功的Java程序员求职简历应该能够全面展示你的专业技能、项目经验和成长潜力。通过以上要点,你可以打造出一份吸引雇主注意的简历,增加面试机会。

    对于JAVA初学者必须要看的学习方法

    HotDraw是一个基于SmallTalk的图形编辑框架,可以作为学习JAVA框架和设计模式的参考案例。 #### 五、持续学习与进阶 JAVA是一个不断发展变化的技术领域,因此持续学习非常重要。可以通过阅读官方文档、参加技术...

    Java学习材料大全(499篇文章)

    这个压缩包作为Java学习的资源库,不仅适合自学,也可以作为教学材料或参考指南。通过系统地阅读和实践,开发者可以逐步提升自己的Java技术水平,从而在软件开发领域取得更大的成就。因此,无论是对初学者还是有经验...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录 一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下...

    Java学习PPT Java学习 PPT

    2. **Java环境配置**:学习Java的第一步通常是安装JDK(Java Development Kit),并配置好JAVA_HOME环境变量。这使得开发者能够在命令行中运行Java编译器(javac)和解释器(java)。 3. **Java基础语法**:PPT可能...

    Java学习笔记(必看经典).doc

    这份“Java学习笔记(必看经典).doc”文档将涵盖Java的核心概念和重要知识点,对于初学者和有经验的开发者来说都是宝贵的参考资料。 首先,Java的基础部分通常包括以下几个方面: 1. **Java语法基础**:这是所有...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录 一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下...

    chc.rar_机器学习_机器学习java

    标题中的"chc.rar_机器学习_机器学习java"表明我们关注的是一个关于机器学习的项目,特别是使用Java实现的CHC(Conflict-Driven Clause Learning)算法。CHC算法是解决约束满足问题(Constraint Handling Rules, CHC...

Global site tag (gtag.js) - Google Analytics