0

我的公司即将开始为我们的一种新产品构建后端。我们的想法是构建一个层,为每个上层产品(网站、移动网站、移动应用程序)生成资源,此外,其中很大一部分将作为 API 提供给第三方开发人员。你知道,典型的启动场景。

我们计划使用 Java Servlet 技术构建我们的后端,因此我们的架构将依赖于 Java,所以问题是:Oracle 吓跑了开源意识的开发人员和像我这样的公司有什么影响?

我应该尝试寻找 Java 的替代品吗?您是否正在尝试远离 Java?

这个问题不是关于 Java 平台的技术问题,而是关于 Oracle 严厉意图的法律含义(我的主观观点)。

编辑:当然这个问题是主观的和有争议的,这就是我想要的答案:意见和意见是主观的和有争议的。

4

5 回答 5

2

我怀疑 Java 将在很长一段时间内保持强大的后端平台。甲骨文,除其他外,不想杀死金鹅。另外,基于Java的优秀后端组件太多了,从Tomcat到消息传递,到hibernate和spring,再到groovy和grails;市场不会让它们在很长一段时间内消失。

从技术上讲,Java 非常适合复杂的后端和大规模的问题;如果您正在构建一些简单而轻量级的东西,那么使用像 Rails 这样的框架以及开源数据库通常就足够了。

Groovy 和 grails 是从 Rails 的轻量级方法到完整的 Java 世界的一个很好的桥梁,尽管 groovy 有时可能有点,嗯,特别。

于 2010-10-18T03:01:55.263 回答
2

我们计划使用 Java Servlet 技术构建我们的后端,因此我们的架构将依赖于 Java,所以问题是: 甲骨文吓跑开源开发人员和像我这样的公司意味着什么?

他们是吗?上次我检查 JBoss 时,Spring 变得越来越强大。Scala 被认为是替代 Java 的有力替代品(或者它将塑造 JVM 上应用程序/系统开发的下一个最佳语言。)

你在这里具体指的是什么?我不跟。现在,如果您要与 Oracle 及其堆栈(以及他们所有的集成解决方案,如 Oracle Financials)直接竞争,那么您可能需要担心一些事情。

或者,如果您正在(或打算)做一些违反(或可以在法庭上被解释为违反)Java 许可协议的事情,那么您可能不得不担心 Oracle(因为它有能力追求它们, Sun确实有。)

因此,您需要更加务实和客观,并清楚地定义您的产品在 Oracle 产品中的确切角色。基于此,您必须决定投资 JVM 是否是一个好的决定。

我应该尝试寻找 Java 的替代品吗?

取决于您要达到的目标。像这样的问题过于宽泛和开放,无法以有意义的方式回答。

您是否正在尝试远离 Java?

从好奇心和使我的技能多样化的角度来看,是的。但如果我负责开发后端产品,我会使用 JVM。我可能会尝试使用 Java 并利用该平台上 15 年的集体知识。或者我会尝试 Scala。但我会坚持使用 JVM。

Oracle 或没有 Oracle,对于这些类型的事情,JVM 在稳定性、可扩展性和丰富的知识方面是最佳选择。从技术角度来看,Erlang VM 可能会更好,但与为 JVM 构建类似的团队相比,建立一个有才华的团队会很困难。

于 2010-10-18T03:06:31.610 回答
1

发现一篇讨论Java 未来的文章,日期为 05.03.10。

好的,来自同一链接的结论,

虽然企业界的喧嚣和交易很少影响整个开发人员社区,但甲骨文收购 Sun 将在未来几年产生深远的影响。虽然单个 Oracle 产品的盈利能力可能与您无关,但作为开发人员,最有趣的点仍然是:

- Combination of HotSpot and JRockit into an uber-JVM
- Unification of the Java SE and Java ME APIs
- Increased investment in JavaFX onto more platforms
- Continued integration of dynamic languages into the JVM.
于 2010-10-18T03:04:32.370 回答
1

我会推荐 Java 作为后端平台,我目前在一家专门为公司提供软件业务解决方案的公司工作,我们几乎所有的工作都是围绕在后端使用 Java 展开的。

我不确定您的后端是否将是网络驱动的。我想说看看使用带有 Hibernate 数据库支持的 Spring Framework。Spring 对使用 Hibernate 和许多其他工具有很好的支持,这就是我支持它的原因。与其他一些限制您只能使用某些工具的框架不同,Spring 在允许您将许多不同的库、工具和框架与其集成方面做得很好。这很好,因为我们非常清楚,技术总是在变化,现在流行的东西,将来可能需要改变。

与 Rails 等轻量级方法相反,Java 作为后端解决方案一开始需要做更多的工作,但是一旦你完成了所有设置(数据库、构建文件等),那么它就可以开始了。

如果您最终选择了 Java 路线,请考虑使用 Maven 进行构建。Ant 也不错,只是需要多做一些设置工作。

于 2010-10-18T03:10:30.463 回答
0

...您是否排除了任何特定技术以及出于什么原因?.Net 是一种选择吗?

于 2010-10-18T03:08:22.363 回答