??xml version="1.0" encoding="utf-8" standalone="yes"?>
看着w边很多朋友盲目的学?/span>javaQ自q的很惛_帮他们,所以我觉得我应该把我这个自学者的l验分nl那些还在l着java无边际学习的朋友们指指\Q分享我的那些经验也好,错误也Ş?/span>
--------------------写在前面
熟话_有了目标的前q就不怕没有结果,所以我们首先要明了Java学习的\U?/span>
前几天在|上看到一?/span>java的\U图Q觉得很受用Q{了下来,让我们先看看图,然后看图说话?br />
可能有写朋友看到q么大的一张图会很晕。这么就?/span>java要学q么多了。不是我学javaQ吗Qؓ什么还要我d什?/span>html css jsp q些都是什么啊Q请大家E安勿躁Q且听我慢慢道来?/span>
怎么?/span>java是很多新手的l常问到的问题,现在我就Ҏ|上的一博客来单的介绍一下吧?/span>
首先要明?/span>Java体系设计到得三个斚wQ?/span>J2SE,J2EE,J2MEQ?/span>KJAVAQ?/span>J2SEQ?/span>Java 2 Platform Standard EditionQ我们经常说到的JDKQ就主要指的q个Q它是三者的基础Q属于桌面应用开发,q部分如果学得好很容易拓?/span>J2EE?/span>J2ME?/span>J2MEQ?/span>The Micro Edition of the Java 2 Platform。主要用于嵌入式JavaQ如手机Q?/span>PDA{等?/span>J2EEQ?/span>Java 2 PlatformQ?/span>Enterprise EditionQ就是所谓的企业U?/span>JavaQ适合企业的大型应用开发?/span>
J2SEQ?/span>
新手最初学习的时候先要从J2SE开始学P所包含的内容主要分为:面向对象概念的理解?/span>Java基本语法的学习,Java桌面囑Ş界面应用E序的开发,掌握常用?/span>Java API{(关键是要学会怎样查阅Q?/span>
重点Q?/span>Java基本语法Q@环结构,数据cdQ数l,q算W等Q?/span>SwingQ?/span>awtQ事件机制、文件输入输出流处理{?/span>
隄Q面向对象思想的理解(接口、类{)、线E?/span>socket|络~程{?/span>
视频教程推荐Q孙鑫的Java基础视频教程、张孝祥?/span>Java基础视频教程Q讲的都很细Q而且q两位老师在教学方面都有很好的l验?/span>
J2EEQ?/span>
在学习了J2SE之后Q你可以试着慢慢q渡?/span>J2EEQ当Ӟ学习J2EE需要很多非JAVA技术的支撑Q比如数据库技术,|页~程技术等{,待会我会详细介绍q两斚w的内宏V?/span>J2EE有三个必学的框架Q如果你说你学了J2EEQ但又不会这三个框架的话Q那会让人笑掉大牙,q三个框架分别是Struts?/span>Spring?/span>HibernateQ虽然这三个框架应用很广Q但不代表这三个框架׃表了J2EEQ?/span>J2EEq有很多其他的东西,比如EJBQ作ZN量Q此重量U不是指重量U选手那个意思,此重量非彼重量U)框架Q虽然这个应用慢慢的再被其他框架所取代Q但EJB3.0的出Cl它带回一些生机,作ؓ一个分布式应用的框Ӟ也是大家要去学习和了解的知识?/span>
当然Q刚才说?/span>J2EE包含的范围很q,即我把我所了解的所有技术说出来Q也q不能代?/span>J2EEQ这是一个很深很q的学问Q需要大家以后再工作的时候慢慢去发现了。我所了解的还包括Q?/span>
JDBC:Java数据库连接对象,基础中的基础Q?/span>Hibernate也只是对它的装而已
JNDI: Java 命名与目录接口,J2EE重要规范之一
EJBS: 上面已经提到q了
RMI: 提供q程调用Ҏ的支持,主要用于E序分布式开?/span>
JMS: Java消息服务Q中间g技?/span>
JAVA IDL: 提供J2EEq_?/span>CORBA交互能力和互联能力的技?/span>
JTS: lg事务监视?/span>
JTA: 事务划分的一个技?/span>
JAVAMAIL: Java中的邮g技?/span>
JAF: Java启动框架,没研I过
Log4jQ一ƾ日志处理的框架应用
JunitQ单元测试的好帮?/span>
freemarker?/span>velocityQ两ƾ不错的模板引擎
?/span>Flash的交?/span>FlexQ目前很多的SNS应用是使用Cq个技?/span>
Web services:想知道我们论坛天气预报的效果是怎么做的吗?请关注这个技?/span>
SOA:面向服务架构Q未来技术发展的势之一
……
不过前面介绍到得q些都不?/span>J2EE的基,是属于框架应用别的.要真正把上面说到的知识掌握好,q是的学?/span>J2EE最核心的东?/span>:JDBC?/span>JSP?/span>servlet?/span>JavaBean,后面三个也是学习SSH的基(Struts/Spring/Hibernate的简U?/span>).鉴于J2EE的内容太q复?/span>,大家最初只学习: JSP, servlet?/span>JavaBeanQ等q个基础掌握好再?/span>SSH学习了,再对其他J2EE技术有个大致的了解可以出L工作了。当Ӟ扑ַ作的前提除了?/span>Java学习好,q会有一些其他的技术也是必要掌握的?/span>
-_- 我很?/span>,Java却要求我学这么多复杂的东ѝ除了这些技术的东西Q在q阶D,大家更多的是会接触到比如设计模式的东西,比如工厂模式、桥梁模式、单例模式等{,q要学习建模思想Q比?/span>UML建模{等Q和软g生命周期{等。这些是升华大家~程思想的手D和途径?/span>
数据库技?/span>:
数据库几乎是E序中不可或~的一部分,在整个Y件开发中更是占据了重要作?/span>.数据库在整个软g中扮演的是地基的角色,你要修房?/span>,p先打好地?/span>,你要做Y?/span>,p先设计好的数据库.目前数据库几乎都是关pd数据?/span>,代表的有:
SQL Server,目前最新的好像?/span>2008,我不是很喜欢q赶旉,用的q是2005,不过也很不错?/span>,在此之前q有2000.
MySQL,最知名的开源数据库之一,我很喜欢它的y耐用,学过SQL SERVER数据库再学它,无师自?/span>,易如反掌.
ORACLE.甲骨文公司的产品,大型数据?/span>,正版的一般公怹不v.只有看看?/span>,不过现在Java开?/span>60%都是会用到q个数据?/span>,再加上现在甲骨文已经?/span>sun公司收购?/span>,JAVA?/span>ORACLE得关pL加暧?/span>,各位得多׃旉在这上面?/span>.
除了q些Q你q应该了解一些桌面应用Y件开发用到的数据库,比如?/span>sqlite。你在制作安装程序的时候可以把q个数据库打包进你的安装E序?/span>
|页~程基础:
|页~程基础要学的内容也比较?/span>,但主要集中在以下q三个技术之?/span>,大家每天看的各种样式的网都是它们呈现的:
HTML:文本标记语a
CSS:层叠样式?/span>
Javascript:览器客L脚本语言
现在更是行各种JavaScript?/span>,比如:Jquery?/span>ExtJs{,你要是会其中的某一个库的用,扑ַ?/span>so easy?/span>
J2MEQ?/span>
如果你在学习了以上技术还不过瘾,可以再学习手机程序的开发,我个h看来Q开发手机程序技术其实蛮单的Q难点在于优化,比如怎么让你写的E序量的节U手源,“代码诚可贵,手机h?/span>“Q所以不得不?/span>PC机多考虑很多成本和实用性问题?/span>J2ME的学习的话,切忌不要单纯的再模拟器上试Q一定要扄机测试,真机和模拟器的效果之间差别是很大的。更多手机开发技术,有兴的朋友可以和我一h讨?/span>
开发工P
开发工L选择主要q是看大家的习惯Q我个h比较喜欢使用eclispeQ功能很强大Q也很好拓展其他的功能。当让初学你也可以选择JCreatorQ或者最好就直接用记事本。等你熟悉了Java代码之后Q就可以使用JBuilder?/span>eclispe或?/span>netbeansq一cȝ工具了?/span>
----此文Zhttp://tieba.baidu.com/f?kz=692446591