MVC (Model-view-controller) jest tzw. wzorcem projektowym, stosowanym przy

Wielkość: px
Rozpocząć pokaz od strony:

Download "MVC (Model-view-controller) jest tzw. wzorcem projektowym, stosowanym przy"

Transkrypt

1 Wprowadzenie do MVC Co to jest MVC? MVC (Model-view-controller) jest tzw. wzorcem projektowym, stosowanym przy tworzeniu nowoczesnych systemów informatycznych. Główną koncepcją MVC jest wymuszenie podziału aplikacji na 3 niezaleŝne warstwy reprezentujące kolejno: (Model) Model danych - opis struktur danych i powiązań pomiędzy nimi (View) Interfejs, czyli to co widzi uŝytkownik (Controller) Logika działania - powiązania między zdarzeniami zachodzącymi w systemie Podział na warstwy słuŝy uporządkowaniu architektury systemu. Dzięki temu, Ŝe kaŝda logiczna część jest od siebie oddzielona, zmiana w jednym miejscu, nie powoduje konieczności wykonywania lawinowej ilości zmian w innych miejscach systemu. Mimo, Ŝe istnieje wiele frameworków wspierających MVC w innych technologiach, J2EE wiedzie zdecydowany prym jeŝeli chodzi o ilość sprawdzonych narzędzi zapewniających implementację oprogramowania zgodnego z wzorcem MVC. Do najbardziej popularnych naleŝą: JSF, Spring oraz Struts. Rys historyczny MVC nie jest pomysłem nowym. Wymyślony został w laboratoriach PARC (Palo Alto Research Centre) firmy Xerox (tych samych, którym zawdzięczamy m. in. myszki i systemy okienkowe) juŝ w latach siedemdziesiątych. Wtedy oczywiście nikt nawet nie myślał o wykorzystaniu wzorca do aplikacji internetowych. MVC został wykorzystany do zaprojektowania interfejsu uŝytkownika w języku Smalltalk, stworzonym zresztą równieŝ przez PARC. To, co nas jednak interesuje, to zastosowanie MVC w aplikacjach internetowych. Tego kroku dokonał Sun na potrzeby Javy. Java pełni tutaj rolę szczególną równieŝ dlatego, Ŝe najbardziej znana implementacja MVC powstała właśnie dla Javy. Tym projektem jest Struts, stworzony przez Apache Jakarta Project. Struts nie jest jedyną słuszną implementacją MVC, ale na pewno najbardziej popularną i w pewnym sensie referencyjną.

2 W rozwaŝaniach nad MVC przewijają się równieŝ pojęcia Model 1 i Model 2. Pochodzą one ze specyfikacji JSP i J2EE. Model 1 był podejściem, w którym logika biznesowa była umieszczona w modelu, ale widok rozrzucony był po poszczególnych stronach, bez centralnego kontrolera. Model 2 natomiast jest w zasadzie tym samym co MVC, dlatego w kontekście aplikacji internetowych te dwa pojęcia mogą być uŝywane zamiennie. Elementy MVC Skoro wiemy juŝ, czym jest MVC i dlaczego stosowany jest do tworzenia aplikacji internetowych, przyjrzyjmy się bliŝej poszczególnym jego składnikom. Model Model jest częścią MVC, odpowiedzialną za tzw. logikę biznesową. Termin logika biznesowa odnosi się do funkcjonalności związanej ze sposobem, w jaki aplikacja przechowuje dane. Model powinien być jedyną częścią aplikacji, która przechowuje dane w sposób trwały. Sposób przechowywania tych danych jest tutaj zupełnie obojętny - moŝe to być baza danych, pliki tekstowe, Web Services, itd. WaŜne jest, aby szczegóły implementacyjne związane ze sposobem, w jaki Twój model przechowuje dane, były ukryte przed resztą aplikacji. Model powinien dostarczać innym komponentom spójnego interfejsu do przetwarzania tych danych i ukrywać implementację - np. zapytania SQL. Dobrym sposobem implementacji modelu jest utworzenie oddzielnej klasy dla kaŝdego logicznego obiektu. Typowe przykłady to: UŜytkownicy Artykuły Koszyk (w sklepie internetowym) Taka klasa moŝe wykorzystywać wzorzec Singleton i powinna zawierać metody pozwalające na wykonywanie wszystkich operacji na związanych z nią danych, wymaganych przez resztę aplikacji. Najczęściej model będzie przechowywał informacje w bazie danych. W takim przypadku przewaŝnie jedna klasa modelu odpowiada jednej tabeli w bazie danych, lub grupie ściśle powiązanych tabel. W przypadku konieczności zmiany jednej z tabeli, zmiany w kodzie PHP lub Java ograniczają się do modelu, a nawet do jednej klasy modelu. Dobrze zaprojektowany model powinien być odporny na takie wewnętrzne zmiany, tzn. zmiany w strukturze bazy danych nie powinny wpływać na interfejs, z którego korzystają pozostałe części aplikacji. Dobrze zaprojektowany model powinien równieŝ być przenośny. JeŜeli mamy zaimplementowane klasy modelu słuŝące do obsługi uŝytkowników (logowanie, administracja, itd.), moŝemy łatwo przenieść ten kod do innej aplikacji, która równieŝ wymaga takiej funkcjonalności. I to nawet nie metodą "kopiuj - wklej", tylko przenosząc bez zmian gotowe klasy.

