Где Oracle ADF 11g стоит среди фреймворков Java EE? - PullRequest
26 голосов
/ 20 августа 2010

Это вопрос из двух частей:

Я хотел бы знать, где Oracle ADF 11g выступает в качестве основы для разработки / развертывания Web / Java EE Applications по сравнению с другими платформами. Сколько стоит Oracle ADF в качестве основы для разработки веб-приложений. Я спрашиваю с точки зрения того, есть ли хорошие возможности для работы в качестве разработчика Oracle ADF и как будет выглядеть будущее для тех, кто обладает навыками Oracle ADF.

Кроме того, поскольку Oracle планирует использовать ADF в качестве основной технологии для приложений Fusion, самое время для развития навыков Oracle ADF в качестве разработчика siebel? Будущие приложения Oracle CRM, такие как ERP, будут основываться на ADF, если разработчики начнут развивать навыки ADF. Примерно когда клиенты начнут внедрять эти приложения на основе ADF. Будут ли они доступны в помещении или в основном по требованию SaaS-способом.

Ответы [ 7 ]

53 голосов
/ 01 февраля 2011

Мы выбрали Oracle ADF в нашей компании для одного из наших проектов.К сожалению, это оказалось большой ошибкой.Я лично использовал продукты Oracle, в частности их БД, но что касается промежуточного программного обеспечения Fusion, я бы посоветовал вам держаться подальше от него.ADF был худшим каркасом, который я когда-либо использовал как архитектор.Я заметил некоторые из его особенностей: очень сложный, Oracle просто «изобретает» или форсирует некоторые подходы к разработке, которые были проверены сообществом Java много лет назад.ADF очень медленный по сравнению с другими платформами.Под медлительностью я подразумеваю, что страницы ADF работают медленно.Причиной этого является чрезвычайно сложный сгенерированный html и javascript.Вы можете проверить это, открыв Firebug и проверив сгенерированный html ... он выглядит как-то из 90-х ... Ужасно.Не слишком излишне педантичный, но страницы ADF имеют огромное количество ошибок проверки, вызывающих проблемы при их запуске во всех браузерах.Архитектура ADF, на мой взгляд, грязная.Например, Struts2 представляет собой гораздо более чистую среду, которая позволяет очень легко интегрировать ее со сторонними библиотеками, такими как jQuery и т. Д. Oracle поддерживает ADF как инфраструктуру MVC, но, честно говоря, мне не удалось увидеть настоящую архитектуру MVC.ADF использует свои собственные библиотеки javascript, которые огромны, практически невозможны для изменения, неоптимизированы и медленны по сравнению с другими, такими как jQuery или Prototype.Новые тенденции в J2EE - это легкие подключаемые фреймворки, которые легко интегрируются с другими инструментами, такими как Spring для управления зависимостями, jQuery для сценариев, CC для непрерывной интеграции.ADF - это тяжеловесная, тесно интегрированная среда с другими инструментами ORacle, что делает его очень сложным в использовании любым другим способом, кроме разработанного Oracle.

Не говоря уже о средствах разработки, которые вы вынуждены использовать при разработкеADF - JDeveloper, который очень глючит и регулярно вылетает.Разработка в Eclipse проблематична, потому что в ADF есть множество «специфических» файлов, которые JDeveloper генерирует автоматически.

В общем ... ADF был для нас огромным разочарованием.Мы потратили месяцы на то, чтобы возиться с ним, когда, наконец, наш клиент решил, что приложение слишком медленное и им трудно его поддерживать, и полностью его отменило.

Исходя из моего опыта, я могу только сказать, что держаться подальше от него.Выберите одно из наиболее поддерживаемых и архитектурно чистых решений, таких как Struts2 или Spring.

7 голосов
/ 20 мая 2012

Я использовал JDeveloper 10 и 11, оба с ADF, в двух проектах ADF для крупных предприятий.Я согласен с тем, что ADF сложен, но не согласен с тем, что JDev часто дает сбой или что страницы отображаются медленно.

Теперь ... почему АПД?Прочитайте краткий обзор Oracle ниже, в котором говорится, что JDeveloper и ADF делают разработку Java EE более доступной для "бизнес" программистов.Хотя это не гарантирует элегантных программ, оно почти наверняка гарантирует, что , когда эти разработчики столкнутся с проблемами с ADF, они, вероятно, будут совершенно потеряны и не будут иметь никакого представления о том, как открыть капот и добраться внутрь.И наоборот, они будут потеряны даже раньше, пытаясь интегрировать текущую рогатую изобилование J2EE с открытым исходным кодом .


THE SERMON Источник: ADF Руководство разработчика (перефразировано)

«С первых дней Java в конце 1990-х корпоративная платформа Jave значительно выросла и сегодня используется большим сообществом разработчиков. Однако сообщество разработчиков не однородно и включает в себя разработчиков, которые не являются опытными программистами Java, но занимаются бизнесом.разработчики, обладающие ключевыми компетенциями в своих отраслях. По мере роста платформы и сообщества Java EE средний уровень квалификации программиста снижается .

Трудно представить, что есть один разработчик, который понимаетвсе аспекты платформы Java EE. Проблема, которую необходимо решить в Java EE, заключается в предоставлении технологии, которая позволяет разработчикам создавать передовые веб-приложения и приложения SOA без ограничения их гибкости.

Существующие платформы Java, такие как Struts, Весна, JSF,EJB, GWT и т. Д. - это одеяла, охватывающие сложные области, которые предоставляют более простые средства управления для работы.Используя фреймворки, разработчики больше не работают с API-интерфейсами ядра Java, а взаимодействуют с интерфейсами и сервисами, предоставляемыми фреймворком.

Бла, бла, бла ...

