首先java完全可以在半年之内学通,只要你确实用心学,这点完全不必担心。
如果你智商属于普通人并且完全没有编程的基础,例如c,c++,或者其他编程语言(我指的是亲手编写一个完整的程序,helloworld或者剪切字符串不算)我强烈不推荐你看书,不然将浪费你大量的入门时间,甚至走许多弯路(比如做j2ee的话swing与swt是基本不用会的,多线程也只要会点基础即可),现在java的视频教程满天飞,完全可以选一个讲解清晰,条理明确的java入门视频,这里我推荐马士兵的j2se视频教程,以前我看的也是这个,虽然现在看来里面有点小错,但不失为一个看起来愉快,学起来轻松的入门级教程,毕竟刚开始的时候还是应该以培养兴趣为主,。
入了门之后就要选方向j2me或j2ee,这两种你可以自己上百度搜下,其实都是满有前途的,以后牛了双修也未尝不可。
我个人学的是j2ee的内容,j2ee说白了就是做网页,这时候你要从先从java里脱身出来,学些跟网页有关的东西:
1.html:很简单的东西不是太笨的话半天左右即可搞定
2.js:易学难精,想速度找工作不必花太多时间,随便买本javascript书略读并备查
3.数据库:如果没有基础的话,建议多花时间,至少一个月,开始建议用mysql,然后是oracle,然后是sqlserver,这段时间最关键的就是sql语言的编写,关系到你今后笔试的成败,一定要自己多练,多在网上找笔试题做。
5.xml
6.jsp,servlet,tomcat:
也可以继续看视频比如尚学堂的jsp,servlet。
7.学再多不实践也是不行的,这时候可以自己搞个小项目了,可以参考尚学堂shopping视频,bbs视频,不过这两个项目练练手可以,别往简历上写,太丢脸了。这其中还有很多小工具,例如jxl的excel读写,jfreechat的图表生成等等,实在不行进公司再学也行,因为不一定每家公司都用这些东西。
8.开始进入框架时代,框架说白了就是加速开发的工具,内在原理还是以上的那些东西
主要是3大框架:
mvc框架:struts,struts2,jsf
or映射框架:hibernate,ibatis
业务框架:spring
重量级框架:ejb
每种挑一样学即可,因为大概都差不多,学了一种同类产品可以在3天内搞定
学习方法分两类
1.看视频:时间长,要有耐性,估计全看完要1个半月,基本可以学全开发用的东西,但是对内在原理了解不深。
2.看网上资料,看书:速度因人而已,领悟力强的半个月就能搞定,学的东西还比看视频多,毕竟学到这阶段都有点基础了,可以研究下程度更深的东西,如果自觉不够聪明就别勉强了,说不定3个月还云里雾里。
当年我基本是2种结合,一边利用上无聊课的时间看书,大学这种课应该还不算少,视频如果觉得会了就拉过去。
视频主要是2家,尚学堂的够全面,但不够深入,学起来比较简单。
传知播客够深入,也全面,但是学起来比较难。
9.最后一个,在我面试的经历中几乎必问的东西,AJAX
首先是搞清楚原理,最基础的那段js调用服务器的代码必背,
然后是学一个ajax框架,推荐jquery学起来简单,ext备选,用的人多。
10.webservice,ant,gis等等等等。
这些东西笔试面试最多问你做没做过,基本不影响你进公司,以后有机会就在项目中学。
11.面试之前自己做一个拿的出手的项目,不需要太大,4,5张表即可,但一定要够花哨,ssh框架全用上,ajax必用,报表功能必有,面试的时候就拿这项目猛吹,然后源码丢给他,基本就没啥问题了(美工直接上网抄,或者上网找个现成的项目扒光后台全部自己写)。
最后,送你一句话,男儿当自强。
在程序员这行里,能力远远大于学历,你相信你能成功,你就能成功!