3 Widok Widok jest częścią aplikacji odpowiedzialną za wyświetlanie danych uŝytkownikom. Innymi słowy, widok odpowiada za prezentację. W przypadku aplikacji internetowych, najczęściej uŝywanym formatem wyjściowym jest oczywiście HTML, ale widok nie musi ograniczać się tylko do niego. Równie dobrze aplikacja moŝe prezentować wyniki w postaci XML, WML, obrazków, plików PDF i w wielu innych formatach. MoŜna na przykład wykorzystać język PHP, który ma bogate moŝliwości w tym zakresie: szablony, XSLT, biblioteki do generacji obrazków, PDF lub Flasha; moŝna wykorzystać strony pisane w JSP. Widok powinien wykorzystywać model do pobrania danych, które będą wyświetlone. Typowo, widok powinien utworzyć instancje klas modelu i wywołać metody odpowiedzialne za pobranie odpowiednich danych. Tym, czego naleŝy się wystrzegać w widoku, jest modyfikacja danych. Widok nie powinien zmieniać w Ŝaden sposób stanu aplikacji. Powinien np. wyświetlać listę uŝytkowników, ale nie powinien ich dodawać ani usuwać. Widok jest prawdopodobnie łatwy do zrozumienia dla osób uŝywających szablonów. W obu przypadkach celem jest oddzielenie logiki prezentacyjnej od logiki biznesowej. NaleŜy jednak pamiętać, Ŝe widok nie jest szablonem (lub raczej zbiorem szablonów). Widok to przede wszystkim kod, który "wyciąga" z modelu potrzebne dane, natomiast nic nie stoi na przeszkodzie, aby widok wykorzystywał wewnętrznie szablony. Widok równieŝ moŝe być implementowany w postaci wielu klas, po jednej na kaŝdą stronę, jeden dokument PDF, jeden plik XML, itd. W dobrze zaprojektowanej aplikacji widok powinien być "wymienny": zmiana formatu wyświetlanych danych (np. z HTML do PDF) powinna być osiągalna przez prostą wymianę klas widoku. Ma to obecnie coraz większe znaczenie, poniewaŝ od aplikacji zaczynamy wymagać obsługi formatów wyjściowych innych niŝ tradycyjny HTML, takich jak: PDF do drukowania RSS do newsów WML dla uŝytkowników telefonów SOAP i XML-RPC dla implementacji Web Services Wraz z rozwojem informatyki będą pojawiały się nowe technologie wyjściowe, które nasza aplikacja powinna wspierać. Sterownik Sterownik jest sercem aplikacji wykonanej w technologii MVC. Sterownik powinien być częścią świadomą Ŝądania HTTP. Na podstawie analizy Ŝądania Sterownik powinien zdecydować, jakie akcje naleŝy wykonać i jaki widok wyświetlić. Sterownik jest równieŝ zasadniczą częścią kaŝdej biblioteki implementującej MVC. Widok i model muszą być dostosowane do specyfiki Twojej aplikacji (czyli prawdopodobnie napisane przez Ciebie), ale sterownik w zasadzie pozostaje bez zmian, więc nie ma potrzeby wywaŝać drzwi otwartych przez kogoś innego. Sterownik w aplikacji jest tylko jeden, więc naturalnym rozwiązaniem w PHP jest jeden skrypt, a przy programowaniu w Javie jeden serwlet, który uŝywa parametrów zawartych w URLu lub w danych POST, aby wybrać widok. Typowy adres będzie więc miał postać

4 index.jsp?widok=listauŝytkowników. Alternatywnie, moŝna uŝywać mod_rewrite lub innych podobnych mechanizmów, aby uzyskać np. URL postaci index.jsp/listauŝytkowników. Sterownik musi w jakiś sposób wiedzieć, co składa się na widok i model w Twojej aplikacji, oraz co naleŝy wykonać w odpowiedzi na Ŝądanie HTTP. W tym celu trzeba go skonfigurować. JeŜeli piszemy sterownik samemu, moŝemy umieścić te mapowania bezpośrednio w kodzie, ale rozwiązanie to jest nieelastyczne i oczywiście odpada w przypadku wykorzystania gotowego sterownika. Na ogół będziemy więc mieli plik konfiguracyjny, w którym napisane będzie, co naleŝy wykonać w odpowiedzi na kaŝde moŝliwe Ŝądanie. Format tego pliku zaleŝny jest od implementacji. JeŜeli aplikacja ma wyświetlić listę uŝytkowników, sprawa jest prosta: sterownik tworzy odpowiedni widok, który z kolei pobiera z modelu odpowiednie dane i prezentuje np. w postaci tabelki. Ale co zrobić, gdy mamy dodać nowego uŝytkownika, a następnie wyświetlić listę? Widok, jak wiemy, nie moŝe zmieniać modelu. Model moŝe oferować niezbędną funkcjonalność, ale sam z siebie jej nie wywoła. Więc to sterownik musi obsłuŝyć dodawanie uŝytkowników, czyli sprawdzić dane POST i wywołać odpowiednią metodę modelu. W tym celu naleŝy do sterownika wprowadzić akcje. Akcja jest to pojedyncza czynność wykonywana przez aplikację. Przykłady akcji to: Dodaj uŝytkownika Wyświetl artykuły Dodaj produkt do koszyka Taka akcja moŝe być implementowana jako klasa tworzona przez kontroler, wykonująca odpowiednie zadanie i przekazująca sterownikowi informację, jaki widok naleŝy wyświetlić. JeŜeli twoja aplikacja musi zmienić coś w modelu (np. dodać uŝytkownika), właśnie akcja jest odpowiednim miejscem do tego. Koncepcyjnie akcje są częścią sterownika. O ile główny "silnik" kontrolera moŝe być wielokrotnie uŝywany, o tyle akcje są juŝ specyficzne dla aplikacji. Kiedy uŝywać MVC? śadne rozwiązanie nie jest uniwersalne. Podobnie MVC nie nadaje się do kaŝdej aplikacji. JeŜeli mamy do czynienia z prostym skryptem wytwarzanym metodą "napisz i zapomnij", zalety MVC nie będą równowaŝyć kosztów. Zyski wynikające ze stosowania tego wzorca - jak zresztą i innych "dobrych praktyk programowania" - są znaczące gdy: aplikacja jest duŝa i skomplikowana aplikację trzeba będzie utrzymywać i dostosowywać do nowych potrzeb w wytwarzanie zaangaŝowanych jest wiele ludzi, którym trzeba wyznaczyć obszary kompetencji zamierzamy wykorzystać fragmenty aplikacji (np. klasy modelu) w innych projektach

