【转】ITPUB关于java web方面的议论

【转】ITPUB关于java web方面的讨论

就Java语言本身而言,Java最擅长的领域是在Web开发方面。理由有几点:

1)开发框架众多。比如:Tapestry、Struts、ICEfaces、RichFaces、Wicket、FreeMarker……试问,有哪种语言能有Java领域那么多的框架?

2)框架分工细致。比如:持久层框架EclipseLink、Hibernate、MyBatis等;日志框架Log4j、SLF4J、LogBack等;表现层框架Tapestry、Struts、ICEfaces等。

3)技术资料、文档众多,社区庞大。Java是目前世界上第一大编程语言,对于一个开发者而言,通常遇到的问题都能通过书籍、文章、社区得到解决。

Java的优点也间接造成了它的一部分缺点。

1)存在技术选型的难题。

因为开发框架众多,架构师、项目经理在拿到需求文档后,会反复比较相近的几种框架,结合团队的技术积累,选择适合的框架作为解决方案。没有哪种框架可以适用于所有需求,即使是Spring,也有其局限性。

2)程序员需要掌握的知识太多,技术更新太快,苦不堪言。

框架自身发展、演进很快,而且各版本之间不一定兼容。比如Struts 1和Struts 2就完全不兼容,Struts 2基于WebWork重新开发,推翻了原有的Struts 1的构架,以至于不兼容。加入你是Struts 1程序员,恰好遇到那些对框架有要求的客户,你就不得不学习Struts 2。

3)成为JavaEE高手付出的代价远大于其它语言。

假如你是Ruby语言开发者,你想从事Web开发,那么你只需学习Rails框架即可。但是对于Java开发者,就远不是那么回事了。你需要学习多个框架,才能构成一个完整的解决方案。比如SSH——Spring、Struts、Hibernate。

 

同意楼上所说的java web程序员苦不堪言,开发框架众多。但是众多的框架中几乎都是用java编写的,都遵循javaee规范。大一点的公司都有自己编写的框架和平台,与其去掌握什么ssh框架还不如去理解这些框架的实现原理,技术总有过时的一天,人的思维确实累积的。掌握的其中的精髓和原理,以不变应百变,这样不就轻松很多了。
javaee高手很少,是因为领导只注重结果,程序员没法专心的研究某种技术,只有浅入的了解,大多时候都是ctrl+c ctrl+v。
java web程序员苦不堪言,技术更新速度太快,程序员年龄越来越大,精力也越来越有限,但是领导不管。为了生存,不得不花费很多的时间去学习。

 

jdk更新速度太快,框架太多,不过大部分时候用的技术还是比较固定,框架毕竟是框架,大部分时候会用即可,而且框架的核心内容在网上基本都能搜到,还是关注基础和性能比较好。

 

还是多深入点jvm和java系统的调优或设计模式比较好,java web开发没有啥,一般找新人搞就可以了,我们需要的就是公司需要建立一套适合自己的快速开发框架,因为很多公司都有具体的业务,在自己的方面很有经验,完全可以定制web前端框架,自己的ssh框架等,一系列自己的utility工具,这样,很多工作就可以一般人都能做了,而我们要培养的就是业务人才和设计人才。

 总结一句话,苦逼的java web 程序员们