要学习的重要框架/工具

Heyja,

经常使用的答案“Java有什么特别之处?” 是“工具和框架”。 我猜这是对的。 当我看到所有工具和框架使您作为开发人员的生活变得更加轻松时,我感到震惊。

我的Java技能并不完美,但平均水平很高,我仍在努力。 我已经开始学习Ant了,我不想错过它。 这很棒。 和Hibernate一样。 现在我问自己接下来应该学什么。 我希望获得自己的经验,特别是我的简历。 不幸的是,有这么多。 每个人都在谈论它,如Spring,Struts,JavaServer Faces,Maven,……

在现实世界中广泛使用的是什么? Ant或Subversion / CVS之外的哪些工具很重要? 学习被接受为“真正的Java程序员”并获得有趣工作需要什么样的框架? 😉

如果我们谈论可销售性,那么理想情况下,您希望成为那种能够在生产应用程序的任何层面上高效工作的开发人员。 所以要了解每一层。

  • MVC: Struts,Spring MVC。
  • 数据访问: Hibernate,iBatis,JPA。
  • IOC: Spring(用于集成大型系统的huuuuge。如果可以,请学习Spring所基于的AOP原则)
  • App Server: Tomcat,JBoss。
  • 测试: JUnit
  • 演示文稿: JSF,JSP。

另外,不要忽视您需要知道的非Java技术:

  • SQL – 因为您需要直接与数据库通信
  • HTML
  • JQuery – 永远不要低估整洁的UIfunction的重要性。 对于大多数用户来说,这是他们理解的唯一部分。

如果我不得不从这个列表中选择一件事,我会选择Spring。 如果选择两个,我会选择Spring和JQuery。

如果您希望被视为专业的Java程序员,那么无法替代内部和外部了解标准Java类库。 我看过很多Java程序员的例子,甚至是经验丰富的程序员,他们从标准类库中重新实现了一些东西,因为他们不知道他们在那里。

JUnit是要学习的最重要的Java框架。 它不仅是用于unit testing的有用工具,它还教会您框架应该是什么:小而且专注于做好一件事。

Maven值得学习,但我建议Spring。 Spring将使您的编码生活更加简单。

Apache Commons项目提供了许多有用的工具,可以节省重新发明的轮子。

spring+1。

Struts 1.x不是最新的炒作,但可能值得知道,因为已经用它编写了大量的代码行。 如果您从事咨询业务,那么有一天你会遇到它。

此外,如果您正在提高Java技能,我肯定会推荐Joshua Bloch撰写的“Effective Java,2nd edition”一书。

两个建议,有点偏离主题:

  1. 除非你真的知道并记得使用它,否则永远不要在简历上放些东西。 我遇到了太多候选人,他们把COM放在他们的简历上,甚至不知道这个缩写代表什么或如何定义它。

  2. 恕我直言,快速找到答案,学习和理解的能力远远超过特定的知识。 今天它是Java和Spring,明天它是Ruby on Rails。 谁在乎。

Eclipse是必须的。 它不仅是一个很棒的IDE,而且与其他工具(SVN,Ant ……)完美集成。

我强烈推荐Find Bugs工具。 它是一个静态代码分析工具,可以报告代码中可能存在的错误。 Eclipse的插件非常棒,是我不使用其他IDE的主要原因之一。