5 Krótko o wzorcach projektowych MVC jest wzorcem projektowym. Dla osób, które nie miały jeszcze styczności z wzorcami, postaram się krótko wyjaśnić, w czym rzecz. Wzorzec projektowy jest kolekcją obiektów i powiązań między nimi, wymyśloną, opisaną i wielokrotnie sprawdzoną, przeznaczoną do efektywnego rozwiązywania pewnego problemu. JeŜeli problem, który musisz rozwiązać, jest podobny do problemu rozwiązywanego przez jeden ze znanych wzorców, moŝesz zaoszczędzić sporo pracy wykorzystując ten wzorzec w swoim kodzie. Wzorzec nie jest gotowym kodem. Kod w dalszym ciągu musisz sam napisać, ale będziesz mógł oprzeć się na sprawdzonym i dobrze udokumentowanym rozwiązaniu. Wzorców projektowych jest wiele, tak jak wiele jest powtarzających się problemów, które wzorce rozwiązują. Model - Widok - Sterownik jest właśnie jednym z takich wzorców, który szczególnie nadaje się do rozwiązywania szczególnej klasy problemów: jak dobrze zaprojektować aplikację internetową. Generalnie, przepływ sterowania w aplikacji MVC przybiera dwie postacie: uŝytkownik Ŝąda wyświetlenia określonego widoku (np. lista uŝytkowników) uŝytkownik wysyła dane i oczekuje zmiany stanu aplikacji (np. dodania uŝytkownika) Pierwszy, prostszy przypadek ilustruje schemat: 1. śądanie uŝytkownika (czyli Ŝądanie GET od przeglądarki) trafia do kontrolera. 2. Sterownik określa, który widok jest odpowiedni dla tego Ŝądania, tworzy obiekt widoku i przekazuje mu sterowanie. 3. Widok tworzy potrzebne mu klasy modelu i prosi go o podanie niezbędnych danych 4. Model wysyła zapytanie do bazy danych. 5. Baza danych zwraca modelowi odpowiednie dane. 6. Model zwraca dane widokowi. 7. Widok formatuje dane i wysyła uŝytkownikowi w postaci HTML. Drugi przypadek jest trudniejszy, poniewaŝ jest więcej pracy do wykonania: 1. śądanie uŝytkownika (tym razem na ogół Ŝądanie POST) trafia do kontrolera. 2. Sterownik określa, Ŝe obsłuŝenie Ŝądania wymaga wykonania akcji, tworzy obiekt odpowiedniej akcji i przekazuje sterowanie. 3. Akcja sprawdza dane zawarte w POST, po czym tworzy potrzebne jej klasy modelu i prosi o zmianę danych. 4. Model zmienia zawartość bazy danych. 5. Akcja informuje sterownik o zakończeniu przetwarzania i podaje, jaki widok naleŝy wyświetlić. 6. Sterownik tworzy odpowiedni obiekt widoku i przekazuje sterowanie. 7. Widok tworzy potrzebne mu klasy modelu i prosi go o podanie niezbędnych danych 8. Model wysyła zapytanie do bazy danych. 9. Baza danych zwraca modelowi odpowiednie dane. 10. Model zwraca dane widokowi. 11. Widok formatuje dane i wysyła uŝytkownikowi w postaci HTML.

6 Po co uŝywać MVC? To, Ŝe MVC jest wzorcem projektowym, samo w sobie nie oznacza, Ŝe mamy go stosować pisząc kolejną aplikację. Powodem jest to, Ŝe MVC idealnie wpasowuje się w specyfikę zastosowań. KaŜde Ŝądanie nowej strony jest interakcją uŝytkownika z systemem i musi zostać jakoś przetworzone (kontroler). Większość aplikacji musi przechowywać dane w sposób trwały - najczęściej w bazie danych (model). I wreszcie dane te muszą zostać wyświetlone w jakiś sposób, lub raczej na wiele róŝnych sposobów (widok). Model - Widok - Kontroler odpowiada tym podstawowym potrzebom. KaŜda z części składowych wzorca ma ściśle zdefiniowane zadanie, jak na rysunku: Podstawową zaletą MVC jest modyfikowalność. Podstawowym problemem w utrzymywaniu skomplikowanych aplikacji jest konieczność wprowadzania zmian. Byle jak napisana aplikacja jest w zasadzie niemodyfikowalna. KaŜda zmiana moŝe generować nowe błędy. Odpowiedzią na to jest - ogólnie rzecz biorąc - podejście obiektowe i hermetyzacja. MVC właśnie hermetyzuje poszczególne części aplikacji. JeŜeli zachodzi konieczność zmiany struktury bazy danych, lub wymiany całej bazy, wystarczy zmienić kod modelu. Mamy pewność, Ŝe nie będzie to miało wpływu na inne części aplikacji. JeŜeli trzeba zmienić wygląd stron, lub zmienić technologię generowania wyników (np. przejść na szablony w aplikacji, która ich na razie nie wykorzystuje), zmiany ograniczają się do klas widoku. Literatura: 1. "Podstawy programowania w Javie", Krzysztof Barteczko. 2. Artur Tylach, Tutorial "Java - nowy standard programowania w Internecie" 3. BruceEckel, "Thinking In Java", wydawnictwo Helion. 4. "Tomcat: The Definitive Guide", Jason Brittain, Ian F. Darwin, O'Reilly & Associates (2003) 5. "Tomcat Kick Start", Martin Bond, Debbie Law Sams (11/2002) 6. "Professional Apache Tomcat 6", Vivek Chopra, Sing Li, Jeff Genender, Wrox Press (2007) 7. "Model View Controller MCV", Jeff Moore,

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 11 - przegląd wybranych wzorców mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 24 maja 2017 1 / 38 mgr inż. Krzysztof Szwarc Programowanie obiektowe Wzorce

Bardziej szczegółowo

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

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Bardziej szczegółowo

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

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. Warstwa integracji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Ukrycie logiki dostępu do danych w osobnej warstwie 2. Oddzielenie mechanizmów trwałości od modelu obiektowego Pięciowarstwowy

Bardziej szczegółowo

Aplikacje WWW Wprowadzenie

Aplikacje WWW Wprowadzenie Aplikacje WWW Wprowadzenie Beata Pańczyk na podstawie http://www.e-informatyka.edu.pl/ http://wazniak.mimuw.edu.pl/index.php?title=aplikacje_www Plan wykładu Składniki architektury WWW: klient HTTP, serwer

Bardziej szczegółowo

Wprowadzenie do programowania aplikacji mobilnych

Wprowadzenie do programowania aplikacji mobilnych Wprowadzenie do programowania aplikacji mobilnych dr Przemysław Juszczuk dr Przemysław Juszczuk Trochę historii Idea wzorców projektowych wywodzi się jeszcze z wczesnych lat osiemdziesiątych ubiegłego

Bardziej szczegółowo

TECHNOLOGIA JSP W TWORZENIU APLIKACJI ROZPROSZONYCH NA PRZYKŁADZIE SYSTEMU ZARZĄDZANIA NIERUCHOMOŚCIAMI W GMINIE

