我在一家公司以SOA方式使用完整的Oracle堆栈重写现有应用程序。
一切都很好等等,直到我们开始讨论用户界面。我们想知道如何将Web框架用作Web应用程序。
第一方面,我们是喜欢NodeJS和Ember.js等框架的开发人员,我们今天在Ruby on Rails中开发(直到应用程序迁移)(因此使用Mac)。另一方面,Oracle提供的ADF显然很好地集成在Oracle堆栈中等等。但是当我们将ADF与我们今天工作的方式(Ruby on Rails)或我们未来的工作方式(例如Ember.js)进行比较时,它看起来像开发更少,更多点和点击,具有繁重的框架。
我希望我的帖子可以理解。
答案 0 :(得分:3)
我已经在生产java框架中使用过Struts,Struts2,JBoss Seam,Tapestry,Spring,Hibernate以及我6年前搬到ADF,因此我无法评论ADF的方式与NodeJS或Ember.js进行比较。
ADF的优点是什么?
ADF在Jdeveloper中拥有强大的开发工具支持。如果您的团队在技术上不是非常强大的Java,它可能是适合您的工具。
ADF有意义的正确域名是什么?
提供类似桌面体验的Web应用程序:这意味着复杂的输入表单,复杂的查询 - 具有大量数据和业务规则的屏幕。到目前为止,我在构建这些Web应用程序时使用的最高效的框架。
ADF有多受欢迎? (特别是在企业环境中)
ADF目前是一个利基市场。虽然它得到了Oracle的大力支持。大多数Oracle的产品 - 例如Fusion Apps - 基于ADF,因此ADF将继续存在。
对于今天使用Ruby开发的人来说,学习ADF有多难 在Rails上(IDE是Sublime Text,所以所有都是关于编写代码 - 鼠标 不需要)虽然对于ADF JDeveloper似乎是强制性的(似乎很大 使用鼠标而不是编写代码?)
一开始,看起来你在相对较短的时间内取得了良好的进展。然后,你会意识到即使Jdeveloper确实做了所有的事情。对你而言,你需要了解JDeveloper生成的每一段代码。 ADF有一个陡峭的学习曲线(尽管你可能会发现其他人告诉你),它需要一种不同的思考Web应用程序开发的方式,对于具有以前Web体验的开发人员来说尤其困难:ADF使用的是STATEFUL业务层。因此,除非您之前使用过有状态会话Bean,否则很有可能搞乱您的第一个ADF设计 - 这就是我作为ADF顾问所看到的。但是一旦你学会了它,生产力就会很棒。
从创新的角度来看,ADF听起来像是在Beats耳机中收听Vanilla Ice:它基于XML,它使用JSF,没有依赖注入ADF Faces的迹象。仍然是基于Ajax的。