做软件开发大概有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的人都能找到一份好的工作,也希望你们的技术水平越来越高。
本人只是谈谈自己的看法,如果你觉得和你的看法不同,就当作没有看过,不要口吐脏话。我的观点只代表我自己,没有要强加给其他人的意思。我们很多在上海程序员应该是从外地过来的,生活压力很大,我只是希望大家能生活得更好,活得更开心。
分享到:
相关推荐
【JAVA学习从150道经典例题突破】是一份专为初学者设计的JAVA编程学习资源,旨在通过丰富的实例帮助新手快速掌握JAVA语言的核心概念和技术。这份资料可能包含了150个精心挑选的JAVA编程题目,覆盖了基础到进阶的不同...
Java是一种广泛使用的面向对象的编程语言,以其跨平台、健壮性和安全性著称。对于初学者来说,理解Java的基础知识是十分重要的。本课件"Java入门学习PPT课件"旨在为初学者提供一个简单易懂的学习路径,帮助他们快速...
卡雷尔机器人学JAVA(中文), KareltheRobotLearnsJava 斯坦福公开课《编程方法学》教材 有趣且容易理解的入门级教程。
《21天学通Java(庞永庆)》是一本为初学者精心设计的Java编程教程,由知名Java教育专家庞永庆编写。这本书旨在帮助读者在21天内掌握Java编程的基础知识,建立起坚实的技术基础。随书光盘包含了与书中教学内容紧密相关...
循序渐进学.java.从入门到精通完整版PPT完整版笔记代码》是一套全面深入学习Java编程语言的资源集合。它包含由知名IT教育专家韩顺平精心编写的PPT教程以及配套的完整版笔记和代码,旨在帮助初学者和有一定基础的...
Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能和丰富的类库而闻名。"Java超强学习笔记"显然是一份全面且深入的Java学习资料,由一位极具洞察力和组织能力的作者精心编纂。这份笔记可能包含了从基础...
这是一本以面试题为入口讲解 Java 核心内容的技术书籍,书中内容极力的向你证实代码是对数学逻辑的具体实现。当你仔细阅读书籍时,会发现Java中有大量的数学知识,包括:扰动函数、负载因子、拉链寻址、开放寻址、...
Java编程语言是全球范围内广泛应用的开发语言之一,尤其在企业级应用、云计算、大数据和移动应用等领域占有重要地位。对于初学者来说,掌握Java的基本概念和技术是至关重要的。本资源集合提供了一份完整的“Java学习...
Java2Pas是一个实用工具,主要用于将Java编程语言编写的源代码转换为Pascal语言的等效代码。这个工具对于那些需要在两种语言之间迁移代码或者理解不同编程语言语法的开发者来说非常有价值。Java和Pascal虽然都是面向...
【Java菜鸟进阶宝典】是一份专为Java初学者准备的综合学习资源,涵盖了从基础知识到高级技术的广泛内容,旨在帮助新手快速提升技能,成为熟练的Java开发者。这份资料包包含了多个主题,覆盖了Java开发的核心领域,如...
【JAVA实习报告】\n\n实习是每个计算机科学专业学生踏入职场的重要步骤,尤其是在Java软件开发领域。通过实习,学生可以将理论知识付诸实践,加深理解并积累宝贵经验。本报告将围绕Java实习的目的、实习过程以及实习...
Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行...
《Head First Java》是一本非常受欢迎的Java编程学习书籍,其中文高清版为中国的Java初学者提供了方便的学习资源。这本书以其独特的教学方式,通过丰富的图像、幽默的插图和互动性的设计,帮助读者以轻松有趣的方式...
Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行...
每个Java源文件都代表一个独立的知识点或应用场景,通过这些实例,你可以逐步深入理解Java编程,并提升实际编程能力。这个资源集合是学习和巩固Java技能的理想工具,鼓励你在实践中不断探索和学习。
"java结业项目.rar"很可能是一个学生结业作品,通常这类项目会涵盖课程所学的主要知识点,比如MVC架构、数据库操作、Servlet和JSP技术等。通过研究这个项目,你可以了解如何将理论知识转化为实际应用,并且能够看到...
标题《ElasticSearch Java API 中文文档》表明本篇文档的主要内容是关于ElasticSearch的Java API的中文使用说明和相关知识点介绍。ElasticSearch是一个基于Lucene构建的开源搜索引擎,它提供了一个分布式、多用户...
【Java实现课程表】是一个基于Java编程语言设计的特定于某个学校的教务系统课程表程序。这个程序的主要目的是为了展示如何使用Java技术来构建一个能够显示、管理个人课程的工具。由于不同学校的教务系统差异,这个...
这意味着Java在编译时需要确定变量类型,而JavaScript在运行时才确定。 - JavaScript主要用作浏览器中的脚本语言,而Java可以用于服务器端开发、桌面应用、移动应用等多个平台。 - Java有严谨的类结构和强制的封装...
【Java程序员转正知识点】 1. **自我介绍**: 在转正答辩中,自我介绍是展示个人背景和技能的关键环节。作为一名Java程序员,应当包括自己的教育背景、编程经验、项目经历以及对Java语言的理解。 2. **技术成长**...