TECHNOLOGIA JSP W TWORZENIU APLIKACJI ROZPROSZONYCH NA PRZYKŁADZIE SYSTEMU ZARZĄDZANIA NIERUCHOMOŚCIAMI W GMINIE InŜynieria Rolnicza 14/2005 Jerzy Dąbkowski, Marcin Kowalski Katedra InŜynierii Rolniczej i Informatyki Akademia Rolnicza w Krakowie TECHNOLOGIA JSP W TWORZENIU APLIKACJI ROZPROSZONYCH NA PRZYKŁADZIE SYSTEMU

Bardziej szczegółowo

Generated by Foxit PDF Creator Foxit Software http://www.foxitsoftware.com For evaluation only. System Szablonów

Generated by Foxit PDF Creator Foxit Software http://www.foxitsoftware.com For evaluation only. System Szablonów System Szablonów System szablonów System szablonów to biblioteka, która pozwala oddzielić warstwę prezentacji od warstwy logicznej. Aplikacja WWW najpierw pobiera wszystkie dane, przetwarza je i umieszcza

Bardziej szczegółowo

Podręcznik Integracji

Podręcznik Integracji Podręcznik Integracji Spis treści 1. Integracja oferty... 3 1.1. Samodzielne wprowadzanie oferty sklepu... 3 1.2. Automatyczne wprowadzanie oferty z pliku XML... 3 1.3. Cyklicznie pobieranie oferty ze

Bardziej szczegółowo

ASP.NET MVC. Grzegorz Caban grzegorz.caban@gmail.com. 20 stycznia 2009

ASP.NET MVC. Grzegorz Caban grzegorz.caban@gmail.com. 20 stycznia 2009 ASP.NET MVC Grzegorz Caban grzegorz.caban@gmail.com 20 stycznia 2009 Agenda Przyczyna powstania Co to jest ASP.NET MVC Architektura Hello World w ASP.NET MVC ASP.NET MVC vs ASP.NET WebForm Przyszłość framework'a

Bardziej szczegółowo

Specyfikacja implementacyjna aplikacji serwerowej

Specyfikacja implementacyjna aplikacji serwerowej Projekt: System wspomagania osób studiujących Strona: 1 / 7 Opracowali: Zatwierdzili: Spis treści Damian Głuchowski Krzysztof Krajewski Krzysztof Krajewski dr inż. Sławomir Skoneczny Spis treści... 1 1.

Bardziej szczegółowo

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa

Bardziej szczegółowo

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

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008 Adam 1 grudnia 2008 Wstęp Opis Historia Apache kontener serwletów rozwijany w ramach projektu Apache jeden z bardziej popularnych kontenerów Web open source, Apache Software License rozwijany przez ASF

Bardziej szczegółowo

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:

Bardziej szczegółowo

Wstęp [2/2] Wbrew częstemu przekonaniu, nie są one gotowymi rozwiązaniami, to tylko półprodukty rozwiązania.

Wstęp [2/2] Wbrew częstemu przekonaniu, nie są one gotowymi rozwiązaniami, to tylko półprodukty rozwiązania. Adrian Skalczuk Szymon Kosarzycki Spis Treści Wstęp [1/2] Wzorce projektowe są nieodłącznym przyjacielem programisty pozwalają pisać czystszy kod, łatwiejszy do zrozumienia przez innych i zapewniają pewien

Bardziej szczegółowo

OpenLaszlo. OpenLaszlo

OpenLaszlo. OpenLaszlo OpenLaszlo Spis Treści 1 OpenLaszlo Co to jest? Historia Idea Architektura Jako Flash lub DHTML Jako servlet lub SOLO Jak to działa? Język LZX Struktura programu Skrypty Obiekty i klasy Atrybuty i metody

Bardziej szczegółowo

Web frameworks do budowy aplikacji zgodnych z J2EE

Web frameworks do budowy aplikacji zgodnych z J2EE Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida promotor: dr Dariusz Król Przypomnienie Celem pracy jest porównanie wybranych szkieletów programistycznych o otwartym kodzie źródłowym

Bardziej szczegółowo

problem w określonym kontekście siły istotę jego rozwiązania

problem w określonym kontekście siły istotę jego rozwiązania Wzorzec projektowy Christopher Alexander: Wzorzec to sprawdzona koncepcja, która opisuje problem powtarzający się wielokrotnie w określonym kontekście, działające na niego siły, oraz podaje istotę jego

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

Charakterystyka oprogramowania obiektowego

Charakterystyka oprogramowania obiektowego Charakterystyka oprogramowania obiektowego 1. Definicja systemu informatycznego 2. Model procesu wytwarzania oprogramowania - model cyklu Ŝycia oprogramowania 3. Wymagania 4. Problemy z podejściem nieobiektowym

Bardziej szczegółowo

PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ. Opis działania raportów w ClearQuest

PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ. Opis działania raportów w ClearQuest PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ Opis działania raportów w ClearQuest Historia zmian Data Wersja Opis Autor 2008.08.26 1.0 Utworzenie dokumentu. Wersja bazowa dokumentu. 2009.12.11 1.1

Bardziej szczegółowo

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

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) WERSJA WSTĘPNA, BRAK PRZYKŁADOWYCH PYTAŃ DLA NIEKTÓRYCH PRZEDMIOTÓW Należy wybrać trzy dowolne

Bardziej szczegółowo

Web frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida

Web frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida 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

Bardziej szczegółowo

Widoki zagnieżdżone, layout. 1. Wprowadzenie Repozytoria danych

Widoki zagnieżdżone, layout. 1. Wprowadzenie Repozytoria danych Widoki zagnieżdżone, layout 1. Wprowadzenie Repozytoria danych Identyczne operacje na danych często się powtarzają np. pobierz książkę. Jeśli zapytanie realizowane jest za każdym razem w metodzie kontrolera

Bardziej szczegółowo

Zagadnienia projektowania aplikacji J2EE

Zagadnienia projektowania aplikacji J2EE 211 Zagadnienia projektowania aplikacji J2EE Maciej Zakrzewicz Maciej.Zakrzewicz@cs.put.poznan.pl http://www.cs.put.poznan.pl/mzakrzewicz/ Plan rozdziału 212 Wstęp Techniki projektowe: Wprowadzenie modułu