То, что кажется небольшой проблемой для опытных разработчиков Java, является еще одним препятствием для бизнес-разработчиков, которые являются новичками в разработке Java и EE.Разработчики этого типа могут обратиться к единой среде разработки, обещающей интеграцию всех аспектов разработки приложений в единый технологический выбор.Разработчики из рабочего стола 4GL могут быть увлечены PLSQL, .NET, Adobe Flash.

Опытный Java-разработчик может счесть это большой ошибкой, но как эти разработчики узнают, если Java не предоставит им единственное решение?Решение представляет собой комплексную среду, которая объединяет технологии и технологии, объединяя различные фреймворки и технологии в единый продукт, который предоставляет визуальные и декларативные жесты разработки в качестве доминирующей методологии программирования ... ADF. "

3 голосов
/ 18 сентября 2015

Краткий ответ:

  • Вы разрабатываете решение Enterpise, ваш поставщик продуктов - Oracle - ADF - лучший выбор
  • Вы инди-разработчик, ваше решение не для предприятий, вы не собираетесь использовать другие продукты в стеке Oracle - ADF не для вас, ищите другую платформу.

Длинный ответ:

Если вы идете на Enterprise, если вашим поставщиком стеков общего продукта является Oracle. Ваш лучший выбор - пойти вместе с АПД. ADF становится лучше с каждым основным выпуском. Я начал использовать ADF с 11.1.1.2, посмотрел на 10.x и теперь использую 12.1.3, при этом поддерживая приложения для крупных предприятий на 11.1.1.6.

Я вижу огромное улучшение, и действительно трудно найти другой продукт, обеспечивающий лучшую интеграцию и поддержку всего стека Oracle.

Однако, если вы хорошо знакомы с другими платформами или / и не собираетесь использовать другие продукты Oracle, и / или ваши клиенты не могут позволить себе платить довольно много за ADF / Weblogic / DB / ECM и т. Д. - ваши лучшие выбор состоит в том, чтобы избежать ADF. Это хорошо для крупных корпоративных решений.

Да, на самом деле на самом деле вы можете разрабатывать, используя бесплатную и ограниченную версию ADF - Essentials, использовать другой сервер приложений в качестве tomcat или glassfish, но с другой средой вам будет лучше. ADF Essentials - это только начало для крупного корпоративного мира, а не решение для небольших и легких приложений.

3 голосов
/ 25 июня 2013

Я работаю с ADF с прошлых 6 месяцев, и я понимаю, что ADF сделан особенно большим приложением с сильной интеграцией базы данных.Я не видел ни одного другого фреймворка, который мог бы предоставить вам такую ​​быструю и простую разработку приложений, насыщенных базами данных.

Да, я согласен, что в нем есть некоторые ошибки, но все же он работает хорошо, если вы знаете, как работать сэто.

3 голосов
/ 21 августа 2010

Мое восприятие и опыт работы с ADF заключается в том, что это очень прочная и надежная структура (к сожалению, инструменты разработки - нет.) Я не уверен, что существует большая конкуренция с ней, по крайней мере, не из одной структуры. Сам ADF на самом деле представляет собой несколько разных фреймворков, объединенных за эти годы в единый продукт. Теперь, когда Oracle владеет Java, я действительно ожидаю (надеюсь), что часть / большая часть ADF найдет свой путь в Java EE-собственно, поэтому мы можем увидеть альтернативные реализации и лучшие инструменты разработки. Если бы это произошло, это очень хорошо укрепило бы будущее ADF (пока Oracle не затянет сообщество Java и не подтолкнет их к альтернативным платформам виртуальных машин).

Если вы уже знакомы или хотите работать с продуктами Oracle (связанными), вам нужен ADF. Учитывая проникновение Oracle на рынок, вероятно, разумно предположить, что они останутся доминирующими, а ваши навыки останутся рыночными на долгие годы. Oracle тратит много денег и приобретает множество компаний, чтобы попытаться завладеть предприятием и удержать его.

На вопрос SaaS мне немного сложнее ответить. Хотя кажется, что он движется в этом направлении, мне не ясно, является ли это главным образом попыткой маркетинга дать ему такой толчок, или это обусловлено потребностями бизнеса. И есть много вопросов, которые я на самом деле не отслеживаю, например, доверие бизнеса к облачным ресурсам для критически важных данных и надежности.

2 голосов
/ 09 января 2013

Развитие АДФ - это боль в сердце. Для новичка кривая обучения слишком крута. Хотелось бы, чтобы это было больше похоже на изучение dot NET.

С моей точки зрения, на изучение и конструирование функциональности в dot NET уходит четверть времени, чтобы сделать то же самое в ADF. Конечно, по мере того, как человек учится вместе, дисбаланс уменьшается, но это в значительной степени сценарий для начинающих. Это расстраивает.

0 голосов
/ 21 марта 2018

Я работаю с ADF с последних 3 месяцев и могу сказать, что ADF действительно подходит для ситуаций, которые необходимы для обеспечения быстрого процесса разработки для крупных корпоративных приложений с сильной интеграцией баз данных.

Сравнение с другими фреймворками JavaEE, такими как Spring,

  • Это чрезвычайно сложно при исправлении ошибок из-за architechtur ADF и отсутствия сообщества разработчиков относительно Spring. Spring имеет большое сообщество разработчиков вокруг рамки.

  • Трудно реализовать архитектуру MVC с помощью интеграции компонентов ADF.

  • У разработчиков Spring гораздо больше репутации и спроса по сравнению с разработчиками ADF.

  • ADF очень медленный, тяжелый, тесно связанный по сравнению с Spring и интегрированной средой с инструментами Oracle.

Надеюсь, это поможет вам решить вашу проблему и получить знания. Удачного кодирования !!!

...