答案:我个人觉得java/J2EE、.net、嵌入式开发是不错的三个方向。 如果非要在java和.net中选择的话,我个人是推荐java的,原因: 1:Java能够开发linux、unix服务器上的程序 2:JavaEE和.NET在企业应用方面的关注点是差不多的,但是学习了java如果将来想转到.net上会比较简单,几天的学习然后上手开发应该是问题不大的,但是反之就不行了。 当然如果有了些经验之后,你就会发现语言或者平台不再是技术上的阻碍,一些原理性的东西学到手,然后再加上项目经验,使用什么平台,反而不是最重要的。不过如果非要用一种平台进入企业开发的领域,至少在目前,我推荐java。要想学好JAVA 也不难 关键是要坚持 多看看视频 多编写代码我给你推荐个网站上面有很多经典的java学习视频和资料 而且上面有一整套尚学堂视频 http://www.ibeifeng.com/?u=6695 http://www.chubeibao.com/bbs/index.php?fromuid=2961 http://bbs.langsin.com/index.php?fromuid=29811Java社区的同志们应该会有不少人对我比较熟悉,我自己也是Java社区的架构与模式版版主,在工作了一段时间,对Java有了比较深入的运用后说说自己的感觉。
我自己的职业也许要给一些人骂,我坦诚说我是做对日外包的,做这个工作不是说我对日本有多么的好感,只不过现在工作难找,而且我们也属于出口日本,也不是从日本进口,所以心里觉得也不算过分。我们公司有两个外包部门,我所在的部门主要做得是J2EE架构的B/S或者B2C开发,另外一个外包部门做.NET的比较多。
在技术上,我的感觉是两者互有千秋,.NET在Anders的带领下发展很快,我也是Anders的一个粉丝,成为他那样的高手是我梦寐以求的愿望(我也知道是不可能的)。但Java领域中牛人也是倍出。现在在Java和.NET最大的区别也许就是一个可以跨各种操作系统平台,一个只能在各种MS的平台上互相移植。微软肯定有能力跨各种操作平台,只不过是为了他的WINDOWS着想,所以不愿意也不敢跨这些平台就是了,他可不希望自己把Linux给带来一片繁荣。Java的运行速度上面,可以说在Windows平台的桌面软件上速度无法和.NET比,在JDK1.4中的SWING的速度我是领教够了,SWT稍微好一点,不过跟用MS的C#作出来的C/S软件的客户端比,还是差了不少,这点我们要实事求是。不过只要脱离了客户端,在做Web Service上,Java的优异性能表现就比较明显了,ASP.NET我没有用过不清楚,不过我觉得应该也很好。
在开发周期上,肯定是.NET要优于Java,MS的工具一向就是把人培养为傻瓜的那种类型,在Visual Studio中拖拖,很快一个画面就Coding完毕了,如果习惯于这样开发模式的程序员去写J2EE的程序,就会感到极大的痛苦,在Java开发中,个人开发水平还是非常需要的(不否认,程序员中复制代码再进行修改的也不是少数)。不过,傻瓜型快速开发也不是什么坏事,可以缩短开发周期,老板会比较开心,但是对程序员自身的发展来看,是很不利的。很有可能你做了几年程序员,还处于拖放空间的那种层次。但Java的这种开发方式造成了对开发人员要求比较高,对于刚入行的开发人员来说,很容易就极大打击开发人员的自信心和积极性,带来不好的一面。
下面说到大家最关心的就业和工资问题。在中国,目前来说就业似乎还是Java形式稍好一些,毕竟已经占据了大量的市场,很难撼动其已有的地位。.NET也处于上升趋势,可能还是因为Java对开发人员的要求比较高,所以广大公司总是苦于不能找到自己需要数量以及开发能力的开发人员,所以Java的招聘总是很红火。.NET由于开发简单,这个也带来了双刃剑,一方面大家可以迅速上手,这是好事,另一方面,由于对工具产生了极强的依赖性,导致自身提高缓慢,大家都是那个水平,反正老板看业务也能做起来,就不会那么积极得去市场招人了,反正很快就能把一个人培养为熟练工,这个是带来的坏处。在工资薪水方面,中国目前Java和.NET还是做外包的比较多,无论是国内的外包还是海外的外包,目前有80%左右的分量都是涉及这两项技术的。但区别还是有的,Java的外包主要是运行在Linux/UNIX/Solaris上或者暂时不确定在什么平台运行,先开发了再说,而.NET上的外包肯定是在Windows上运行的。而一般银行,电信,邮政,大型企业ERP系统一般都在Linux/UNIX/Solaris服务器上跑,这个是不可否认的事实,所以Java的外包主要是这些类型的东西,小弟外包项目做了4个,两个银行系统,一个电信系统,一个超大型ERP系统。而.NET一般是中小企业MIS,中小ERP,一般的Web Site之类的系统开发。一般情况下银行,电信,邮政,大型企业ERP系统总的投入成本都是很高的,那些企业既然投了那么多的成本,最在乎的是你项目质量的好坏,而成本的具体成本数额,只要不是很离谱,他们还都是比较大方的,这也直接影响到了程序员,因为项目的报酬比较高,自然程序员的薪水也比较高一点,做J2EE外包一年以上程序员的薪水普遍在4K到6K左右,至少我们公司是这样,而我们公司在做J2EE外包里面薪水也是普通水平,那些经验丰富的Java开发人员,一个月拿到1W以上每个公司也是肯定有的。而中小企业MIS,中小ERP,一般的Web Site之类的系统则对开发成本非常关注,也相对比较抠门一点,所以自然轮到程序员头上薪水也偏低,具体多少大家自己心里也有数。就拿我们公司的两个外包部门来说吧。同样的工作年龄,我们做J2EE外包的普遍工资要超过非J2EE外包的1000块以上,当然,做.NET的也有钱很多的,不过在这个市场大环境下,究竟什么样大家心里也有数。
我来这里不是跟大家说什么Java好,.NET不好,其实我自己也买了本C#高级编程,也许我不去做C#的开发,不过我也学学里面比较好的编程思想,提高提高自己,我也认为.NET里面有很多值得我们学习的东西,毕竟微软的实力还是非常强大的。
最近在这里看到某些朋友说Sun公司要不行了,Java也要完蛋了的论调,我只觉得好笑,Java并不是SUN公司的Java,而是有一大堆企业在后面推动Java的前进,比如IBM,Oracle,Bea等等。SUN公司是不是不行了首先也只是道听途说,其实Sun只不过是几个员工跳槽而已,也不至于到不行的地步,其次SUN公司现在对Java的影响能力也有限,Java发展的路线都在JCP手上。在这里我只是想纠正下部分人的观点.
C#和java的这些问题,要看它们的应用领域了,在高端服务器的web开发java好点,同时在开源世界如linux,unix等也都是java多(目前能用在linux下的C#还没有吧)。所以说java就是高端服务器比较流行。同时在外金融界,保险界等安全性要求很高的领域也是java的多。
C#而就是Windows平台了,同时也是低端快速开发的,如易做图的门户网站啊,企业的首页啊等等,一些办公系统啊什么的,因为C#开发快,这也是和Windows的简单使用有关的。C#各种技术MS都为我们准备好了,一拉就能用,不同java,你要用MVC,还得配置一下stuct,其他的也一样。
同时C#在Windows平台的桌面应用也比较多,因为它开发出来的界面比较细腻,好看,控件多,如VCL一样的多,所以桌面应用如数据库管理系统什么的开发起来就快多了。
如果java用好了,会比C#的工资高多了,因为你如果用好java,就相当于你能进行高端的服务开发,那你的工资自然而然地高了。这不用怀疑。
关于网络开发啊,这要看是什么了,java的网络支持也很强,Web方面也不错。唯一不好就是开发时要配置的东西太多了,一般的java开发人员是做不来的。
C#也有很好的网络支持,同时很多东西都是由VS帮你完成,不用配置很多。此外,上面说了。C#在桌面应用很好,所以如果是像QQ这样的桌面网络应用,就很好了
上一个:IAVA 和Java 比那个好啊 有什么区别吗??
下一个:java22选5,随机数有答案,需要解释。