Bardziej szczegółowo

Wykład 1 Inżynieria Oprogramowania

Wykład 1 Inżynieria Oprogramowania Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI

Bardziej szczegółowo

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL. E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL. Autor: Larry Ullman Poznaj zasady wirtualnego handlu i zarabiaj prawdziwe pieniądze Jak stworzyć doskonałą witrynę sklepu internetowego? Jak

Bardziej szczegółowo

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

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy Dokumentacja techniczna Młodzieżowe Pośrednictwo Pracy Spis Treści 1. Widok ogólny architektury MPP... 3 2. Warstwy systemu... 5 3. Struktura systemu/komponentów... 7 3.1 Aplikacje... 7 3.2 Biblioteki...

Bardziej szczegółowo

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

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych

Bardziej szczegółowo

Forum Client - Spring in Swing

Forum Client - Spring in Swing Forum Client - Spring in Swing Paweł Charkowski. 0. Cel projektu Celem projektu jest próba integracji Spring Framework z różnymi technologiami realizacji interfejsu użytkownika, oraz jej ocena. Niniejszy

Bardziej szczegółowo

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski Technologie dla aplikacji klasy enterprise Wprowadzenie Marek Wojciechowski Co oznacza enterprise-ready? Bezpieczeństwo Skalowalność Stabilność Kompatybilność wstecz Wsparcie Dokumentacja Łatwość integracji

Bardziej szczegółowo

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod

Bardziej szczegółowo

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

Warstwa prezentacji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. Warstwa prezentacji wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe. 1. Definicja warstwy prezentacji - pięciowarstwowy model logicznego rozdzielania zadań 2. Podstawowe przypadki - analiza

Bardziej szczegółowo

Wzorce projektowe. dr inż. Marcin Pietroo

Wzorce projektowe. dr inż. Marcin Pietroo Wzorce projektowe dr inż. Marcin Pietroo Wzorce projektowe Wzorzec projektowy (ang. design pattern) w inżynierii oprogramowania, rozwiązanie często pojawiających się, powtarzalnych problemów projektowych.

Bardziej szczegółowo

Diagram wdrożenia. Rys. 5.1 Diagram wdrożenia.

Diagram wdrożenia. Rys. 5.1 Diagram wdrożenia. Diagram wdrożenia Zaprojektowana przez nas aplikacja bazuje na architekturze client-server. W tej architekturze w komunikacji aplikacji klienckiej z bazą danych pośredniczy serwer aplikacji, który udostępnia

Bardziej szczegółowo

Deduplikacja danych. Zarządzanie jakością danych podstawowych

Deduplikacja danych. Zarządzanie jakością danych podstawowych Deduplikacja danych Zarządzanie jakością danych podstawowych normalizacja i standaryzacja adresów standaryzacja i walidacja identyfikatorów podstawowa standaryzacja nazw firm deduplikacja danych Deduplication

Bardziej szczegółowo

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

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż. Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej Wstęp Programowanie w Javie 2 mgr inż. Michał Misiak Agenda Założenia do wykładu Zasady zaliczeń Ramowy program wykładu

Bardziej szczegółowo

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i Program szkolenia: Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Produktywne tworzenie aplikacji webowych z

Bardziej szczegółowo

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

Dotacje na innowacje. Inwestujemy w waszą przyszłość. PROJEKT TECHNICZNY Implementacja Systemu B2B w firmie Lancelot i w przedsiębiorstwach partnerskich Przygotowane dla: Przygotowane przez: Lancelot Marek Cieśla Grzegorz Witkowski Constant Improvement Szkolenia

Bardziej szczegółowo

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

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne. Załącznik nr 1a do Zapytania ofertowego nr POIG.08.02-01/2014 dotyczącego budowy oprogramowania B2B oraz dostawcy sprzętu informatycznego do projektu pn. Budowa systemu B2B integrującego zarządzanie procesami

Bardziej szczegółowo

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 Utrwalanie danych zastosowanie obiektowego modelu danych warstwy biznesowej do generowania schematu relacyjnej bazy danych Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 1. Relacyjne

Bardziej szczegółowo

Internetowy moduł prezentacji WIZYT KLIENTA PUP do wykorzystania np. na stronie WWW. Wstęp

Internetowy moduł prezentacji WIZYT KLIENTA PUP do wykorzystania np. na stronie WWW. Wstęp Internetowy moduł prezentacji WIZYT KLIENTA PUP do wykorzystania np. na stronie WWW. Wstęp Prezentujemy Państwu propozycję modułu aplikacji internetowej słuŝącej do prezentacji zaplanowanych wizyt klienta

Bardziej szczegółowo

Wprowadzenie do Doctrine ORM

Wprowadzenie do Doctrine ORM Wprowadzenie do Doctrine ORM Przygotowanie środowiska Do wykonania ćwiczenia konieczne będzie zainstalowanie narzędzia Composer i odpowiednie skonfigurowanie Netbeans (Tools->Options->Framework & Tools->Composer,

Bardziej szczegółowo

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura Systemu Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura jest zbiorem decyzji dotyczących: organizacji systemu komputerowego,

Bardziej szczegółowo

Instrukcja instalacji i obsługi gotowych szablonów aukcji allegro oraz szablonów na zamówienie

Instrukcja instalacji i obsługi gotowych szablonów aukcji allegro oraz szablonów na zamówienie Instrukcja instalacji i obsługi gotowych szablonów aukcji allegro oraz szablonów na zamówienie Spis treści: I. Wprowadzenie...2 II. Instrukcja instalacji szablonu aukcji Allegro.3 III. Jak wystawiać przedmioty

Bardziej szczegółowo

Wybrane działy Informatyki Stosowanej

Wybrane działy Informatyki Stosowanej Wybrane działy Informatyki Stosowanej Java Enterprise Edition WebServices Serwer aplikacji GlassFish Dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Aplikacje

Bardziej szczegółowo

REFERAT O PRACY DYPLOMOWEJ

REFERAT O PRACY DYPLOMOWEJ REFERAT O PRACY DYPLOMOWEJ Temat pracy: Projekt i budowa systemu zarządzania treścią opartego na własnej bibliotece MVC Autor: Kamil Kowalski W dzisiejszych czasach posiadanie strony internetowej to norma,

Bardziej szczegółowo

MVVM Light Toolkit. Julita Borkowska

MVVM Light Toolkit. Julita Borkowska MVVM Light Toolkit Julita Borkowska Czym jest MVVM Light Toolkit? MVVM Light Toolkit został stworzony w 2009 roku przez Laurenta Bugnion. Jest to biblioteka dostarczająca zestaw komponentów pomocnych podczas

Bardziej szczegółowo

Odseparowanie kodu PHP i warstwy prezentacji od dawna było celem

Odseparowanie kodu PHP i warstwy prezentacji od dawna było celem Smarty system szablonów 01 Odseparowanie kodu PHP i warstwy prezentacji od dawna było celem programistów tworzących aplikacje w tym języku. Bardzo często taki kod w znacznym stopniu przeplatał się tagami

Bardziej szczegółowo

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

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia) Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia) WERSJA WSTĘPNA, BRAK PRZYKŁADOWYCH PYTAŃ DLA NIEKTÓRYCH PRZEDMIOTÓW Należy wybrać trzy dowolne przedmioty.

