2

我是一名全职 ruby​​ist,非常喜欢 rails、Sinatra 等。然而,目前我发现自己正在从事 Java/TomCat/JSP 项目。

我希望有人可以帮助我找到工具、文章、书籍和任何其他让我更舒服的资源?

我知道 Java 与 Ruby 非常不同,社区也非常不同。话虽如此,围绕 Java 的所有文档(我发现的)都是一团糟,在这个社区中发现非常困难。

我特别要找的东西:

  • 开发环境设置提示
  • 记录器、日志记录、彩色输出、最佳实践等
  • 图书馆资源和文档
  • 易于浏览的 Java SE 6 文档
  • 你发现的任何能让你的日常生活变得更好的东西

谢谢!

4

4 回答 4

2

如果您要加入一个现有的 Java 项目,那么您可能想看看已经在使用的工具,并让现有的开发人员/同事作为第一个停靠点让您快速了解它们。

话虽如此,这里是我的主要提示:

  • 熟悉主要的 Java IDE 之一。Eclipse(我个人的选择)、Netbeans 或 IntelliJ 一旦您了解它们,它们都是非常出色且非常强大的工具。重构/代码导航工具可能比您在 Ruby 世界中使用的任何工具都要好,它们会为您提供很多帮助。有了良好的 IDE 设置,Java 就不会那么痛苦了。
  • 学习 Maven - 这将需要一些时间投资,但它对于自动化您的依赖管理和构建过程非常强大。一旦你让它工作,你将节省大量的项目/构建管理时间。Maven 还通过各种公共 Maven 存储库提供对等价于 Ruby gem 的自动访问。

这里有一些特别有用的资源:

  • Java 教程- 很好地了解核心 Java 库。
  • Java 6 API - 作为核心 Java 中可用的所有类和功能的参考资源非常有用(其中很多也是通过 IDE 提供的)
  • JSP 文档- 用于 JSP/Java EE 方面
于 2012-08-03T18:31:51.433 回答
2

作为一个小注解,不要忘记学习 JSTL 和表达式语言。

于 2012-08-06T23:59:15.707 回答
1

首先,您在正确的道路上发现 Java EE 是多么的优雅。由于您讨论了各种主题,我将把我的答案分成不同的部分:

  • 开发环境:不用多说,我建议你直接去选择你的 eclipse Java EE Juno(最新版本)版本,但是如果你想看看其他 IDE,你可以查看 NetBeans 7.2(最新版本)或IntelliJIDEA 11.2 Ultimate(我知道并且拥有的最新版本)。基本上,Eclipse 拥有大量的插件和特性,并得到了一个非常伟大、庞大且充满激情的社区的支持。

[我个人尝试过 NetBeans 和 IntellijIDEA,但因为它的外观、功能、冷色主题等,我觉得 Eclipse 更舒服]

对于 JSP 和 HTML、CSS、JS 的东西,我推荐 Jetbrains Webstorm 的优秀 IDE,它具有 Zen 编码以及许多其他功能,例如快速自动完成和对许多框架的支持。

最后,选择 Sublime Text 2 作为文本编辑器进行快速编辑或仅检查源文件,它具有非常漂亮的布局并支持多种语言以及大量插件。

  • 资源和文件:

所有 Java API 规范都可以在 Oracle 网站上免费离线查看,并与那里提供的各种 SDK 打包在一起。

  • 易于浏览的文档:Eclipse IDE 可以很容易地将 JavaDoc 和 Source 附加到组成 JDK 的不同 jar 文件中,也就是说,一旦你设置了它,你的学习和编码经验将大大增加。所以当例如,您在 IDE 中键入 Connection,您可以简单地按住 Ctrl 命令然后右键单击它,类实现的源代码将在不同的选项卡中打开。是的,是的,这就是开源世界的力量 :)

  • 关于提示和技巧:我建议您使用 //TODO 注释,因为 Eclipse 支持它们,您可以在设置中设置自己的 TODO 注释,也可以使用 TASK 注释,您也可以使用 Mylyn 来管理您的错误、任务本地或通过连接器连接到您最喜欢的错误和问题跟踪器,因为许多连接器可用于此目的。向此列表添加配置书签的可能性,以帮助您在源文件满行时管理它们。

  • 关于 Tomcat:如果您的目标是制作不需要 Java EE 规范的高级特性的 Java EE 应用程序,那么您可以使用甜蜜的 Tomcat,它易于使用和配置,并且是一个众所周知的 Web 容器。

但是,如果情况并非如此,并且您想专注于 Java 并花费大量时间来尝试了解这个庞大规范的来龙去脉,那么您可能需要一个经过认证的支持所有 Java EE 组件的应用程序服务器。有很多可用的,但既然你征求意见,我在这里给出我的适度建议,我建议你选择 GlassFish Application Server,它是开源的,一旦你在 Eclipse IDE 上安装它,它将是与 Java EE 5 和 Java EE 6 API 文档捆绑在一起。这意味着没有时间浪费在浏览不同的工具和选项卡上,您将在 Eclipse IDE 中分组所有内容,以便您 100% 处理手头的任务。

ps:如果您还有任何问题,请随时联系我。

  • 任何好的提示或技巧:享受 Java 的乐趣,因为您每天都会学习新的东西 :)

ps:我没有提到任何框架,因为当您习惯 Java EE 时,您将能够选择适合您需求的框架。也忘了提到 JUnit(测试框架)和一个很棒的 eclipse 插件 EClemma 用于代码覆盖(比 Cobertura/eCobertura 好得多,并且更容易使用),当然你可以尝试 Maven 作为另一个帖子提到的,或者尝试 Apache Ant 作为构建工具。

于 2012-08-03T18:53:45.530 回答
0

如果您来自 Rails 背景,我会为最初的挫折做好准备。在 IDE 中设置项目可能会很耗时,而且通常使用 Tomcat 启动和运行基本的 Web+应用程序服务器比使用 Ruby 更痛苦。

对于 REPL,我会推荐Groovy(事实上它已经预装在 Intellij 上),但您也可以使用BeanShell。Grails 或 groovy on rails 可能是我们拥有的最接近类似 Rails 的环境的东西。

正如其他人所说,对于 Java,使用 IDE 确实是最好的。我喜欢 Intellij IDEA,但 eclipse 和 NetBeans 也不错。

对于构建和依赖管理,Maven 可能与我们必须的标准一样接近,尽管我听说过有关Gradle的好消息。

java中有太多的日志框架,使用你项目当前使用的任何东西,可能是log4j或SLF4J。了解如何全面更改日志级别,以及在包级别。

在图书馆方面,谷歌的Guava每天都让我的生活变得更好。关于 java 的最佳“技巧、窍门和一般最佳实践”一书是 Josh Bloch 的Effective Java。对于文档,Javadoc是权威来源。学习阅读和编写好的 javadocs。

对于测试驱动开发,jUnit 可能是使用最广泛的库,一个非常流行的库是mockito,它也恰好是我的最爱。

于 2012-08-03T19:06:18.100 回答