学习java的30个目标

 

1.你需要精通面向象分析与设计(OOA/OOD)及模式(GOFJ2EEDP)以及合模式。你应该十分了解UML,尤其是classobjectinteraction以及statediagrams

2.
你需要学JAVA言的基以及它的核心类库(collectionsserializationstreamsnetworking   multithreadingreflectioneventhandlingNIOlocalization,以及其他)

3.
应该了解JVMclassloadersclassreflect,以及垃圾回收的基本工作机制等。你应该有能力反编译一个文件并且明白一些基本的汇编指令。

4.
如果你将要写客端程序,你需要学WEB的小用程序(applet),必需掌握GUI设计的思想和方法,以及桌面程序的SWINGAWT   SWT还应该对UI部件的JAVABEAN件模式有所了解。JAVABEANS也被用在JSP中以把业务逻辑从表现层中分离出来。

5.
你需要学java数据,如JDBCAPI并且会使用至少一persistence/ORM构架,例如HibernateJDO   CocoBaseTopLinkInsideLiberator(JDO工厂)或者iBatis

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

7.
你需要学JAVA的沙盒安全模式(classloadersbytecodeverificationmanagerspolicyandpermissions codesigning   digitalsignaturescryptographycertificationKerberos,以及其他)有不同的安全/认证   API,例如JAAS(JavaAuthenticationandAuthorizationService)JCE   (JavaCryptographyExtension)JSSE(JavaSecureSocketExtension),以及JGSS   (JavaGeneralSecurityService)

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

9.
你需要熟悉主流的网框架,例如JSFStrutsTapestryCocoonWebWork,以及他下面的及模式,如MVC/MODEL2

10.
你需要学如何使用及管理WEB器,例如tomcatresinJrun,并且知道如何在其基展和维护WEB程序。

11.
你需要学分布式象以及API,例如RMIRMI/IIOP  



12.你需要掌握各流行中件技术标准和与java实现,比如TuxedoCROBA,当然也包括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.
你需要学门轻级应用程序框架,例如SpringPicoContainerAvalon,以及它IoC/DI(setterconstructorinterfaceinjection)

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

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

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

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

20.
你需要熟悉不同有用的APIframe   work等来你服。例如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例如sunOnenetBeansIntelliJIDEA或者Eclipse(有些人更喜VIEMACS写文件。随便你用什了:)

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

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

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

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

29.
需要java展的伐,比如在可以深入的学javaME,以及各java范,技的运用,如新起的web富客端技

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

你可能感兴趣的:(java,serialization,localization,Cryptography,javabeans,multithreading)