- 浏览: 139630 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
zhuhaihua:
gigix 写道http://jira.openqa.org/ ...
Selenium 如何不在Iframe里面运行测试? -
gigix:
http://jira.openqa.org/browse/S ...
Selenium 如何不在Iframe里面运行测试? -
jiayanchang:
Java最全面试题
Java学习路线
先学习j2se
要学习j2ee就要先学习j2se,刚开始学习j2se先建议不要使用IDE,然后渐渐的过渡到使用IDE开发,毕竟用它方便嘛。学习j2se推荐两本
书,《java2核心技术一二卷》,《java编程思想》,《java模式》。其中《java编程思想》要研读,精读。这一段时间是基本功学习,时间会很
长,也可能很短,这要看学习者自身水平而定。
不要被IDE纠缠
在学习java和j2ee过程中,你会遇到五花八门的IDE,不要被他们迷惑,学JAVA的时候,要学语言本身的东西,不要太在意IDE的附加功
能,JAVA编程在不同IDE之间的转换是很容易的,过于的在意IDE的功能反而容易耽误对语言本身的理解。目前流行的IDE有
jbuilder,eclipse和eclipse的加强版WSAD。用好其中一个就可以了,推荐从eclipse入手j2ee。因为Jbuilder更
适合于写j2se程序。
选择和学习服务器使用配置 =D R t -
当你有了j2se和IDE的经验时,可以开始j2ee的学习了,web服务器:tomcat,勿庸置疑,tomcat为学习web服务首选。而应用服务器
目前主要有三个:jboss、weblogic、websphere。有很多项目开始采用jboss,并且有大量的公司开始做websphere或
weblogic向jboss应用服务器的移植(节省成本),这里要说的是,学习tomcat和jboss我认为是首选,也是最容易上手的。学习服务器使
用配置最好去询问有经验的人(有条件的话),因为他们或许一句话就能解决问题,你自己上网摸索可能要一两天(我就干过这种傻事),我们应该把主要时间放在
学习原理和理论上,一项特定技术的使用永远代替不了一个人的知识和学问。
学习web知识 Jj=/ G T
如果你是在做电子商务网站等时,你可能要充当几个角色,这是你还要学习: .'l:8SxT?L
html,可能要用到dreamwave等IDE。 ZO(T u%xU
Javascript,学会简单的数据校验,数据联动显示等等 Zw cmUq
b],MA_pI?=
J2eeAPI学习 (x 6 lxJ'
学习j2eeAPI和学习服务器应该是一个迭代的过程。 6t FbC\gV
先学习jsp和servlet编程,这方面的书很多,我建立看oreilly公司的两本《jsp设计》和《java servlet编程》,oreilly出的书总是那本优秀,不得不佩服。 S{=>TQn\2H
学习jdbc数据库编程,j2ee项目大多都是MIS系统,访问数据库是核心。这本应属于j2se学习中,这里拿出来强调一下。 W ,9cn M?2
学习jndi api,它和学习ejb可以结合起来。 xVql.;/Bf
学习ejb api,推荐书《精通ejb》 Y@;4 PEH$
经过上面的这些的学习,大概可以对付一般的应用了。 $'>. rfV|6
有人说跟着sun公司的《j2ee tutorial》一路学下来,当然也可以。 K 7 ~sgu#o
aQ?DVu3#U,
学习ejb设计模式和看代码(最重要) e?(P& THu
设计模式是练内功,其重要性可以这么说吧,如果你不会用设计模式的话,你将写出一堆使用了ejb的垃圾,有慢又是一堆bug,其结果不如不用ejb实现(ejb不等于j2ee) k 8 N}1Bv
无论学习什么语言,都应该看大量代码,你看的代码量不到一定数量,是学不好j2ee的 =u 5 ! [KD
目前有很多开源的工程可以作为教材: n\[ 9cS.`=
jive论坛 "v t <
petstore sun公司 \ jS W
dune sun公司 MFUzFS |,
等等,研读一个,并把它用到自己的工程中来。 Vehapm;4(e
z2a9nh k_9
J2ee其他学习 (+ _]=
当你渐渐对j2ee了解到一定深度时,你要开始关注当前领域中的一些技术变化,J2ee是一块百家争鸣的领域,大家都在这里提出自己的解决方案,例如
structs,hiberate,ofbiz等等,学习这些东西要你的项目和目标而定,预先补充一下未尝不可,但不用涉及太深,毕竟学习原理和理论是最
最重要的事。 a G VS f)z
o <otp WP
目前常见j2eeAPI j!4R Z B"
JavaServer Pages(JSP)技术1.2 _75ZS <N
Java Servlet技术2.3 . b hB 8
JDBC API 2.0 q $b4 pu
Java XML处理API(JAXP)1.1 $ ; . oy J
Enterprise JavaBeans技术2.0 /7pxy!L~
Java消息服务(JMS)1.0 [2)C`Ic @l
Java命名目录接口(JNDI)1.2 {h i |N b
Java事务API(JTA) 1.0 uu xs{/M p
JavaMail API 1.2 c' s]W p~
JavaBeans激活架构(JAF)1.0 \{ hDUOm I
J2EE连接器体系结构(JCA)1.0 S( zo P>}3
Java认证和授权服务(JAAS)1.0 } > { ]% s
学习上面的某些API要以你的项目而定,了解所有他们总之是有好处的 /M9 3(aE
上面印证了大家说的一句话,java语言本身不难学,但是技术太多,所以学java很费劲。回想一下,基本上每个初学者,在刚学习java的时候可能都会问别人这么一句话,你怎么知道的哪个方法(api)在哪个包里的?呵呵,无他,唯手熟尔。
======================================
J2EE总体的学习计划
第一部分:
JAVA语言基础知识。包括异常、IO流、多线程、集合类、数据库。(切记基础知识一定要时时刻刻巩固)
要求:对java的封装,生命周期等有一定的了解;
异常------掌握try-catch-finally的使用
IO流------掌握字节流、字符流和对象序列化的处理.。熟练使用各种输入、输出流类(InputStream、
OutputStream、FileInputStream、FileOutputStream、DataInputStream、
DataOutputStream、BufferedInputStream、BufferedOutputStream、Reader、Writer、
InputStreamReader、OutputStreamWriter、BufferReader、BufferedWriter、
ObjectInputStream、ObjectOutputStream)。
多线程-------掌握多线程实现的两种实现方法,分别是继承Thread类与实现Runnable接口。理解线程间的同步与互斥。
集合类-------掌握Set、Collection、Map、List、Iterator、Enumeration接口的使用,掌握HashSet、ArrayList、Vector、HashMap、HashTable类的使用。
数据库-------掌握JDBC API的使用,包括DriverManager类、Connection接口、Statement类和接口、PreparedStatement接口、ResultSet接口。
还有了解java反射机制,对Java1.5的新功能必须有了解与使用,泛型等。.
另外-------理解Unicode、GB2132、GBK、UTF-8、ISO8859编码方式。
参考:《Java编程思想》、张孝祥视频教学。
第二部分:
JAVA网络编程。包括Socket、RMI、HTML、XML、JSP、JavaBean、Servlet。
要求:Socket--------了解java.io包中的套接口类和服务器套接口类的使用。
RMI--------掌握RMI基本工作原理、掌握定义远程服务接口类、远程接口类、客户端调用类和部署、编译RMI应用程序。
HTML--------了解HTML语言的语法、各种标签。
JSP-------掌握JSP2.0语法、隐含对象、EL、JSTL1.1、JSP自定标签。
JavaBean-------理解JavaBean的特点和事件模型。
XML--------了解XML语言的语法、DTD、Schema。
Servlet---------掌握HTTP协议、Servlet工作过程、Servlet会话跟踪、Servlet过滤器、Serlvet事件侦听器、配置web.xml。
UML-------掌握用例图、类图、活动图、顺序图、状态图。
Aglet-------学会安装使用tahiti服务器,掌握Aglet API。[以后再学,在彭老师的项目才会用到]
开发工具------掌握Rational Rose 、ant 、cvs版本控制、myeclipse、dreamweave等开发工具使用。
另外-------学习过程中学会使用Tomcat、JBoss/Weblogic服务器
参考书:《JSP2.0技术手册》林上杰编著;
《深入体会Java Web开发内幕---核心基础》
在JSP上不要花太多时间,在时间放在servlet多一些.
第三部分:
流行MVC架构和Java对象持久化技术。包括webwork、Spring、Hibernate
要求:MVC-------理解MVC设计模式、处理过程。
webwork-------理解webwork实现MVC的机制、工作流程。掌握配置webwork应用、webwork控制器组
件、webwork应用的国际化、异常处理、webwork标签库。(其实很多遗留系统用的是Struts,但现在越来越少人用了,所以我鼓励你们学
webwork,但要必须要了解一下Struts)
Spring-------掌握控制反转(IoC)、面向方面编程(AOP)、事务服务(JTA)、邮件服务(JavaMail)、持久化服务(DAO、JDBC、ORM)、远程服务(RMI)。
Hibernate--------理解ORM,掌握映射对象标识符、映射关系(一对多、多对多、一对一)、映射类型、检索策略、检索方式、数据库事务与并发、管理Hibernate的缓存。
学习过程:先学习webwork2,再学习Hibernate,最后学Spring。
下面的东西有时间了解一下:
测试/敏捷开发-----关注测试,掌握Junit单元测试框架,以及现在两个流行的mock工具EasyMock/JMock,熟
悉其中一种。(提示:测试非常重要,有效的测试可以减少很多开发的时间,当然刚开始觉得不耐烦,好像没有必要写测试代码,一定要说服自己尝试写测试代码,
或多或少的)
UNIX系统------了解最主要的shell编程,及主要的相关的命令行操作.
AJAX-----了解基本的javascript,csss,以及ajax常用的用法,还有JSON框架.
(ajax的框架太多,但不要花太多时间去学,因为你不知道公司用不用ajax,而且用的那一框架你没有办法知道,所以懂最基础就可以了)
参考书:《webwork in action中文版》
《精通Struts》、《精通Hibernate》孙卫琴著,
《Spring技术手册》林信良著
《JUnit in action中文版》Vincent Massol著的
书籍只是用来入门的,其他的工具必须多上英文网址,尽量多看一些英文文档,提高自己的水平,同时有空的时候也可以下载的一些开源项目的文档。
最后一句话:无论什么技术,学了不要以为自己多牛,学技术只是为了更好提高自己做项目的能力以及提升自身的水平。你做的项目效果怎样才能最终看出你自身的水平。
######################################################################
1. 计算机是有什么组成的,CPU是什么东西,其工作原理是什么。(记住理解最重要!)
咚闫?控制器,存儲器,輸入設備,輸出設備
程序是所有指令的有序集合
程序與數據一樣存儲,按程序編排的順序,一步一步地取出指令,自動的完成指令規定的動作
CUP(中央處理器)也稱為微處理器,是微機的核心部件,實際上就是計算機咚闫骱涂刂破鞯募象w.
2. 机器语言和微指令集的概念。
3. 程序的概念。
4. 汇编语言是低级语言但不是机器语言。
5. 高级语言主要有那些?(C,C++,Basic,Pascal,Fortran,C#,Java等等)
6. 编译程序和解释程序的概念和其原理。
7. HTML、XML等是标识性语言。
8. Prolog是人工智能语言。
9. 操作系统OS的概念和原理。(Windows98,Windows2000,Windows NT,UNIX,Linux,等等都是OS,还有一些实时OS,嵌入OS。)
10. Windows编程说白了就是Windows API的调用。(很多程序员只是会编windows程序,用的是VB,我的建议是这些程序员顶多只是低级编码员,我称其是coder)
11. VC++、VB、BC、BCB、Delphi、VFP等都只是编程的工具和环境,不是编程语言。
12. 面向结构的设计概念。
13. 面向对象的概念。
14. 软件工程的概念和原理。
15. 数据库的概念。(要熟悉一些著名的数据库系统和语言的名字,如Oracle,SQL,DB2,Sybase等)
16. 了解网络概念。
17. 了解多媒体概念。
18. 熟悉和掌握数据结构和基本算法。
一些经验和体会
1. 真正的程序员用C++;
2. 动手去编程序;
3. 动脑去思考;
4. 要有良好的编程风格;
5. 读书,读好书,尽量读原版书!
6. 有自己的学习计划;
7. 总结自己的经验教训;(准备一个笔记本,记录错误和心得)
8. 不要怕学新东西;
9. 要有软件工程的思想;
10. 善于发现问题,然后去寻找答案;
11. 向高手请教;(要虚心直到你成为高手)
12. 和同行交流;(不善于交流肯定不行)
13. 懂得软件的实质,不要被千变万化的表象所迷惑;
14. 真正要学习用的是编程语言和方法,不是什么库,什么类,什么工具;(学用那些什么库都比较简单,但光会这些库,我觉得还远远不够)
15. 学习Windows编程主要是学习Windows OS和Win32 API;
16. 有空了解一下嵌入式开发;
17. 有空了解一下PDA软件开发;
18. 了解一下.NET框架和C#语言,也许它是你新的衣食父母;
19. 要有耐心,不要作浮躁的人;
20. 对程序加注释,并保留你的老程序;
21. 学到的东西越多,了解的越多,你就越接近专家;
22. 有空去逛逛CSDN,那里有你很多知己;
23. 要有信心成为一个优秀的程序员。
教材推荐
推荐的教材主要还是针对概念来的,最好选用名校的教学用书。
1. 《计算机组成原理》(熟悉)
2. 《数据结构》(掌握)
3. 《操作系统》(了解->熟悉)
4. 《The C Programming language》(掌握)
5. 《编译原理》(了解原恚?br />6. 《汇编语言》(了解)
7. 《计算机网络》(了解)
8. 《软件工程》(了解)
9. 《关系数据库》(熟悉)
10. 《The C++ Programming Language》(掌握)
11. 《面向对象设计》(掌握;结合C++学习)
发表评论
-
卸载VS2008
2010-06-18 18:07 1267最後的解決辦法是找到源安裝盤的vs_setup.msi,用Ad ... -
Xmark 无法同步 解决方法
2010-01-17 16:25 1777打开/etc/hosts 添加静态ip解析添加到里面 #xm ... -
BB - 如何刷机
2010-01-09 07:26 7951. install the DM 2. install t ... -
Weely Plan
2009-08-16 22:20 7042009-8-16 Personal growing ... -
finanace about
2009-07-07 22:49 0Income: 20000+150000=35000(Fat ... -
Windows Tips
2009-05-08 14:08 668添加右键选项 REGEDIT4 [HKEY_CL ... -
Apr 2009~ June 2009 Plan
2009-04-04 10:18 01. Begin to learn complier 2. ... -
Web 自动化测试
2009-03-07 08:37 897http://www.turbozv.com/read.php ... -
2008年 好快
2009-01-03 22:46 682时间总是过的很快,快 ... -
魔兽相关
2008-06-29 14:16 763录像下载:http://war3xp.xiyou.net/ -
SCN
2008-06-05 21:51 7461.页面显示日文乱码 %MYSQL_Install_folde ... -
想看的书 想做的事 2008
2008-04-10 08:52 783算法 算法导论 吴文虎,黑书 per algorithm o ... -
2007-5-15 talking with jm
2007-05-16 09:41 8121)看http://www.opencms.org/openc ...
相关推荐
统计方法基础知识统计方法基础知识PPT学习教案.pptx
变压器基础知识学习课件.ppt 变压器工作原理讲解.ppt 变压器技术交流(结构部分).pdf 变压器接线.pdf 变压器智能生产.pdf 变压器标准资料.pdf 变压器正确使用.pdf 变压器特征气体含量异常分析与处理.pdf 变压器的分类...
品质统计基础知识统计方法基础知识PPT教案学习.pptx
CMMI基础知识评估方法实用PPT学习教案.pptx
学习web前端时可以用到的小知识,一些标签的详细使用方法
战略规划基础知识及方法培训PPT学习教案.pptx
XRD基础知识与分析方法学习课程.pptx
焊接方法与设备电弧焊基础知识学习教案.pptx
咖啡入门的基础知识零基础学习咖啡的方法.doc
品质统计方法基础知识PPT学习教案.pptx
变压器基础知识学习课件(1) 变压器基础知识与工艺介绍 变压器基础知识与工艺介绍 变压器及磁性材料基本知识简介 变压器及互感器 变压器技术交流(结构部分) 变压器接线 变压器结构及工作原理 变压器结构及工作原理...
本资源包括编译原理中基础课程的全部课件,为PPT格式文件,还包括两个实验,词法分析器和语法分析器。为大家学习编译原理提供一些参考。有:编译程序概述,文法和语言的形式定义,有穷自动机,词法分析器,语法分析...
地价基础知识与估价方法PPT学习教案.pptx
XRD基础知识与分析方法PPT学习教案.pptx
基于本体知识库的基础知识学习课件,其中包括本体概念、描述语言和方法论方面的综述,以及简单的应用。
ESD基础知识与量测方法PPT学习教案.pptx
QC小组活动常用工具方法基础知识PPT学习教案.pptx
自我学习的总结
冒泡排序 数组 运算符 算法 进制转换 方法 Java编译原理 循环 分支 有详细的讲解附带doc文档笔记
本节是苏科版教材下册第8章第一节内容,对应《纲要》基础模块第三阶段的“信息加工...通过学习制作简单的GIF动画,让学生懂得网页中众多的GIF动画也是信息发布的形式之一,学好本节内容有助于为后面制作动画奠定基础。