学习Java需要达到的30个目标(JAVA程序员必看)

   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,serialization,localization,Cryptography,javabeans,multithreading)