`
yiheng
  • 浏览: 155724 次
社区版块
存档分类

告诉你怎样学Java才是硬道理

    博客分类:
  • Java
阅读更多

    做软件开发大概有6年多了,从事JAVA开发大概4年多,现在在网上总是看到大家在讨论什么架构比什么架构好,什么技术比什么技术强.对这个我想谈谈我的几点看法.

 

第一、我觉得谈架构是需要有资格的。

            如果你THINK JAVA或 JAVA 核心技术这两本书还有很多你不能理解 那么你最好先把其中的一本看个滚瓜烂熟,再去看其他技术。你SERVLET用得很熟练了么?如果没有,那么 strust你应该先停下来。如果JDBC还不熟,(我的意思是至少你要知道它是怎样工作,总样能提高对数据库操作的效率,不是只会调简单的调一ST对 象,写一句简单的SQL)就没有必要去讨论Hibernate之类。当然你可能在工作时候正好用到我说的Hibernate,strust。不过你还是不 应该把时间放到这个上面,因为工作中用到它们的地方不是很多。还是应该先把基础打好。Hibernate,strust这样的东西能给你工作带来很大的方 便,但是你去学习它的应该是他的原理和为什么要这么做,而不是简单的学习怎么用。我以前是SERVLETS程序员,三年前第一次拿到STRUST我好象马 上就会用。那些标签库我估计我也能写出来 只不过可能考虑不到那么全。
  
            如果你是刚开始找工作的,我觉得你只需要简单的会一点 STRUSTS就可以,把主要精力放到JAVA基础,JSP,SERVLET上 然后JDBC看点,没有公司会对一个新人有太高要求,因为它不会给你很高 工资的。不同工资的人做不同事情的。如果公司要采用什么架构也不需要你来做的,有更高工资和更多经验的人会来做这个事情的。你要做的事情不会很多,而且只 要你态度好,即使有什么不会也有人会教你的。而面试的时候问得多的也是JAVA基础 JSP SERVLET这些东西,其他的象 SPRING,Hibernate你完全可以直接说你没有用过。不是每个公司全部采用这些的,关键还是基础。基础好学什么也容易。所以为什么说面试最关键 的是你现在会什么 而是你要让人知道你以后会什么。


  第二、我觉得你应该考虑你是为什么学习软件的。

            我比较俗气,我是为了更好的待遇才学习软 件的。为什么要学习JAVA,我就因为当时认为JAVA有钱途(本人绝对没有说VB没有钱途的意思,只要你厉害是一样的,我的意思是平行对比,一个不怎么 厉害的JAVA程序员就可以拿到够高的工资,前几年确实是这样的)如果外语很好,在上海一般工作3年的JAVA程序员的待遇应该在6K/月,5年以上应该 年薪100K是没有问题的,这个待遇不是只外语很好的人,也不是指特别厉害的人我说的只是大众化 正常化的(外语可以是日语和英语不要说学日语是 汉****,这只能说明你浅薄)如果你现在的待遇还达不到我说的,那么你应该把时间放到找工作的技巧上。而不是在这里讨论没有意义的技术,只有工资上去了 其他的才会上去,一个程序员是很难接触到系统分析和架构的,而一个系统分析员和系统架构师工资也很低的公司明显不是你要呆的地方。
  
我 可以很明确的说,我说的工资待遇不是乱说的,3年前找6K/月的也是如此。(我记得我找工作是星期五投的简历,到下星期三的时候面试已经排到下下星期五 了,一天安排两份面试,所以说找个工作绝对不难)而且我的水平也不好,现在还在看THINK JAVA。(说出来有点不好意思)我身边的程序员也基本能拿 到我上面说的水平,而且这个水平在上海是中等偏低的。如果你找不到,那么就是你能力和找工作技巧有问题 。
  
  第三、当你基础也很好,待遇也满意的时候,那么你就要考虑你自己的职业前景了,所以什么技术好,什么技术差对你不重要了。技术只是一部分,还有很多其他的东西也很重要。
  我现在研究SOA方面的东西,JAVA方面我可能更看重EJB一点,我用过SPRING一年多点,觉得也不错。不过我可能想进大的公司,所以更看重EJB一些。一般大公司面试不太会问SPRING,可是问EJB的可能性很大的。特别是事务处理方面的东西。
   我强烈建议做为一个程序员,无乱花多大的代价也应该把你的外语搞上去,我指的是可以直接和国外客户进行交流,如果你现在在做日本项目那么就把日语搞上 去,如果你现在不是做日本项目,那么我觉得你应该直接把英语搞上去。外语好待遇高是一回事情,同样职业前景也会更好。以后做欧美的项目会越来越多的。我希 望所有做JAVA的人都能找到一份好的工作,也希望你们的技术水平越来越高。
  本人只是谈谈自己的看法,如果你觉得和你的看法不同,就当作没有看过,不要口吐脏话。我的观点只代表我自己,没有要强加给其他人的意思。我们很多在上海程序员应该是从外地过来的,生活压力很大,我只是希望大家能生活得更好,活得更开心。

93
94
分享到:
评论
32 楼 zouruixin 2012-07-30  
反正我面试过的大公司基本都在问spring

个人认为不仅仅谈架构需要资格,教别人如何学习也是需要资格的
这样会误导很多新手
31 楼 fireflyc 2012-07-29  
我基本赞同作者三条建议。我试着总结了一下
1. 基础是最重要的。
2. 兴趣和爱好是你的动力。
3. 不断的研究某一种技术。
但是我对细节不敢苟同,我认为基础不应该只是只java语言或者开发环境、工具本身而应该是各种“计算机科学的潜规则”即——理论基础课。

我很赞同要以某一项技术为“点”每隔一段时间深入“玩”一项技术,我是说深入;但是我觉得这些技术也不应该是“工具”层面,还应该更加深入,比如研究分布式系统架构比hadoop、SOA“视界”要宽的多(我没说什么web,什么数据库,分布式系统的研究应该是通讯、协议、算法诸如此类)。我觉得一个架构师技术视界的宽度和深度是非常重要的。
30 楼 cs6641468 2012-07-29  
LZ那么多年的工作了,不应该还拘泥于框架的层次..JAVA不是J2EE;J2EE不是SSH,更不是EJB;EJB也不是大公司用的东西..所谓会SSH或EJB,已经成了低薪的代名词。程序员,要的是学习和解决问题的能力。
29 楼 悲剧了 2012-07-29  
别告诉了,每个人都有自己的路,改成自己的感悟估计更理性点
28 楼 miroku 2012-07-29  
yoyo837 写道
uddjatigmh199 写道
rainsilence 写道
哎。。EJB大公司也不用。。问题是你6年了,还在考虑这个层面的东西。。哎。。。

EJB3.0之后一些大公司用的比较多了.像TB,IBM等.....

2.0的确太胖了...

TB是淘宝?没听说淘宝用EJB。。。2 3都没用,淘宝用的整整还是spring。。IBM的EJB也是遗留项目而已
27 楼 lw900925 2012-07-29  
3年6K都太少了,我觉得3年如果你进步的快一些,至少在8K-9K这个范围!当然还要看你做什么!
26 楼 fwb7014 2012-07-29  
  大力支持楼主,尽管有些观点我们会有不同,我很赞赏拿出自己的经历和实际感想来分享的朋友。所以支持你,其实你们的这些分享,对于还没有毕业,或者有想从事你们所做的事情的方向的朋友都是非常好的参考和借鉴的地方。赞!
25 楼 lianglove_0 2012-07-29  
丢人啊 三年6k
24 楼 李史斌 2012-07-29  
我认为写的不错。。
23 楼 huchiwei 2012-07-29  
Thinking In Java 在大学3年级的时候买了,那时候看了大半,后来实在看不下去就一直搁着了。看了这篇文章,突然又把它找出来了,至于有没有时间看,就看我自己了。
22 楼 雷神F1 2012-07-29  
我要是在上学时,还可以学一下基础,在开发开发小东西来实现实现。
但是现在工作很忙啊,没时间学习基础,主要实现不了,就记不住啊,一会就忘!
我觉的先开看框架及源码较好
21 楼 yoyo837 2012-07-29  
uddjatigmh199 写道
rainsilence 写道
哎。。EJB大公司也不用。。问题是你6年了,还在考虑这个层面的东西。。哎。。。

EJB3.0之后一些大公司用的比较多了.像TB,IBM等.....

2.0的确太胖了...
20 楼 cetusz 2012-07-29  
基础和外语都一样很重要!
19 楼 hhhhh 2012-07-29  
rainsilence 写道
哎。。EJB大公司也不用。。问题是你6年了,还在考虑这个层面的东西。。哎。。。

你还活在2.0年代。。。。。
18 楼 dongwujing 2012-07-29  
错别字太多了!
17 楼 lhehuang 2012-07-29  
这是篇老文,转载的吧?
16 楼 uddjatigmh199 2012-07-29  
rainsilence 写道
哎。。EJB大公司也不用。。问题是你6年了,还在考虑这个层面的东西。。哎。。。

EJB3.0之后一些大公司用的比较多了.像TB,IBM等.....
15 楼 tianxiaozz 2012-07-29  
只赞成一点 基础很重要 其他的楼主好像对自己很没信心 表现的很浮躁
14 楼 sqtds 2012-07-29  
rainsilence 写道
哎。。EJB大公司也不用。。问题是你6年了,还在考虑这个层面的东西。。哎。。。

是啊,感觉楼主的层次还没上去。
13 楼 comeonbabye 2012-07-29  
只同意一个观点,打好基础。

相关推荐

    Java学习(apk)

    Java学习是Android客户端目前最全面的免费离线Java学习书籍,主要内容包括: 1、Java的数据类型,控制语句,数组,封装、继承、多态,接口等基础知识 2、Java算法练习及时巩固学习成果 3、Java文件操作、多线程、...

    JAVA学习从150道经典例题突破

    【JAVA学习从150道经典例题突破】是一份专为初学者设计的JAVA编程学习资源,旨在通过丰富的实例帮助新手快速掌握JAVA语言的核心概念和技术。这份资料可能包含了150个精心挑选的JAVA编程题目,覆盖了基础到进阶的不同...

    Java入门学习PPT课件

    Java是一种广泛使用的面向对象的编程语言,以其跨平台、健壮性和安全性著称。对于初学者来说,理解Java的基础知识是十分重要的。本课件"Java入门学习PPT课件"旨在为初学者提供一个简单易懂的学习路径,帮助他们快速...

    卡雷尔机器人学Java

    卡雷尔机器人学JAVA(中文), KareltheRobotLearnsJava 斯坦福公开课《编程方法学》教材 有趣且容易理解的入门级教程。

    21天学通Java(庞永庆)随书光盘

    《21天学通Java(庞永庆)》是一本为初学者精心设计的Java编程教程,由知名Java教育专家庞永庆编写。这本书旨在帮助读者在21天内掌握Java编程的基础知识,建立起坚实的技术基础。随书光盘包含了与书中教学内容紧密相关...

    韩顺平.循序渐进学.java.从入门到精通完整版PPT完整版笔记代码

    循序渐进学.java.从入门到精通完整版PPT完整版笔记代码》是一套全面深入学习Java编程语言的资源集合。它包含由知名IT教育专家韩顺平精心编写的PPT教程以及配套的完整版笔记和代码,旨在帮助初学者和有一定基础的...

    JAVA_API1.6文档(中文)

    java.lang.management 提供管理接口,用于监视和管理 Java 虚拟机以及 Java 虚拟机在其上运行的操作系统。 java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类...

    java超强学习笔记

    Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能和丰富的类库而闻名。"Java超强学习笔记"显然是一份全面且深入的Java学习资料,由一位极具洞察力和组织能力的作者精心编纂。这份笔记可能包含了从基础...

    Java 面经手册·小傅哥.pdf

    这是一本以面试题为入口讲解 Java 核心内容的技术书籍,书中内容极力的向你证实代码是对数学逻辑的具体实现。当你仔细阅读书籍时,会发现Java中有大量的数学知识,包括:扰动函数、负载因子、拉链寻址、开放寻址、...

    java学习PDF下载地址全 百度云盘下载

    Java编程语言是全球范围内广泛应用的开发语言之一,尤其在企业级应用、云计算、大数据和移动应用等领域占有重要地位。对于初学者来说,掌握Java的基本概念和技术是至关重要的。本资源集合提供了一份完整的“Java学习...

    Java2Pas Java代码转pas代码

    Java2Pas是一个实用工具,主要用于将Java编程语言编写的源代码转换为Pascal语言的等效代码。这个工具对于那些需要在两种语言之间迁移代码或者理解不同编程语言语法的开发者来说非常有价值。Java和Pascal虽然都是面向...

    Java基础教程完整版

    Java基础教程完整版 Java基础教程完整版是JAVE_LOVER作者提供的一系列Java教程,总共包含18个章节,涵盖了JavaSE基本知识点、UML建模、单元测试等内容。下面是对每个章节的详细介绍: Java学习系列(一):Java的...

    Java菜鸟进阶宝典

    【Java菜鸟进阶宝典】是一份专为Java初学者准备的综合学习资源,涵盖了从基础知识到高级技术的广泛内容,旨在帮助新手快速提升技能,成为熟练的Java开发者。这份资料包包含了多个主题,覆盖了Java开发的核心领域,如...

    JAVA实习报告 java

    【JAVA实习报告】\n\n实习是每个计算机科学专业学生踏入职场的重要步骤,尤其是在Java软件开发领域。通过实习,学生可以将理论知识付诸实践,加深理解并积累宝贵经验。本报告将围绕Java实习的目的、实习过程以及实习...

    java源码包3

    Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行...

    30天学通Java Web项目案例开发源码

    总之,《30天学通Java Web项目案例开发源码》是一份宝贵的教育资源,通过实践这些案例,你可以深入理解Java Web开发的核心概念和技术,并逐渐成长为一名熟练的Java Web开发者。在学习过程中,不断练习、调试和改进...

    Head First Java 中文高清版pdf

    《Head First Java》是一本非常受欢迎的Java编程学习书籍,其中文高清版为中国的Java初学者提供了方便的学习资源。这本书以其独特的教学方式,通过丰富的图像、幽默的插图和互动性的设计,帮助读者以轻松有趣的方式...

    java源码包2

    Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行...

    java编程百例(内含java源文件)

    每个Java源文件都代表一个独立的知识点或应用场景,通过这些实例,你可以逐步深入理解Java编程,并提升实际编程能力。这个资源集合是学习和巩固Java技能的理想工具,鼓励你在实践中不断探索和学习。

    java集成webkit浏览器

    Java集成WebKit浏览器是一种技术实践,它允许Java应用程序利用WebKit渲染引擎来展示网页内容。WebKit是一个开源的Web浏览器引擎,被广泛应用于Safari、Chrome等知名浏览器。在Java中集成WebKit,开发者可以创建具有...

Global site tag (gtag.js) - Google Analytics