Хотел написать полноценную статью, но из-за загруженности решил, что лучше уж напишу заметку, чем вообще ничего. Итак...
Если у вас стоит задача написания нового приложения с использованием базы данных Oracle, то естественно возникает и вопрос: на чем его писать и, соответственно, какую архитектуру приложения выбрать.
Конечно, для некоторых команд этот вопрос может быть заведомо решен - пишем на Java, .Net, Forms... и так далее. Список огромный - каждый выбирает по вкусу, или точнее то, чем владеет. Относительно с недавних пор всё больше разработок ведется на Apex. Отличный инструмент, но и не лишен некоторых недостатков. Ну и совсем свежачок - Flex. Вот на счет последних двух и хотелось написать. Собственно, заклинание из заголовка статьи немного созвучно набору технологий Apex, Flex, Ajax.
Для начала Apex. Инструмент простой, но очень эффективный. В принципе, позволяет создавать web приложения любой сложности. При этом избавляет от значительной части рутинной работы. Архитектура Apex приложений по сути проста – база данных сама генерирует html контент. Т.е. никаких специфических средних звеньев не требуется, если не брать в расчет web сервер (встроенный либо нет). И само приложение всё хранится в таблицах базы данных. А дальше идут недостатки, обусловленные как раз такой архитектурой. Неудобство разработки внутри html приложения, отсутствие нормальной версионности файлов, сложность вклиниться во внутренние механизмы рендеринга страниц – особенно критично в случаях, когда вы строите приложение сильно отличающееся от стандартных шаблонов. Опять же рендеринг создаёт дополнительную нагрузку на базу, хотя я и не сталкивался пока с серьезными проблемами по этой части, но тем не менее.
А теперь Flex. Очень богатые интерфейсные возможности при минимуме усилий. Можно создавать полноценные десктоп приложения. Разработка ведется вполне классическим способом, с поддержкой всевозможных сопутствующих систем версионности и т.д. Короче, конфетка! Но есть и «но». Flex общается с базами данных посредством web или http сервисов. Еще вроде Adobe предлагает Data Services, middle tire компонент для взаимодействия с базами данных, но я этим вопросом вплотную не занимался, потому как мне не интересен вариант использования дополнительного звена между приложением и базой, да ещё и java based.
Но во Flex очень просто реализуется взаимодействие приложения с javascript страницы, в которую он встроен. Причем это взаимодействие работает в обе стороны: javascript может вызывать методы flex приложения, и flex может вызвать любую внешнюю javascript функцию. Собственно в этом вся и соль – встроить Flex приложение внутрь Apex. Сам Apex при этом выполняет функции доставки данных, контроля доступа, управления сессиями, а Flex в свою очередь выполняет функции клиентского приложения.
То есть получается приложение, интерфейс которого полностью сделан во Flex. Такие вещи как авторизация, жизненный цикл сессий и транзакций управляется Apex. Вся логика обработки данных лежит в базе. Apex перестаёт создавать дополнительную нагрузку, поскольку он уже не рендерит страницы (Flex приложение грузится разом).
Чем не идеальная архитектура? И главное, ничего лишнего и всё бесплатно :)
Подумайте, может оно того стоит! Я кстати уже опробовал - мне понравилось.
23 нояб. 2008 г.
13 окт. 2008 г.
SQL Developer Data Modeling
Свершилось. Вышла первая Early Adopter версия SQL Developer Data Modeling - инструмента для проектирования er-диаграмм.
Качаем, устанавливаем, пробуем. Ну и пишем отзывы и впечатления.
Моё имхо - не очень. Оно конечно работает, и есть много всяких возможностей, но для меня с ходу показалась неудобной и тормозючей. Вобщем, это не моя мечта :)
Качаем, устанавливаем, пробуем. Ну и пишем отзывы и впечатления.
Моё имхо - не очень. Оно конечно работает, и есть много всяких возможностей, но для меня с ходу показалась неудобной и тормозючей. Вобщем, это не моя мечта :)
8 окт. 2008 г.
22 сент. 2008 г.
Новости и сплетни
Где-то далеко-далеко началась Oracle Open World 2008. Видимо из-за этого маститые блоггеры почти ничего не пишут уже больше месяца - готовились, видать. Чтож, будем ждать новостей с того берега океана.
А пока еще одна новость - металинк теперь по умолчанию имеет flex интерфейс. Меньше месяца назад я предполагал, что оракл торопится запустить новую версию как раз к открытию OOW 2008, и оказался прав :)
Ну а дальше сплетни из недостоверных источников. Apex 3.2, как известно, будет уметь мигрировать приложения oracle forms. Так вот эта самая миграция будет возможна двумя способами и оба будут весьма ограничены. Один будет генерить обычные апекс-веб-интерфейсы, а второй будет генерить флэш (возможно это будет флэкс?). Вот это для меня честно говоря удивило. Других изменений в этой версии не ожидается.
А вот версия apex 4 должна будет иметь гораздо больше новых вкусных функциональных возможностей. И выпуск этой версии предполагается до конца этого года! Я так думаю будет некоторая задержка, но видимо ждать осталось недолго.
Но повторюсь: последние 2 новости - это всего лишь сплетни, так что ни за что не ручаюсь.
А пока еще одна новость - металинк теперь по умолчанию имеет flex интерфейс. Меньше месяца назад я предполагал, что оракл торопится запустить новую версию как раз к открытию OOW 2008, и оказался прав :)
Ну а дальше сплетни из недостоверных источников. Apex 3.2, как известно, будет уметь мигрировать приложения oracle forms. Так вот эта самая миграция будет возможна двумя способами и оба будут весьма ограничены. Один будет генерить обычные апекс-веб-интерфейсы, а второй будет генерить флэш (возможно это будет флэкс?). Вот это для меня честно говоря удивило. Других изменений в этой версии не ожидается.
А вот версия apex 4 должна будет иметь гораздо больше новых вкусных функциональных возможностей. И выпуск этой версии предполагается до конца этого года! Я так думаю будет некоторая задержка, но видимо ждать осталось недолго.
Но повторюсь: последние 2 новости - это всего лишь сплетни, так что ни за что не ручаюсь.
18 сент. 2008 г.
Документация Apex
С сайта оракла пропала вся документация по Apex. Уж не знаю что они там делают, но вообще последнее время бесят страшно! Оракловые вебы - это какое-то сплошное недорозумение.
Для тех кому критично нужно глянуть что-то в доке и нет локальной копии (как у меня), нашел какое-то зеркало здесь.
Для тех кому критично нужно глянуть что-то в доке и нет локальной копии (как у меня), нашел какое-то зеркало здесь.
16 сент. 2008 г.
Apex. NTLM. XE.
.. и розачарованию моему не было предела!
NTLM аутентификация работать в XE не будет. Ровно как и в 11g с использованием Embedded HTTP Server (aka XMLDB).
Вот соответсвующая строчка в документации:
Unlike mod_plsql, the embedded gateway connects to the database as the special user ANONYMOUS, but accesses database objects with the user privileges assigned to the DAD. The database rejects access if the browser user attempts to connect explicitly with the HTTP Authorization header.
Для тех же, кто использует mod_plsql, инструкция по использованию NTLM лежит здесь
NTLM аутентификация работать в XE не будет. Ровно как и в 11g с использованием Embedded HTTP Server (aka XMLDB).
Вот соответсвующая строчка в документации:
Unlike mod_plsql, the embedded gateway connects to the database as the special user ANONYMOUS, but accesses database objects with the user privileges assigned to the DAD. The database rejects access if the browser user attempts to connect explicitly with the HTTP Authorization header.
Для тех же, кто использует mod_plsql, инструкция по использованию NTLM лежит здесь
15 сент. 2008 г.
Прощай убунту :(
Вобщем, как это ни прискорбно, на домашней станции ubuntu 8.04 была снесена, как опасная для жизни и здоровья. Вот точно говорят: "Лучшее - враг хорошего". Стояла себе 7.10, не кашляла. Всё стабильно работало. При переезде на новый винт решил поменять. Недели 2 наверное мы с ней сражались.. Итого, дома теперь стоят Windows xp :)
Вобщем, порекоммендовать 8.04 никому не могу. Какая-то она неправильная. Видимо, слишком много взяла от windows :D
Вобщем, порекоммендовать 8.04 никому не могу. Какая-то она неправильная. Видимо, слишком много взяла от windows :D
Подписаться на:
Сообщения (Atom)
