发帖    主题    评论    推荐    标签    作者    订阅    查搜    注册   登陆   关注
 
面向对象 设计模式 领域驱动设计 企业架构 框架 开发教程 微服务 大数据 扩展性 并发编程 事件驱动 分布式 SOA
1 2 下一页 Go 2

自学java的困惑

    
2007-09-08 18:47
赞助商链接

 最近学java 学的有点徬徨,做为一个在校学生,很难把java ee框架里的东西都学的很好,要么学的东西比较少,要么博而不纯,在学了六个月的时间里学了javase jsp/servlet struts hibernate mysql spring 后,准备学把原本没看完的ejb再看看,接着学oracle,weblogic,jboss……原本觉得 这样的路应该是正确的,可是看了几天的招聘信息,大多企业招javaee的都要二到五年的工作经验,不要工作经验的,看了看需要的是熟悉java 核心基础 最多多加一个jsp/servlet 我开始怀疑我学这么多的东西却连javase的东西都不敢说熟练是不是真的有必要? 转一贴,愿与我有同样困惑的人共勉。
以下为转贴:《我对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你完全可以直接说你没有用过。不是每个公司全部采用这些的,关键还是基础。基础好学什么也容易。所以为什么说面试最关键的是你现在会什么,而是你要让人知道你以后会什么。
第二、我觉得你应该考虑你是为什么学习软件的。我比较俗气,我是为了更好的待遇才学习软件的。我以前是VB程序员,为什么要学习JAVA,我就因为当时认为JAVA有钱途(本人绝对没有说VB没有钱途的意思,只要你厉害是一样的,我的意思是平行对比,一个不怎么厉害的JAVA程序员就可以拿到够高的工资,前几年确实是这样的)本人现在在一家民营企业上班,待遇是10K/月实在惭愧的是工作了这么多年外语还是很烂,如果外语很好,我估计工资提高一半应该是没有问题的。
和我同时来上海 同时进同一个公司的的同事现在一般是年薪200K,他们的优势在于外语。在上海一般工作3年的JAVA程序员的待遇应该在6K/月,5年以上应该年薪100K是没有问题的,这个待遇不是只外语很好的人,也不是指特别厉害的人我说的只是大众化 正常化的(外语可以是日语和英语不要说学日语是汉*,这只能说明你浅薄)如果你现在的待遇还达不到我说的,那么你应该把时间放到找工作的技巧上。而不是在这里讨论没有意义的技术,只有工资上去了其他的才会上去,一个程序员是很难接触到系统分析和架构的,而一个系统分析员和系统架构师工资也很低的公司明显不是你要呆的地方。
  我可以很明确的说,我说的工资待遇不是乱说的,本人找10K/月的工作只需要一个星期就能搞定,而3年前找6K/月的也是如此。我就是在51JOB投的简历。(我记得我找工作是星期五投的简历,到下星期三的时候面试已经排到下下星期五了,一天安排两份面试,所以说找个工作绝对不难),而且我的水平也不好,现在还在看THINK JAVA。(说出来有点不好意思)我身边的程序员也基本能拿到我上面说的水平,而且这个水平在上海是中等偏低的。如果你找不到,那么就是你能力和找工作技巧有问题。
  第三、当你基础也很好,待遇也满意的时候,那么你就要考虑你自己的职业前景了,所以什么技术好,什么技术差对你不重要了。技术只是一部分,还有很多其他的东西也很重要。
  我现在研究SOA方面的东西,JAVA方面我可能更看重EJB一点,我用过SPRING一年多点,觉得也不错。不过我可能想进大的公司,所以更看重EJB一些。一般大公司面试不太会问SPRING,可是问EJB的可能性很大的。特别是事务处理方面的东西。
  我强烈建议做为一个程序员,无乱花多大的代价也应该把你的外语搞上去,我指的是可以直接和国外客户进行交流,如果你现在在做日本项目那么就把日语搞上去,如果你现在不是做日本项目,那么我觉得你应该直接把英语搞上去。外语好待遇高是一回事情,同样职业前景也会更好。以后做欧美的项目会越来越多的。我希望所有做JAVA的人都能找到一份好的工作,也希望你们的技术水平越来越高。
  本人只是谈谈自己的看法,如果你觉得和你的看法不同,就当作没有看过,不要口吐脏话。我的观点只代表我自己,没有要强加给其他人的意思。我们很多在上海程序员应该是从外地过来的,生活压力很大,我只是希望大家能生活得更好,活得更开心。

2007-09-09 11:10

你应该把时间放在基础与思想上,有了好的基础说明你的硬功夫不错,学习其它的东东就不成问题了.有了好的思想(包阔oo思想,design pattern,DDD,哲学等)说明你的大局关不错,就可以在全局上考虑问题了.还是把有限的时间放在有创造力的地方吧,比较好,反正我是这么学的,你什么都学的话,你的精力也不够.不能把精力集中!只是我的个人关点啊!
ps:java我也是在大四学的!

2007-09-09 17:03

程序不是学出来的,是写出来的.理解OO、设计、分层的重要性也不是看书就能理解的,有条件的话去找一个结构糟糕的应用,例如使用Struts,大部分Action的代码超过了一页的时候。你会发现维护它还不如自己重写一个,那时候你就会明白OO、设计、分层的重要性。

2007-09-09 18:17

先感谢楼上两位。
本来还准备把没看了一半的 精通ejb3.0 看完,现在我决定先放一放,因为我觉得可能真的当我还没有经验的时候,公司应该不会让我去做一个ejb开发的
决定把以前学的东西整理一下,并看点设计模式之类的,然后就去找单位先实习了,呵,希望能找的到。

2007-09-09 18:23

个人认为,计算机基础和思想最重要。计算机基础指的是数据机构、算法;而思想就是设计模式得思想。lz不要看到现在流行什么学什么,切忌浮躁。如果对Java感兴趣,J2SE的基础和API必须很熟练。至于现在流行的框架,如何用并不难,关键是理解其核心思想(为什么和怎么实现)。

2Go 1 2 下一页

赞助商链接

赞助商链接

返回顶部

移动版 关于本站 使用帮助 联系管理员 最佳分辨率1366x768
OpenSource JIVEJDON Powered by JdonFramework Code © 2002-20 jdon.com