Java之路

                                         Java之路 
   
转眼之间,即将进入社会。毕业在即,感慨多多。对于过去的思想和生活,不能让它一点痕迹都没有的流掉啊,还是想留下点东西,或是纪念,或是警惕。 从今天开始,我要对我的学习和感悟写点什么。呵呵,也做为大家娱乐或者消遣品吧。

    那么先谈谈理想吧。

    我的理想有三个变化:

    初中的时候想做个教师。父母说教师好,以后做个老师,工作不累,还是”旱涝保收“,这是我从家人听到最多的话拉。自己也感觉教师多伟大,教那么多人,学生还得听老师的,多神气。这也许是那是的感觉吧。

    高中的时候,我看的书不少,了解到原来这个世界上不只是有老师这个职业啊。因为我喜欢看动物世界,知道这是生物领域,要是天天能观察研究动物植物该多好。我那时最喜欢的事是种花草。在自家的阳台上,用花盆(小学时和伙伴,从大千世界搜刮来的)种草,种花,种树,种菜,哈哈。不管是什么只要能种,我就耕耘,每当繁忙时节,家里几乎成拉农场拉。也因此被吵,但是也许家里状况变拉的原因,母亲不是很刻意干扰我的生活。一边种花草,一边看书,一边学习,这就是我的高中生活。那时一个梦想就是生物学家,而且要研究生物或小动物(包括昆虫之类的)。当知道有网吧这个东西后,慢慢改变拉。懒的种拉,懒的理我的昆虫拉。

   高考过后,选专业,上大学。估分,在考试过后已经差不多知道拉。两天时间的泡网吧过后。开始填本科一批,我随便写拉个河南农业大学(肯定没戏)。然后进入多的如牛毛似的专业名词里面。那时候开始,我家里的环境越来越不好,在责任和兴趣协商下,我拒绝拉父亲盲目的意见--河南政法管理学院(分很低),而是选择拉计算机类专业。那时,只是想学计算机专业,一来可以天天玩电脑(真是果真应验拉),而且相对来说好找工作点。只要找,都能找到,可能工资不理想,但是能有工作和做自己感兴趣的事。

  好拉终于要说java拉。

  首次听说java是好朋友说的。他建议我和他一起学java,以后一块。我那时对这个并不感兴趣。虽然答应,但是并没有立即学习。真正学习java是从大二上学期开始学的。那时上课已经感觉自己对所学专业十分缺乏兴趣,自然就百无聊赖,也就是说没事干。一段时间后,想拉想,总不能上课都睡觉或者发呆过去吧。睡的多拉容易嗜睡还有可能得心脏病呢,呵呵,发呆可能会导致过早的老年痴呆证。那时和我的哥们联系还算频繁,当然一打电话无非就是些,交girlfriends拉没,what learn之类的,也谈起java,但更重要的是完美世界。曾经引我入迷拉一段时间。荒废拉不少时间。但是我还是从学校旁边的旧书店买拉本java基础书。好像是3块或者4块。好嘛,现在不用担心得老年痴呆拉。上课没事干,看书。一看就到现在。

  当然学习java并不是靠看书看出来的。开始的一段时间里,我边看书边写一些简单的例子。那时候也配上拉电脑。但总体感觉也就是那样。编个小程序,在jcreator里面运行。感觉比较好玩而已。没想到自己要靠它吃饭。吃饭还得靠自己的专业或者已经是定下拉的信念,毕业去打工。什么时候转变靠java吃饭的呢。是在我使用eclipse开发工具时,第一次被它的界面吸引拉。这么豪华,也是在编程序吗。还以为都是在黑屏或者没有色彩的白板中编呢。但是要靠java吃饭,究竟是该学什么呢?从此和百度接下拉不接之
