`
maxiaoxia
  • 浏览: 45840 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论
阅读更多

要分阶段来才对嘛,比如:
第一阶段
  2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams,networking, multithreading,reflection,event,handling,NIO,localization,以及其他)。
  5.你需要学习java数据库技术,如JDBCAPI并且会使用至少一种persistence/ORM构架,例如Hibernate,JDO, CocoBase,TopLink,InsideLiberator(国产JDO红工厂软件)或者iBatis。
  24.你应该熟练掌握一种JAVAIDE例如sunOne,netBeans,IntelliJIDEA或者Eclipse。(有些人更喜欢VI或EMACS来编写文件。随便你用什么了:)
  26.你需要熟悉一种单元测试体系(JNunit),并且学习不同的生成、部署工具(Ant,Maven)。
  27.你需要熟悉一些在JAVA开发中经常用到的软件工程过程。例如RUP(RationalUnifiedProcess)andAgilemethodologies。
第二阶段
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。
  3.你应该了解JVM,classloaders,classreflect,以及垃圾回收的基本工作机制等。你应该有能力反编译一个类文件并且明白一些基本的汇编指令。
  6.你还应该了解对象关系的阻抗失配的含义,以及它是如何影响业务对象的与关系型数据库的交互,和它的运行结果,还需要掌握不同的数据库产品运用,比如:oracle,mysql,mssqlserver。
  7.你需要学习JAVA的沙盒安全模式(classloaders,bytecodeverification,managers,policyandpermissions,
codesigning, digitalsignatures,cryptography,certification,Kerberos,以及其他)还有不同的安全/认证 API,例如JAAS(JavaAuthenticationandAuthorizationService),JCE (JavaCryptographyExtension),JSSE(JavaSecureSocketExtension),以及JGSS (JavaGeneralSecurityService)。
第三阶段
  10.你需要学习如何使用及管理WEB服务器,例如tomcat,resin,Jrun,并且知道如何在其基础上扩展和维护WEB程序。
  8.你需要学习Servlets,JSP,以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries。
  4.如果你将要写客户端程序,你需要学习WEB的小应用程序(applet),必需掌握GUI设计的思想和方法,以及桌面程序的SWING,AWT, SWT。你还应该对UI部件的JAVABEAN组件模式有所了解。JAVABEANS也被应用在JSP中以把业务逻辑从表现层中分离出来。(这条可有可无)

  9.你需要熟悉主流的网页框架,例如JSF,Struts,Tapestry,Cocoon,WebWork,以及他们下面的涉及模式,如MVC/MODEL2。
  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)。
  20.你需要熟悉对不同有用的API和frame work等来为你服务。例如Log4J(logging/tracing),Quartz (scheduling),JGroups(networkgroupcommunication),JCache(distributedcaching), Lucene(full-textsearch),JakartaCommons等等。
  25.JAVA(精确的说是有些配置)是冗长的,它需要很多的人工代码(例如EJB),所以你需要熟悉代码生成工具,例如XDoclet
第四阶段
  16.你需要熟悉不同的J2EE技术,例如JNDI(JavaNamingandDirectoryInterface),JMS (JavaMessageService),JTA/JTS(JavaTransactionAPI/JavaTransactionService),JMX (JavaManagementeXtensions),以及JavaMail。
11.你需要学习分布式对象以及远程API,例如RMI和RMI/IIOP。
  12.你需要掌握各种流行中间件技术标准和与java结合实现,比如Tuxedo、CROBA,当然也包括javaEE本身。
  17.你需要学习企业级JavaBeans(EJB)以及它们的不同组件模式:Stateless/StatefulSessionBeans,EntityBeans(包含Bean- ManagedPersistence[BMP]或者Container-ManagedPersistence[CMP]和它的EJB-QL),或者 Message-DrivenBeans(MDB)。
  13.你需要学习最少一种的XMLAPI,例如JAXP(JavaAPIforXMLProcessing),JDOM(JavaforXMLDocumentObjectModel),DOM4J,或JAXR(JavaAPIforXMLRegistries)。
  18.你需要学习如何管理与配置一个J2EE应用程序服务器,如WebLogic,JBoss等,并且利用它的附加服务,例如簇类,连接池以及分布式处理支援。你还需要了解如何在它上面封装和配置应用程序并且能够监控、调整它的性能。
第五阶段(优先级低
  19.你需要熟悉面向方面的程序设计以及面向属性的程序设计(这两个都被很容易混淆的缩写为AOP),以及他们的主流JAVA规格和执行。例如AspectJ和AspectWerkz。
21.如果你将要对接或者正和旧的系统或者本地平台,你需要学习JNI (JavaNativeInterface) and JCA (JavaConnectorArchitecture)。
  22.你需要熟悉JINI技术以及与它相关的分布式系统,比如掌握CROBA。
  23.你需要JavaCommunityProcess(JCP)以及他的不同JavaSpecificationRequests(JSRs),例如Portlets(168),JOLAP(69),DataMiningAPI(73),等等。
  28.你需要能够深入了解加熟练操作和配置不同的操作系统,比如GNU/linux,sunsolaris,macOS等,做为跨平台软件的开发者。
  29.你还需要紧跟java发展的步伐,比如现在可以深入的学习javaME,以及各种java新规范,技术的运用,如新起的web富客户端技术。
  30.你必需要对opensource有所了解,因为至少java的很多技术直接是靠开源来驱动发展的,如java3D技术。

分享到:
评论

相关推荐

    re2j-master.zip_com.google.re2j_google.re2j `(?<`_java 正则 master

    RE2 是一个高效、安全、确定性的正则表达式库,设计目标是避免 Perl 风格正则表达式可能导致的回溯问题,从而防止长时间运行的正则表达式(也称为“ regex denial of service”或ReDoS)攻击。在 Java 中,通常我们...

    java新手入门必看的30个问题.doc

    ### Java新手入门必看的30个问题详解 #### 一、基础知识篇 **1. 什么是Java、Java2、JDK?** - **Java**:是一种通用的、并发的、强类型的、面向对象的编程语言。它由Sun Microsystems公司于1995年推出,设计目标...

    基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单功能强大、轻量级、易扩展、Re

    JFinal JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。 在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的...

    java2d(英文)

    #### 三、目标读者 本教程适用于已经熟悉Java编程语言,尤其是具有图形用户界面应用开发经验的学习者。Java2D作为一项高级主题,需要读者具备一定的Java语言基础。如果你是Java新手,建议先学习Java基础知识;如果...

    java入门与加深FAQ.doc

    Java2分为三个不同的版本:J2SE(标准版)、J2EE(企业版)和J2ME(微型版)。 - **JDK**:全称为Java Development Kit,是Sun公司分发的免费Java开发工具包,其正式名称为J2SDK(Java2 Software Development Kit)...

    learning-java-introduction-real-world-programming-5th.rar

    它的设计目标是具有高效性、平台无关性和安全性,这使得Java在互联网、移动应用、企业级系统等领域广泛应用。 本书首先会引导读者了解Java开发环境的搭建,包括安装JDK(Java Development Kit)和配置环境变量。...

    3个简单java课程设计

    本话题聚焦于三个简单的Java课程设计项目,旨在帮助初学者更好地掌握Java语言的核心概念和实际应用。"晕有个带密码两个好使的"这句话可能是对其中一个项目特征的描述,可能涉及到密码验证或安全相关的功能。下面我们...

    Java常见FQA[借鉴].pdf

    - Java是一种高级编程语言,设计目标是跨平台、并发、强类型和面向对象。Java2是Java的一个版本,引入了更多的特性,如多层架构和企业级服务。 - JDK(Java Development Kit)是Java开发工具包,包括编译器、调试...

    java猜数字游戏

    这个Java猜数字游戏的实现,不仅涵盖了基本的GUI编程,还涉及到事件处理和随机数生成,是学习Java Swing和事件驱动编程的一个典型实例。通过这个程序,开发者可以了解如何构建用户友好的图形界面,以及如何在Java中...

    hx-re:Haxe 替代 RegExp

    10. **平台一致性**:Hx-re的目标是提供一个跨平台的解决方案,确保在任何Haxe编译的目标上,其行为和性能都保持一致。 在使用Hx-re时,开发者应当熟悉其API文档,了解每个方法和类的作用,以便充分利用其功能。...

    单目标跟踪算法实现代码

    单目标跟踪(Single Object Tracking, SOT)是计算机视觉领域中的一个重要研究方向,它主要关注在视频序列中追踪一个特定对象的过程。这个任务的关键在于,即使在光照变化、遮挡、形变、背景干扰等复杂情况下,算法...

    计算机软件及应用JAVA课程ppt课件.ppt

    Java 2 Platform (J2P) 是Java技术的一个重要里程碑,它分为三个主要版本:Standard Edition (J2SE),Enterprise Edition (J2EE),以及Micro Edition (J2ME)。J2SE主要用于桌面应用程序和服务器端开发,它是Java开发...

    基于java实现的P2P网络课设.doc

    ### 基于Java实现的P2P网络课程设计知识点详解 #### 一、课程设计题目及背景 本次课程设计的题目为“基于P2P的局域网即时通信系统”。P2P(Peer-to-Peer)即点对点技术,是一种分布式网络模型,它允许网络中的每台...

    软件需求规格说明书.doc

    - **J2RE**:Java 2 运行环境,提供运行Java程序所需的基础环境。 - **JVM**:Java虚拟机,是解释和执行Java字节码的平台,允许Java程序跨平台运行。 - **JDK**:Java开发工具包,包含了JRE和开发工具,用于编写...

    processing 3.4版本安装包,window系统,processing是一种基于Java的编程语言和开发环境

    他们的目标是创造一种易于学习的编程环境,用作教学、生产、创作的工具。 发展:随着时间的推移,Processing不断发展壮大,成为了一个拥有活跃社区和丰富资源的项目。它不仅在视觉设计领域得到广泛应用,还逐渐扩展...

    java版p2p网贷系统源码-Mega-Projects:这是thekaragoel的另一个名为“Projects”的存储库的衍生产品。此re

    最终目标是成为一个课程列表,初学者可以在其中开始任何数量的项目,并最终成为该语言的专家。 只有在一套严格的指导方针和规则下,社区才能进行提交。 关于这个 repo 的一些细节: 我将首先在这里用 Java 解决这些...

    Simplified_Java_Compiler:手工编译器,用于简化的Java编程语言

    《简易Java编译器:手工实现的编程工具详解》 ...通过分析和修改"Simplified_Java_Compiler"的源代码,你可以亲手构建一个能将简化Java语言转换为目标代码的编译器,这将是一次极其宝贵的学习经历。

    81个Python爬虫源代码+九款开源爬虫工具.doc

    - Spiderman是一个基于微内核和插件式架构的网络爬虫,目标是简化复杂网页信息的抓取和解析,适合快速构建业务数据提取项目。 5. **WebMagic**: - WebMagic是一个类似Python的Scrapy框架,无须配置,支持模块化...

    projeto-rede-neural:将绘制的图像排序为

    标题中的"projeto-rede-neural"显然指的是一项使用神经网络进行图像识别的项目,其目标是将用户绘制的图形归类到特定的形状类别中。这些类别包括圆形、方形、矩形、三角形和六边形。这是一项典型的计算机视觉任务,...

Global site tag (gtag.js) - Google Analytics