Bardziej szczegółowo

Szkolenie wycofane z oferty

Szkolenie wycofane z oferty Szkolenie wycofane z oferty Program szkolenia: Java Server Faces 2 Informacje: Nazwa: Java Server Faces 2 Kod: Java-EE-JSF 2 Kategoria: Java EE Grupa docelowa: developerzy Czas trwania: 3 dni Forma: 50%

Bardziej szczegółowo

SYSTEM ZARZĄDZANIA TREŚCIĄ (CMS) STRONY INTERNETOWEJ SZKOŁY PRZEWODNIK

SYSTEM ZARZĄDZANIA TREŚCIĄ (CMS) STRONY INTERNETOWEJ SZKOŁY PRZEWODNIK SYSTEM ZARZĄDZANIA TREŚCIĄ (CMS) STRONY INTERNETOWEJ SZKOŁY PRZEWODNIK Daniel M. [dm.o12.pl] 2012 I. Ogólna charakterystyka systemu 1) System nie wymaga bazy danych oparty jest o pliki tekstowe. 2) Aktualna

Bardziej szczegółowo

Internetowy moduł prezentacji ofert pracy do wykorzystania na stronie WWW lub panelu elektronicznym. Wstęp

Internetowy moduł prezentacji ofert pracy do wykorzystania na stronie WWW lub panelu elektronicznym. Wstęp Internetowy moduł prezentacji ofert pracy do wykorzystania na stronie WWW lub panelu elektronicznym. Wstęp Prezentujemy Państwu propozycję modułu aplikacji internetowej słuŝącej do prezentacji ofert pracy

Bardziej szczegółowo

Wzorce architektoniczne

Wzorce architektoniczne Wzorce architektoniczne Architektura warstwowa, MVP, MVC, MVVM Wojciech Szymecki Wydział Fizyki, Astronomii i Informatyki Stosowanej Uniwersytet Mikołaja Kopernika 23 maja 2014 Architektura warstwowa W

Bardziej szczegółowo

Technologie obiektowe

Technologie obiektowe WYKŁAD dr inż. Paweł Jarosz Instytut Informatyki Politechnika Krakowska mail: pjarosz@pk.edu.pl LABORATORIUM dr inż. Paweł Jarosz (3 grupy) mgr inż. Piotr Szuster (3 grupy) warunki zaliczenia Obecność

Bardziej szczegółowo

Komunikator internetowy w C#

Komunikator internetowy w C# PAŃSTWOWA WYśSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie Komunikator internetowy w C# autor: Artur Domachowski Elbląg, 2009 r. Komunikacja przy uŝyciu poczty internetowej

Bardziej szczegółowo

Międzyplatformowy interfejs systemu FOLANessus wykonany przy użyciu biblioteki Qt4

Międzyplatformowy interfejs systemu FOLANessus wykonany przy użyciu biblioteki Qt4 Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Agnieszka Holka Nr albumu: 187396 Praca magisterska na kierunku Informatyka

Bardziej szczegółowo

PREZENTACJE MULTIMEDIALNE cz.2

PREZENTACJE MULTIMEDIALNE cz.2 Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni z przedmiotu Podstawy Informatyki Kod przedmiotu: TS1C 100 003 Ćwiczenie pt. PREZENTACJE MULTIMEDIALNE cz.2

Bardziej szczegółowo

Referat pracy dyplomowej

Referat pracy dyplomowej Referat pracy dyplomowej Temat pracy: Projekt i implementacja oprogramowania dla salonu kosmetycznego. Autor: Wojciech Rubiniec Promotor: dr inż. Roman Simiński Kategorie: Oprogramowanie użytkowe Słowa

Bardziej szczegółowo

OPIS i SPECYFIKACJA TECHNICZNA

OPIS i SPECYFIKACJA TECHNICZNA OPIS i SPECYFIKACJA TECHNICZNA Dotyczy Konkursu ofert numer 1/POIG 8.2/2013 WdroŜenie internetowego systemu klasy B2B do automatyzacji procesów biznesowych oraz koordynacji działań z partnerami w firmie

Bardziej szczegółowo

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl Instrukcja do panelu administracyjnego do zarządzania kontem FTP WebAs www.poczta.greenlemon.pl Opracowanie: Agencja Mediów Interaktywnych GREEN LEMON Spis treści 1.Wstęp 2.Konfiguracja 3.Konto FTP 4.Domeny

Bardziej szczegółowo

Omówienie wzorców wykorzystywanych w Prism 5.0. Dominika Różycka

Omówienie wzorców wykorzystywanych w Prism 5.0. Dominika Różycka 1 Omówienie wzorców wykorzystywanych w Prism 5.0 Dominika Różycka Czym jest wzorzec projektowy? 2 3 Wzorzec projektowy 1. Uniwersalne i sprawdzone w praktyce rozwiązanie często pojawiających się, powtarzalnych

Bardziej szczegółowo

SOA Web Services in Java

SOA Web Services in Java Wydział Informatyki i Zarządzania Wrocław,16 marca 2009 Plan prezentacji SOA 1 SOA 2 Usługi Przykłady Jak zacząć SOA Wycinek rzeczywistości Problemy zintegrowanych serwisów : Wycinek Rzeczywistości Zacznijmy

Bardziej szczegółowo

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy

Bardziej szczegółowo

Wykład 8: klasy cz. 4