缘。一有问题,百度一下就知道,确实没错。呵呵

   我搜索拉很多关于如何学习java或者是如何成为真正的java程序员之类的网页。现在我的电脑上还有这些经典的网页,舍不得仍。那么像网上各位高手说的那样,为了java事业的发展,特将学习java的方法列举如下,虽然自己不算是高手,但是也写出点自己的心得吧,还望各位指教:

  java学习总路线:

  java分为三大技术体系,1,j2se;2,j2ee;3,j2me;这里没有特别的顺序排列。

  首先我们要从j2se入手学习java。条件:热爱java;基础:无或者有c语言C++语言的话更好,这里不是说你有基础就可以快速学好java,你没有基础就不能快速学好java。这是要靠毅力、兴趣和领悟能力。具体学习什么,你可以看下java2核心技术或者thingking in java......(自己搜)学的越好意味着要看更多的书,要敲更多的代码。其次我们有要面临选择拉。学习j2ee还是j2me呢。首先我们要分清这两个概念,j2ee主要是企业级应用。具体例子就是,学完之后你要制作为企业服务的各类系统,web服务,网站等之类的软件。j2me是手机应用和嵌入式应用。这里说明J2EE是java现在的主流(已经升级为JavaEE),也是大部分人学习java的方向,因为j2ee学习有广泛的学习资料和开源项目。因此什么情况下你想学j2ee都能学,只要有台电脑,而且能联网就行。这里还要说明一下,没有电脑的话,最好不要搞软件;因为你要搞软件,不可能不练习敲代码,当你没有电脑时,你不具备完成一定代码量的条件,无论你说,我可以在网吧学,我可以在学校机房学。由于暑假没有把电脑带回来,我干过在网吧学的事,但也只是学习配置服务器,配置运行环境而已。一直敲代码,绝行不通。相对与J2EE来说学习j2me的人很少,原因是资料少,环境很难得到。比如你找个起码能模拟手机运行j2me的程序的软件就很难。一般要掏钱的。不是专业公司的话,很难把开发j2me的环境配置齐全。除非你很有钱,不过那样你还需要学技术吗,个人观点。最后不论你学j2ee还是j2me,那么j2se都是要学的,因为他是前者的基础。如果你有兴趣致力于java桌面开发程序那么只学习j2se就行拉。但是java的优势不再桌面而在于网络,这里笔者不建议学桌面,除非你有特别深的兴趣,或者不那么急于工作的话。可以考虑。但是以后,免不了还得和c#,vc++的桌面应用竞争。

  那么学java最关键的是什么呢?再次我把我的经验共享给大家,那就是

  看——想——找——练——看——想——找——练 ,导致:最终成为java技术专家。

J2EE学习:

  在这里我主要说明下j2ee的学习。因为我就是走这条路子的。其他的不太涉及。当然现在我还并没有学完j2ee,学完学通的话,可能至少5,6年吧。现在至多算是个java程序员,一下结论不对之处还望各位指教。

  J2EE牛人:国外2-3万dollar,中国,2-3万RMB(月薪)我的动力。

  牛人含义:使linux,会使中间件,会使java框架,会使数据库
 
  J2EE的学习过程:  由于学习尚浅,  一下是个人观点,还望高手纠正:

  J2EE大多提供web服务, 因此我们要学习,html,css,xml,js这些知识,到熟识程度就行,随着项目经验的积累,就会熟 练拉。

     其次就是servlet拉。servlet是jsp之父,应该先学servlet,在学jsp。其实servlet学会拉jsp也差不多拉,顶多记一下内置函数、标签的使用。但是serlvet一定要领悟其原理和配置(虽然IDE已经内只好拉自动配置功能,但是还是要学好配置,很重要)。

    其次你要用到j2se知识拉。还有学习jdbc不可避免,还有pojo即java传统对象,比如javabean。

    再次学习下数据库的链接池和分页实现。那么你可以制作最基础的web服务拉,有一部分公司采用这种方法开发项目,但是你还需要学习设计模式才能找到工作。

    接下来你最好先学习下j2ee设计模式,因为这些模式是java框架的底层实现,其实就是使用拉这些模式的很多组合。学完之后,你就很容易里面java框架的原理与机制,到学习时,不会总是问,这是为什么呢?为什么要这样?而是哇塞,这一点采用拉xx模式解决。这样复习拉模式,而且理解拉框架的底层实现。好嘛,接下来,你可以大胆的学习框架拉,不要畏惧框架,因为框架是使你的开发更容易更优秀的技术当你学会框架后,你将不在愿意使用servlet最原始的开发方法。因为那样既没效率,又不迅速,而且还费力的很,更重要的是大公司一般没有订单。

    框架你必须学习struts2,hibernate,spring。慢慢学习,webwork,ibatis,Jjsf,struts,jdo等等。其中重头戏是struts2,hibernate,他们是一般开发大型应用程序的必备,当然还有其他的方案。spring作为工厂,管理这两个框架。可有可无,当然用的话更好。就spring IOC方面来说,spring的实践操作并不难,主要是理解就行。而spring MVC用得很少。

    好拉,最后的程序:linux必学。这是搞java的素质。怎么入手呢?这是一般新手的疑问。

    在学习拉java后,你可以选择在linux上安装个jdk,tomcat,mysql,eclipse等。哈哈,再次,笔者的linux水平也就是处在linux上配置javaweb环境上,我想shell不必急于求学。学习常用命令java环境的配置好拉,以后在公司慢慢学习。毕竟就是不考虑linux开发java,面对微软的霸王条款还是要学习linux的。

    作为更高层的技术人还要学习OOP。这点就不多说拉。这是学习软件必备的。也是最重要的。有关书籍有:uml,软件工程,面向对象,系统分析等等。

    至此我的一些感想已经写得差不多拉。从我当时选择java最为职业到现在差不多一年拉。我发现我越来越喜欢java拉。这个语言是优雅的,想着有朝一日,在液晶屏下敲着代码,喝着coffee,那样的生活也是优雅的,充实的,完美的。期待中......

   I am waitting and struggling......
  
  
  
 

 

你可能感兴趣的:(java,spring,linux,框架,J2SE)