Pierwsze co zaskoczyło mnie na wejściu to nieobecność programistów z polskich partnerów Oracle - trochę to dziwne. Zjechali się natomiast ADF'owcy z całej Europy i to było super, ze względu na możliwość wymiany doświadczeń.
Ale do rzeczy. Szkolenie miało formę prezentacji tematycznych i dyskusji. Nie było hands-on lab'ów i dobrze, bo ilość materiału z jaką przyjechali prelegenci byłaby nie do przekazania w 5 dni. Omawiane zagadnienia nie dotyczyły problemów typu how-to. Advanced i complex to były słowa klucze do wszystkich omawianych problemów.
Tematy, o których poniżej, to subiektywny wycinek całości, zasługujący na szczególną uwagę. Aczkolwiek muszę podkreślić - nie było zagadnień niepotrzebnych czy o charakterze marketingowym - czyste techniczne tematy.
Budowanie zespołu Application Development Framework
Tutaj wszyscy mieli podobne doświadczenia i byli zgodni co do jednego. Jest problem z doświadczonymi programistami, którzy przychodzą ze świata Hibernate i Spring. Zamiast szukać rozwiązań w ramach frameworka implementują własne rozwiązania. Konkluzja na koniec była taka, że chyba lepiej brać niedoświadczonych ludzi do zespołu :). To co powinni umieć na początek to SQL (dobrze), Java (na poziomie podstawowym), podstawy JEE (oczywiście JSF obowiązkowo).ADF Architectural Patterns
Temat bardzo ważny z punktu widzenia architekta aplikacji. Chris omawiał różne podejścia do budowy struktury projektu, wszystkie za i przeciw. Część omawianych zagadnień można odsłuchać i obejrzeć na jego screancaście "Angels in the ADF Architecture".
Temat rzeka i naprawdę złożony. Widoczne na pierwszym obrazku lista rozwijalna i checkbox, w różnych kombinacjach całkowicie zmieniają mechanizm zarządzania transakcjami i połączeniami do bazy danych. Ja wreszcie dowiedziałem się co to jest Current Data Control Frame :). Zagadnienie z kategorii absolutely must know. Dokumentacja jak przyznał sam prowadzący jest niestety słaba jak herbata w akademiku. Na szczęście główne problemy opisał na "Oracle ADF Architecture Square".
ADF Region Interaction Functional Pattern
Contextual Events Introduction
Master- commander: reusable contextual event solution
Contextual Events: Callback pattern
Parent view initializing region navigation
To zagadnienie potraktowałem jako ciekawostkę. ADF Business Components mają możliwość wystawiania w postaci SDO Web Services. Podobno zostało to już dopracowane i nie ma błędów.
Więcej o ADF i WS można poczytać i posłuchać tutaj:
Oracle Magazine "Service Please" By Frank Nimphius
Oracle Magazine "Consume Early, Consume Often" By Frank Nimphius
Best Practices for Integrating SOAP and REST services into Oracle ADF
Temat kastomizacji aplikacji z wykorzystaniem Metadata Services (MDS) został potraktowany przez Franka bardzo obszernie i kompleksowo. Okazało się jednak, że w rzeczywistości nikt tego nie używa w praktyce poza WebCenter. Cóż, obawa o performace? Dodatkowe koszty projektu w stosunku do tego co się zyskuje? Ja osobiście widzę pewne istotne zastosowanie ale może o tym przy innej okazji.
Task Flow Data Control Scope Options and Task Flow Transaction Options
Temat rzeka i naprawdę złożony. Widoczne na pierwszym obrazku lista rozwijalna i checkbox, w różnych kombinacjach całkowicie zmieniają mechanizm zarządzania transakcjami i połączeniami do bazy danych. Ja wreszcie dowiedziałem się co to jest Current Data Control Frame :). Zagadnienie z kategorii absolutely must know. Dokumentacja jak przyznał sam prowadzący jest niestety słaba jak herbata w akademiku. Na szczęście główne problemy opisał na "Oracle ADF Architecture Square".
Task Flow Communication Patterns
Temat zaawansowany. Nie jest obowiązkowy ale warto i wypada znać. Jedyne czego zabrakło mi w zakresie to omówienie wzorca "Dynamic Tabs UI Shell Template Functional UI Pattern". Zainteresowanych odsyłam do artykułów Franka na OTN. Jest tam większość omawianych zagadnień.ADF Region Interaction Functional Pattern
Contextual Events Introduction
Master- commander: reusable contextual event solution
Contextual Events: Callback pattern
Parent view initializing region navigation
Service Integration Architectures and ADF Service Architectures
Jeden z najbardziej interesujących mnie tematów. Jak budować aplikację ADF opartą o usługi Web Services. Tak naprawdę ścierają się tutaj dwie koncepcje i możliwości. Można zawrapować proxy w komponenty biznesowe i pracować tak jakby pod spodem była baza danych. Można też wygenerować ADF Data Controls dla Java Beanów. Nie mam zdania co jest lepsze. W pierwszym wypadku zyskujemy łatwość tworzenia GUI. Należy jednak pamiętać, że BC to framework stworzony do komunikacji z bazą danych z nie bezstanowymi usługami. Trzeba dysponować zaawansowaną wiedzą, żeby dostosować działanie BC do Web Service'ów. Obszerna dyskusja nad właściwym podejściem toczyła się już zresztą wcześniej na ADF Enterprise Methodology Group (Best practices for ADF Frontend on top of OSB or SOA Suite). Konkluzja Franka była następująca: Oracle używa obu podejść. On osobiście preferuje podejście POJO Proxy, szczególnie, że można tam zapiąć Coherence.To zagadnienie potraktowałem jako ciekawostkę. ADF Business Components mają możliwość wystawiania w postaci SDO Web Services. Podobno zostało to już dopracowane i nie ma błędów.
Więcej o ADF i WS można poczytać i posłuchać tutaj:
Oracle Magazine "Service Please" By Frank Nimphius
Oracle Magazine "Consume Early, Consume Often" By Frank Nimphius
Best Practices for Integrating SOAP and REST services into Oracle ADF
Application Customization and MDS
Temat kastomizacji aplikacji z wykorzystaniem Metadata Services (MDS) został potraktowany przez Franka bardzo obszernie i kompleksowo. Okazało się jednak, że w rzeczywistości nikt tego nie używa w praktyce poza WebCenter. Cóż, obawa o performace? Dodatkowe koszty projektu w stosunku do tego co się zyskuje? Ja osobiście widzę pewne istotne zastosowanie ale może o tym przy innej okazji.
Brak komentarzy:
Prześlij komentarz