Web frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida



Podobne dokumenty
Web frameworks do budowy aplikacji zgodnych z J2EE

1 Wprowadzenie do J2EE

Web frameworks do budowy aplikacji zgodnych z J2EE

Warstwa prezentacji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

SZKOLENIE TWORZENIE SYSTEMÓW

Zagadnienia projektowania aplikacji J2EE

Szkolenie wycofane z oferty

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Spring Framework - wprowadzenie i zagadnienia zaawansowane

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)

Wzorce architektoniczne

Założenia projektowe dla zapytania ofertowego EAK_ZA_01/2015

Przegląd d innych rozwiąza. zań szkieletowych dla J2EE

INŻYNIERIA OPROGRAMOWANIA

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

Specyfikacja implementacyjna aplikacji serwerowej

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy

SOP System Obsługi Parkingów

SPRING FRAMEWORK. dr inż. Jakub Chłapioski

Załącznik 2 utworzenie projektu

Inżynieria oprogramowania - opis przedmiotu

Zapytanie ofertowe

EJB 3.0 (Enterprise JavaBeans 3.0)

Aplikacje WWW Wprowadzenie

Programowanie w Javie 2. Płock, 26 luty 2014 r.

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Integracja wirtualnego laboratorium z platformą e-learningową

MIGRACJA SYSTEMÓW INFORMATYCZNYCH DO TECHNOLOGII JAVA

Opis realizacji dla czterech zespołów (4 przypadki użycia)

Dokument Detaliczny Projektu

INŻYNIERIA OPROGRAMOWANIA

Zapytanie ofertowe nr 9/POIG 8.2/11/10

Architektura nowoczesnych aplikacji internetowych

Programowanie Komponentowe WebAPI

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.

Wskazówki projektowe. Programowanie Obiektowe Mateusz Cicheński

Techniki efektywnego testowania kodu dla programistów Java (Spock

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Projektowanie oprogramowania. Termin zajęć: poniedziałek, a podstawie materiału ze strony.

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Porównanie technologii tworzenia aplikacji internetowych JEE na przykładzie JavaServer Faces i Spring Boot

Generated by Foxit PDF Creator Foxit Software For evaluation only. System Szablonów

Porównanie wybranych bibliotek do tworzenia graficznego interfejsu internetowych aplikacji JEE

Przesłanki powstania książki... xvi Dla kogo przeznaczona jest ta książka?... xvi Co znajdziemy wewnątrz książki?... xvii

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Spring framework. Paweł Kędziora. Marek Lewandowski

Wykład 1 Inżynieria Oprogramowania

Praca Dyplomowa Magisterska

Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia

Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer

Wprowadzenie do programowania aplikacji mobilnych

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki Promotor dr inż. Paweł Figat

Programowanie obiektowe

JBoss: MetaMatrix, Mobicents, Seam, Rools, ESB

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: Aukcjomat

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

PROJEKT Z BAZ DANYCH

Ruby i Ruby on Rails. Mateusz Drożdżyński

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

Platforma Eclipse: Pluginy, RCP oraz GEF

JBoss Seam: framework nowej generacji. Copyright Piotr Kochański & Erudis,

PROJEKTOWANIE APLIKACJI INTERNETOWYCH

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

Forum Client - Spring in Swing

Łukasz Tomczyk*, Beata Pańczyk. Politechnika Lubelska, Instytut Informatyki, Nadbystrzycka 36B, Lublin, Polska. Łukasz Tomczyk*, Beata Pańczyk

Dokument Detaliczny Projektu

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

The current software tools for the JEE platform

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Audyt oprogramowania systemu B2B oprogramowanie umożliwiające zarządzanie informacjami o produktach:

Tester oprogramowania 2014/15 Tematy prac dyplomowych

Testowanie oprogramowania

WYKORZYSTANIE I ROZWÓJ WOLNEGO OPROGRAMOWANIA W WOJEWÓDZKIM WĘŹLE INFRASTRUKTURY INFORMACJI PRZESTRZENNEJ

Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Java Enterprise Edition spotkanie nr 1. Sprawy organizacyjne, wprowadzenie

System Obsługi Wniosków

PRZEWODNIK PO PRZEDMIOCIE

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i

Wprowadzenie. Narzędzia i środowiska programistyczne. Laboratorium 1. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2

Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia)

1 90 min. Aplikacje WWW Harmonogram spotkań, semestr zimowy (studia stacjonarne)

Specyfikacja implementacyjna aplikacji mobilnej

Budowanie aplikacji biznesowych przy użyciu. Presentation Foundation i wzorca MVVM

Poznań Java User Group Java Server Faces. Wprowadzenie (Fakty i Mity)

PROJEKTOWANIE APLIKACJI INTERNETOWYCH

Korporacyjna Magistrala Usług na przykładzie Oracle Service Bus