Wykład 8: klasy cz. 4 Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD

Bardziej szczegółowo

Programowanie obiektowe - 1.

Programowanie obiektowe - 1. Programowanie obiektowe - 1 Mariusz.Masewicz@cs.put.poznan.pl Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która

Bardziej szczegółowo

Architektura nowoczesnych aplikacji internetowych

Architektura nowoczesnych aplikacji internetowych Architektura nowoczesnych aplikacji internetowych Lech Madeyski Michał Stochmiałek Wydziałowy Zakład Informatyki Wydział Informatyki i Zarządzania Politechnika Wrocławska Krajowa Konferencja Inżynierii

Bardziej szczegółowo

Podstawy obsługi aplikacji Generator Wniosków Płatniczych

Podstawy obsługi aplikacji Generator Wniosków Płatniczych Podstawy obsługi aplikacji Generator Wniosków Płatniczych 1. Instalacja programu Program naleŝy pobrać ze strony www.simik.gov.pl. Instalację naleŝy wykonań z konta posiadającego uprawnienia administratora

Bardziej szczegółowo

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium

Bardziej szczegółowo

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor

Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor Koszalin, 15.06.2012 r. Dokument Detaliczny Projektu Temat: Księgarnia On-line Bukstor Zespół projektowy: Daniel Czyczyn-Egird Wojciech Gołuchowski Michał Durkowski Kamil Gawroński Prowadzący: Dr inż.

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 7 Marcin Młotkowski 8 kwietnia 2015 Plan wykładu Z życia programisty, część 1 1 Z życia programisty, część 1 2 3 Z życia programisty, część 2 Model View Controller MVC w

Bardziej szczegółowo

Przewodnik Szybki start

Przewodnik Szybki start Przewodnik Szybki start Program Microsoft Access 2013 wygląda inaczej niż wcześniejsze wersje, dlatego przygotowaliśmy ten przewodnik, aby skrócić czas nauki jego obsługi. Zmienianie rozmiaru ekranu lub

Bardziej szczegółowo

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

Programowanie w Javie 2. Płock, 26 luty 2014 r. Programowanie w Javie 2 Płock, 26 luty 2014 r. Zaliczenie wykładu i ćwiczeń Zaliczenie ćwiczeń (projekt na zaliczenie, 3 prace domowe) Zaliczenie wykładu (referat na 1h) Ocena ćwiczeń: 70% projekt + 30%

Bardziej szczegółowo

Technologia informacyjna

Technologia informacyjna Technologia informacyjna Pracownia nr 9 (studia stacjonarne) - 05.12.2008 - Rok akademicki 2008/2009 2/16 Bazy danych - Plan zajęć Podstawowe pojęcia: baza danych, system zarządzania bazą danych tabela,

Bardziej szczegółowo

Zaawansowane programowanie obiektowe - wykład 5

Zaawansowane programowanie obiektowe - wykład 5 Zaawansowane programowanie obiektowe - wykład 5 dr Piotr Jastrzębski (czynnościowe) opisują zachowanie obiektów, komunikację pomiędzy nimi i ich odpowiedzialność. Interpreter Iterator (kursor) Łańcuch

Bardziej szczegółowo

Spis treści. I. Czym jest Indeks Haseł 3 II. Wyszukiwanie hasła 4. 1) Alfabetyczna lista haseł 4 2) Wyszukiwarka haseł 4 3) Grupy haseł 6

Spis treści. I. Czym jest Indeks Haseł 3 II. Wyszukiwanie hasła 4. 1) Alfabetyczna lista haseł 4 2) Wyszukiwarka haseł 4 3) Grupy haseł 6 Spis treści I. Czym jest Indeks Haseł 3 II. Wyszukiwanie hasła 4 1) Alfabetyczna lista haseł 4 2) Wyszukiwarka haseł 4 3) Grupy haseł 6 III. Dokumenty powiązane z wybranym hasłem 7 IV. Moje hasła 10 1)

Bardziej szczegółowo

VII. Ciągi znaków łańcuchy

VII. Ciągi znaków łańcuchy VII. Ciągi znaków łańcuchy 7.1. Wczytywanie tekstu Do tej pory poznaliśmy metodę wczytywania i wyświetlania liczb. Tak samo jak liczby moŝemy wczytać jeden znak, jednak co zrobić jeśli chcielibyśmy wczytać

Bardziej szczegółowo

PROJEKT INTERFEJSU UśYTKOWNIKA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

PROJEKT INTERFEJSU UśYTKOWNIKA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU> Załącznik nr 4.5 do Umowy nr 35-ILGW-253-.../20.. z dnia... MINISTERSTWO FINANSÓW DEPARTAMENT INFORMATYKI PROJEKT INTERFEJSU UśYTKOWNIKA PROJEKT WERSJA numer wersji

Bardziej szczegółowo

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 1

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 1 Charakterystyka oprogramowania obiektowego 1. Definicja systemu informatycznego 2. Model procesu wytwarzania oprogramowania - model cyklu życia oprogramowania 3. Wymagania 4. Problemy z podejściem nieobiektowym

Bardziej szczegółowo

app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji src/ - folder zawiera cały kod PHP aplikacji

app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji src/ - folder zawiera cały kod PHP aplikacji Baza danych i ORM Projekt zestaw usług dostępnych pod daną domeną. Aplikacja niezależnie działające programy/serwisy (w obrębie pojektu). Zwyczajowo projekt posiada dwie aplikacje: Frontend Backend Moduł

Bardziej szczegółowo

Wzorce projektowe i refaktoryzacja

Wzorce projektowe i refaktoryzacja Wzorce projektowe i refaktoryzacja Paweł Kozioł p.koziol@students.mimuw.edu.pl 18.01.2005 Moja praca magisterska Narzędzie dla środowiska Eclipse wspierające stosowanie wzorców projektowych J2EE Prowadzący:

Bardziej szczegółowo

Wzorce projektowe cz. II. Wzorce projektowe cz. II 1/35

Wzorce projektowe cz. II. Wzorce projektowe cz. II 1/35 Wzorce projektowe cz. II Wzorce projektowe cz. II 1/35 Wzorce projektowe cz. II 2/35 Iterator Przeznaczenie Wzorzec zapewnia sekwencyjny dostęp do elementów obiektu zagregowanego bez ujawniania jego reprezentacji

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.

