什么时候使用 ADF 有意义?

When does it make sense to use ADF?

我在一家公司以 SOA 方式使用完整的 Oracle 堆栈重写现有应用程序。

一切都很好等等,直到我们开始讨论 UI。我们想知道使用什么作为 Web 框架来进行 Web 应用程序。

首先,我们是喜欢 NodeJS 和 Ember.js 等框架的开发人员,我们今天在 Ruby 上开发(直到迁移应用程序)Rails (因此与 Mac 一起工作)。另一方面,Oracle 正在提供显然很好地集成在 Oracle 堆栈等中的 ADF。但是当我们将 ADF 与我们今天的工作方式(Ruby on Rails)或我们未来的工作方式(例如 Ember.js)进行比较时,它看起来发展较少,多点点击,框架重

我希望我的 post 是可以理解的。

我在生产环境中使用过 java 框架,例如 Struts、Struts2、JBoss Seam、Tapestry、Spring、Hibernate 和我'我在 6 年前搬到了 ADF,因此我无法评论 ADF 与 NodeJS 或 Ember.js.

的比较

What are the advantages of ADF ?

ADF在Jdeveloper中有强大的开发工具支持。如果您的团队在 Java 方面的技术不是很强,它可能是适合您的工具。

What are the right domains where ADF make sense ?

提供类似桌面体验的 Web 应用程序:这意味着复杂的输入表单、复杂的查询 - 包含大量数据和业务规则的屏幕。到目前为止,这是我在构建此类 Web 应用程序时使用过的最高效的框架。

How popular is ADF ? (Especially in the enterprise context)

ADF 目前是一个利基市场。虽然它得到了 Oracle 的大力支持。大多数 Oracle 产品 - 例如Fusion Apps - 基于 ADF,因此 ADF 将继续存在。

How hard is the learning of ADF for someone developing today with Ruby On Rails (IDE is Sublime Text, so all is about writing code -- mouse not needed) while for ADF JDeveloper seems mandatory (seems a large use of the mouse and less writing code ?)

一开始,看起来你在相对较短的时间内取得了不错的进步。然后,您会意识到,即使 Jdeveloper 为您做了 'everything',您也需要理解 JDeveloper 生成的每一段代码。 ADF 有一个陡峭的学习曲线(尽管您可能会发现其他人告诉您并非如此),它需要一种不同的 Web 应用程序开发思维方式,这对于以前具有 Web 经验的开发人员来说尤其困难:ADF 使用的是 STATEFUL 业务层。因此,除非您之前一直在使用有状态会话 Bean,否则很有可能搞砸您的第一个 ADF 设计——这就是我作为 ADF 顾问一直看到的情况。但是一旦你学会了它,在生产力方面是非常棒的。

从创新的角度来看,ADF 听起来就像在 Beats 耳机中听 Vanilla Ice:它基于 XML,它使用 JSF,没有迹象表明对 ADF Faces 有依赖注入。仍然是Ajax为主。