惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
F
Fortinet All Blogs
D
Docker
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
WordPress大学
WordPress大学
罗磊的独立博客
Y
Y Combinator Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
J
Java Code Geeks
T
The Blog of Author Tim Ferriss
U
Unit 42
N
Netflix TechBlog - Medium
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
云风的 BLOG
云风的 BLOG
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tailwind CSS Blog
Hugging Face - Blog
Hugging Face - Blog
Stack Overflow Blog
Stack Overflow Blog
爱范儿
爱范儿
酷 壳 – CoolShell
酷 壳 – CoolShell
P
Proofpoint News Feed
G
Google Developers Blog
H
Help Net Security

博客园 - Flouse

0-1 背包问题的扩展 sql server平台用存储过程的分页 [新闻]Web 3.0带来新体验 SyncToy v2.0 发布 微软同步工具 - Flouse [推荐]一个JavaScript WEB日历控件 const char*, char const*, char*const的区别 Mozilla Thunderbird 3.0 Alpha 2 简体中文版 用友软件推出SaaS业务平台 推荐一款不错的笔记软件给大家 [收集]DotNetNuke(DNN)学习和应用资源合集 [讨论]提升DNN速度的方法 [推荐].NET开源项目 C# 开发和使用中的23个技巧(常用) 三层体系结构学习总结 关于三层体系结构 LINQ学习工具 任务管理器CPU曲线跑起正弦曲线 [转][新闻]20世纪最好的10个算法 思考·未来的计算机是什么样子的呢?
Java开发技术学习要点
Flouse · 2009-03-27 · via 博客园 - Flouse

Java开发技术学习要点

推荐书籍:

《Java编程思想(第四版)》
《Java Effective中文版(第二版)》

  • Java语言的基础知识以及它的核心类库(collections、serialization、streams、networking、multithreading、reflection、event、handling、NIO、localization以及其他)

  • 面向对象分析与设计(OOA/OOD)

  • 设计模式(GOF,J2EEDP)以及综合模式

  • UML,尤其是class、object、interaction 以及 statediagrams。

  • Java数据库技术,并且会使用至少一种persistence/ORM构架,例如Hibernate、JDO、CocoBase、TopLink、InsideLiberator(国产JDO红工厂软件)或者iBatis

  • 了解对象关系的阻抗失配的含义以及它是如何影响业务对象与关系型数据库的交互,和它的运行结果。还需要掌握不同的数据库产品运用,比如Oracle、MySQL、SQL server。

  • Servlets、JSP,以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries

  • 熟悉主流的网页框架,例如JSF、Struts、Tapestry、Cocoon、WebWork,以及他们下面的涉及模式,如MVC/MODEL2

  • 学习如何使用及管理Web服务器,例如tomcat、resin、Jrun,并且知道如何在其基础上扩展和维护Web程序

  • 学习如何利用Java的API和工具来构建WebService。例如JAX-RPC(JavaAPIforXML/RPC)、SAAJ(SOAPwithAttachmentsAPIforJava)、JAXB(JavaArchitectureforXMLBinding)、JAXM(JavaAPIforXMLMessaging)、JAXR(JavaAPIforXMLRegistries)或者JWSDP(JavaWebServicesDeveloperPack)

  • 熟悉不同的J2EE技术,例如JNDI(JavaNamingandDirectoryInterface)、JMS(JavaMessageService)、JTA/JTS(JavaTransactionAPI/JavaTransactionService)、JMX(JavaManagementeXtensions),以及JavaMail

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

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

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

  • 熟悉对不同有用的API和frame work等来为你服务。例如Log4J(logging/tracing)、Quartz(scheduling)、JGroups(networkgroupcommunication)、JCache(distributedcaching)、Lucene(full-textsearch)、JakartaCommons等等

  • 熟练掌握一种JavaIDE例如sunOne、netBeans、IntelliJIDEA或者Eclipse。(有些人更喜欢VI或EMACS来编写文件。随便你用什么了)

  • 需要熟悉代码生成工具,例如XDoclet

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

  • 熟悉一些在Java开发中经常用到的软件工程过程。例如RUP(RationalUnifiedProcess)andAgilemethodologies