Bardziej szczegółowo

Wykład Ćwiczenia Laboratorium Projekt Seminarium

Wykład Ćwiczenia Laboratorium Projekt Seminarium WYDZIAŁ ELEKTRONIKI KARTA PRZEDMIOTU Nazwa w języku polskim Języki programowania Nazwa w języku angielskim Programming languages Kierunek studiów (jeśli dotyczy): Informatyka - INF Specjalność (jeśli dotyczy):

Bardziej szczegółowo

INSTRUKCJA OBSŁUGI PORTAL B2B

INSTRUKCJA OBSŁUGI PORTAL B2B INSTRUKCJA OBSŁUGI PORTAL BB SPIS TREŚCI 1. LOGIN.. POWITANIE...3 3. KATALOG ARTYKUŁÓW...4 4. KOSZYK 6 5. LOGIN 1 Aby zamawiać on-line konieczna jest nazwa (USER) oraz hasło (Password) uŝytkownika, by

Bardziej szczegółowo

Wspomaganie pracy w terenie za pomocą technologii BlackBerry MDS. (c) 2008 Grupa SPOT SJ

Wspomaganie pracy w terenie za pomocą technologii BlackBerry MDS. (c) 2008 Grupa SPOT SJ Wspomaganie pracy w terenie za pomocą technologii BlackBerry MDS (c) 2008 Grupa SPOT SJ Grupa SPOT Krzysztof Cieślak, Maciej Gdula Spółka Jawna Podstawowe dane: firma założona w roku 2004 w wyniku połączenia

Bardziej szczegółowo

Aplikacje Internetowe, Servlety, JSP i JDBC

Aplikacje Internetowe, Servlety, JSP i JDBC Aplikacje Internetowe, Servlety, JSP i JDBC Opis Java 2 Enterprise Edition (JEE) jest potężną platformą do tworzenia aplikacji webowych. PLatforma JEE oferuje wszystkie zalety tworzenia w Javie plus wszechstronny

Bardziej szczegółowo

IV.3.b. Potrafisz samodzielnie dokonać podstawowej konfiguracji sieci komputerowej

IV.3.b. Potrafisz samodzielnie dokonać podstawowej konfiguracji sieci komputerowej IV.3.b. Potrafisz samodzielnie dokonać podstawowej konfiguracji sieci komputerowej Co warto wiedzieć o łączeniu komputerów w sieci? Spójrz na rysunek IV.3p, który przedstawia właściwości Połączeń lokalnych,

Bardziej szczegółowo

Instrukcja uŝytkownika narzędzia Skaner SMTP TP. Uruchamianie aplikacji

Instrukcja uŝytkownika narzędzia Skaner SMTP TP. Uruchamianie aplikacji Instrukcja uŝytkownika narzędzia Skaner SMTP TP W związku z wprowadzeniem dodatkowego profilu dla usługi "Bezpieczny Dostęp", który ogranicza komunikację i wpływa na funkcjonowanie poczty elektronicznej,

Bardziej szczegółowo

Aplikacja internetowa vs Strona Internetowa. Aplikacja internetowa, (ang.) web application zwana również aplikacją webową, to program komputerowy,

Aplikacja internetowa vs Strona Internetowa. Aplikacja internetowa, (ang.) web application zwana również aplikacją webową, to program komputerowy, Aplikacja internetowa vs Strona Internetowa. Aplikacja internetowa, (ang.) web application zwana również aplikacją webową, to program komputerowy, który pracuje na serwerze i komunikuje się poprzez sieć

Bardziej szczegółowo

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu I Tworzenie prezentacji za pomocą szablonu w programie Power-Point 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu 2. Po wybraniu szablonu ukaŝe się nam ekran jak poniŝej 3. Następnie

Bardziej szczegółowo

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

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Inżynieria Biomedyczna Rodzaj przedmiotu: obowiązkowy moduł specjalności informatyka medyczna Rodzaj zajęć: wykład, laboratorium PROGRAMOWANIE INTERNETOWE Internet Programming

Bardziej szczegółowo

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 4 Budowa prostych formularzy, stany sesji, tworzenie przycisków Plan Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza 2 Formularz i jego typy Tworzenie formularza

Bardziej szczegółowo

9.5 Rozliczanie zaopatrzenia w przedmioty ortopedyczne i środki pomocnicze

9.5 Rozliczanie zaopatrzenia w przedmioty ortopedyczne i środki pomocnicze Po zakończeniu prac z listą raportów zwrotnych naleŝy kliknąć w przycisk opcji Powrót do listy raportów. Opcja ta spowoduje przywrócenie głównego okna obszaru Sprawozdawczość. 9.5 Rozliczanie zaopatrzenia

Bardziej szczegółowo

Podstawy technologii WWW

Podstawy technologii WWW Podstawy technologii WWW Ćwiczenie 14 AJAX, czyli jak odświeżyć bez odświeżania, część trzecia Na dzisiejszych zajęciach będziemy kontynuować realizację serwisu do wymiany wiadomości z wykorzystaniem technologii

Bardziej szczegółowo

Zadanie polega na stworzeniu bazy danych w pamięci zapewniającej efektywny dostęp do danych baza osób.

Zadanie polega na stworzeniu bazy danych w pamięci zapewniającej efektywny dostęp do danych baza osób. Zadanie: Zadanie polega na stworzeniu bazy danych w pamięci zapewniającej efektywny dostęp do danych baza osób. Na kolejnych zajęciach projekt będzie rozwijana i uzupełniana o kolejne elementy omawiane

Bardziej szczegółowo

Wykorzystanie protokołu SCEP do zarządzania certyfikatami cyfrowymi w systemie zabezpieczeń Check Point NGX

Wykorzystanie protokołu SCEP do zarządzania certyfikatami cyfrowymi w systemie zabezpieczeń Check Point NGX Wykorzystanie protokołu SCEP do zarządzania certyfikatami cyfrowymi w systemie zabezpieczeń Check Point NGX 1. Wstęp Protokół SCEP (Simple Certificate Enrollment Protocol) został zaprojektowany przez czołowego

Bardziej szczegółowo

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2 Modelowanie i analiza systemów informatycznych 1. Warstwowa budowa systemów informatycznych 2. Model procesu wytwarzania oprogramowania - model cyklu życia oprogramowania 3. Wstęp do modelowania systemów

Bardziej szczegółowo