Tworzenie komponentów logiki biznesowej i warstwy dostępu do danych w oparciu o EJB3.0/JPA lub EJB 3.1/JPA2

Wybrane działy Informatyki Stosowanej


Podrozdziały te powinny zawierać informacje istotne z punktu widzenia przyjętego celu pracy

Programowanie sieciowe Network programming PRZEWODNIK PO PRZEDMIOCIE

WYKŁAD 1 ANGULARJS CZĘŚĆ 1

Architektura bezpiecznych aplikacji internetowych na platformie Java Enterprise Edition. Jakub Grabowski Warszawa,

Transkrypt:

Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida

Cel pracy Analiza wybranych ram projektowych dostępnych dla platformy Java Warunki selekcji napisany z wykorzystaniem języka Java oraz platformy J2EE otwarty kod źródłowy licencja zaaprobowana przez organizację Open Source Initiative

Sposób realizacji Budowa aplikacji wspomagającej pracę przychodni weterynaryjnej (Petclinic) Celem aplikacji jest sprawdzenie badanych bibliotek w praktycznym użyciu Aplikacja nie jest nastawiona na funkcjonalność lecz na pokazanie możliwości badanych bibliotek

Analiza Podczas analizy zostaną uwzględnione kwestie związane z teoretycznymi zasadami działania biblioteki badaniem gotowej aplikacji

Porównanie - część teoretyczna Zakres części teoretycznej porównania architektura model programistyczny cykl życia żądania/zdarzenia nawigacja walidacja i konwersja typów internacjonalizacja łatwość testowania rozszerzalność

Porównanie część praktyczna Zakres części praktycznej porównania wydajność metryki kodu kodu języka Java kodu szablonów wsparcie społeczności dojrzałość dostępność (ang. accessibility) łatwość wprowadzania zmian (ang. changeability)

Standardy Charakterystykę wymagań niefunkcjonalnych obejmuje norma ISO 9126 Dostępność definiowana jest przez standard WAI (Web Accessibility Initiative)

Mnogość możliwości Obecnie istnieje ponad 40 różnych szkieletów programistycznych przeznaczonych do budowy aplikacji internetowych Najpopularniejsze Struts JavaServer Faces Spring Web MVC WebWork Tapestry Struts2 (WebWork + Struts)

Klasyfikacja Ze względu na implementowany model Model 1 Model 2 Model komponentowy Ze względu na zakres działania specjalizowane kompleksowe (ang. full-stack)

Model 1 (rys)

Model 2 (rys)

Zadania szkieletów programistycznych Mapowanie nadchodzących żądań do kontrolerów Nawigacja Dostęp do warstwy modelu, walidacja Integracja z językiem znaczników Internacjonalizacja i lokalizacja Obsługa alternatywnych technologii widoku Zmiana motywów graficznych

Analizowane biblioteki Tworzona praca dotyczy dwóch bibliotek Spring Web MVC JavaServer Faces Uzasadnienie realizacja odmiennych modeli popularność

Podział aplikacji na moduły

Elementy dodatkowe Rozwiązania alternatywne Wzorce projektowe Środowisko pracy

Rozwiązania alternatywne Aplety Java Web Start RIA (Rich Internet Application) Adobe Flex Laszlo Echo

Wzorce projektowe warstwy prezentacji Front Controller View Helper Model-View-Controler (MVC)

Front Controller Cel centralne zarządzania widokami w pojedynczym obiekcie przyjmującym żądania klientów Motywacja ułatwienie wyboru widoku dla żądania, autoryzacja poprawa zarządzania i separacji ról Zastosowanie aplikacja posiadająca skomplikowaną nawigację aplikacje wymagające zastosowania polityki bezpieczeństwa

Front Controller (rys)

View Helper Cel oddzielenie widoku od logiki związanej z jego przetwarzaniem Motywacja podział zespołu projektowego separacja ról (brak logiki w kodzie widoku) Zastosowanie aplikacje zawierające skomplikowaną logiką związaną z prezentacją

View Helper (rys)

Model-View-Controller Cel definicja podstawowych, niezależnych od siebie części aplikacji Motywacja rozdzielenie ról podział zespołu projektowego Zastosowanie duże, skomplikowane aplikacje cechujące się elastycznością

Model-View-Controller (rys)

Środowisko pracy (1) Narzędzia wytwarzania Subversion Maven system wersjonowania wspomaganie w zarządzaniu projektem Hibernate Spring Eclipse translator obiektowo-relacyjny szkielet programistyczny warstwy środkowej zintegrowane śrdowisko programistyczne

Środowisko pracy (2) Narzędzia testujące Spring Mock (baza danych) transakcyjne testowanie warstwy DAO EasyMock JUnit 4 wspracie dla obiektów pozornych testy jednostkowe Selenium testy akceptacyjne, działające na poziomie przeglądarki