Komentarz. W poszukiwaniu zaginionego wzorca

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

Download "Komentarz. W poszukiwaniu zaginionego wzorca"

Transkrypt

1 Komentarz W poszukiwaniu zaginionego wzorca

2 W poszukiwaniu zaginionego wzorca Administrator nadal z powodzeniem używa tego samego programu do zarządzania usługami. Aczkolwiek pojawia się coraz więcej systemów oraz różnorodnych usług. Z tego względu zarządzanie zmianami w programie staje się coraz bardziej uporczywe i nieprzewidywalne. Szczęśliwie pojawiło się kilku poszukiwaczy, którzy odnaleźli wzorce pozwalające na radykalne zmiany w tej materii. Miejmy nadzieje, że inżynierowie szybko wprowadzą poprawki. Dzięki za udział w poszukiwaniach! Co było do zrobienia? Drugie zadanie przedstawiało zagadnienie dotyczące zarządzania zmianami w kodzie źródłowym programu oraz związanym z tym nieustannym procesem refaktoryzacji. Głównym zadaniem uczestników było zlokalizowanie w kodzie newralgicznego fragmentu, który powodował największe niedogodności przy wprowadzaniu obsługi instalacji usług na nowych systemach. Następnie należało wyodrębnić zaproponować (najlepiej z uzasadnieniem) - wzorzec projektowy, który usuwał te niedogodności. Dodatkowo zadanie umożliwiało refaktoryzację jako potwierdzenie własnej tezy. W trakcie refaktoryzacji można było użyć dowolnej techniki, jednak tak aby zachować istniejącą funkcjonalność. Było również możliwe dobieranie dodatkowych wzorców. Każdy dodatkowy wzorzec, rzecz jasna, rozsądnie zaaplikowany pozwalał na zwiększenie punktacji. Rozwiązanie Głównym problemem przy wprowadzaniu nowych usług i installer'ów był rozrastający się kod w klasie ServiceInstaller oraz narastająca lawinowo ilość kolejnych installer'ów. W ServiceInstaller należało zamienić blok 'if...else' na generyczną pętlę, która nie ulegała by modyfikacji przy wprowadzaniu nowych elementów. Natomiast installer'y należałoby ukryć pod warstwą abstrakcji. Zdecydowanie najlepiej w takiej sytuacji pasuje wzorzec Visitor, gdzie visitorami są poszczególne installer'y natomiast komponenty to elementy akceptujące visitora. Podpowiedzią był fakt, że na każdym komponencie serwisu wywoływana jest taka sama operacja - install, zaś konkretna implementacja jest wybierana w trakcie wykonywania programu. Dzięki temu unikamy bezpośredniej zależności komponent - installer, a zyskujemy dowolność w dobieraniu installerów mający wykonać operację instalacji. Innym wzorcem podobnie realizującym ten schemat jest wzorzec Bridge. Przy czym należałoby uzyskać więcej szczegółów na tematu rozwoju programu, aby dokonać wyboru pomiędzy Bridge a Visitor.

3 Jak ocenialiśmy Oceniając zadanie posługiwaliśmy się trzema kryteriami: 1. Trafność zaproponowanego wzorca projektowego (maksymalnie 50pkt.) Punktacja wzorców: Visitor 40pkt. Bridge 30pkt. Strategy 10pkt. Mediator 10pkt. Command 8pkt. Builder, Abstract Factory, Factory 4pkt Dodatkową punktacją były objęte odpowiedzi wraz z próbą uzasadnienia lub przekonującym uzasadnieniem: przekonujące uzasadnienie 10pkt. próba uzasadnienia 5pkt. 2. Refaktoryzacja (maksymalnie 80pkt.) Refaktoryzacja oryginalnego kodu była potwierdzeniem tezy stawianej w punkcie pierwszym. Dlatego punktami były objęte: zmiany w kodzie przeprowadzone zgodnie z założeniami Najwięcej otrzymywały rozwiązania ze wzorcem Visitor (60pkt.). Następnie Bridge(40pkt.). Pozostałe wzorce były punktowane do 20pkt. rozsądne zastosowanie dodatkowych wzorców. Za każdą dodatkową refaktoryzację po 10pkt. łatwość wprowadzania nowych elementów po refaktoryzacji. 10pkt. próby minimalizacji ilości klas dla nowych elementów. 1pkt. zachowanie istniejącej funkcjonalności. 10pkt. 3. Punkty extra (maksymalnie 20pkt.) Za wzorcowe, nietypowe, ponadprzeciętne rozwiązania.

4 Jak poszło? Wszystkich nadesłanych odpowiedzi 35 Najwięcej uzyskanych punktów 140 Najmniej uzyskanych punktów 0 Suma punktów ze wszystkich odpowiedzi 1187 Średnia arytmetyczna Większość nadesłanych rozwiązań była zgodna z zadeklarowanym wzorcem projektowym. Niestety pojawiło się tylko kilka, które naprawdę usuwały niedogodności w oryginalnym kodzie. Były to najwyżej punktowane rozwiązania z refaktoryzacją do Visitor lub Bridge. Autorzy tych odpowiedzi wykazali się zrozumieniem zagadnienia oraz dobrą, praktyczną znajomością wzorców. Pozostałe najczęściej typowane to wzorce kreacyjne, tj. Abstract Factory, Builder, Factory Method, Factory nie rozwiązywały one jednak problemu, a z reguły przesuwały go w inne miejsce kodu. Wnioski Najbardziej istotnym elementem w procesie refaktoryzacji jest właściwe rozpoznanie schematu według którego obiekty komunikują się ze sobą. Jest to sztuka wymagająca wprawy, doświadczenia i dokładnej znajomości wzorców. Niewłaściwe dopasowanie wzorca do problematyki może doprowadzić do większej komplikacji i bardziej nieczytelnego kodu. Późniejsze modyfikacje mogą okazać się zmorą. Niestety większość uczestników nietrafnie wytypowała schemat. Co w efekcie dało kod nadal operujący na badaniu typu obiektu (np. instanceof w Java) z tym, że przesunięty do innej klasy i dodatkowo obłożony wyjątkami i rzutowaniem. Liczymy na to, że treść zadania nakłoni do zgłębienia tematu wzorców projektowych. Dodatkowo podkreślamy, że poza najczęściej stosowanymi wzorcami kreacyjnymi istnieją również inne wzorce. Między innymi behawioralne (np. Visitor) i strukturalne (np. Bridge). Zachęcamy do zapoznania się z nimi oraz częstych ćwiczeń. Pamiętajcie - programowanie to rzemiosło. Bez treningu nie da rady osiągnąć poziomu Master

5 Ciekawostki W jednym z rozwiązań pojawiła się pętla w zależnościach. Kod w C++. Pojawiały się próby ukrycia niezmienionego bloku 'if...else' z ServiceInstaller w innych klasach. 'instanceof' w ServiceInstaller zastąpiony przez Class.forName(className).newInstance() + rzutowanie. Kod w Java. Dostaliśmy rozwiązanie zadania z repozytorium git. A wraz z nim cała historia zmian. Bardzo fajnie. Pamiętajcie tylko, że jeżeli pracujecie w rządowych lub wojskowych instytucjach nie powtarzajcie tego! Najlepsze przykłady refaktoryzacji zaproponowali dwaj programiści C++ (do Visitor) oraz jeden Java (do Bridge). Były to jedyne rozwiązania całkowicie i świadomie rozwiązujące problem.

Wzorce projektowe ArrayList. Aplikacja i zdarzenia. Paweł Chodkiewicz

Wzorce projektowe ArrayList. Aplikacja i zdarzenia. Paweł Chodkiewicz Wzorce projektowe ArrayList DataGridView Aplikacja i zdarzenia Paweł Chodkiewicz Wzorzec uniwersalne rozwiązanie często powtarzających się problemów. Wzorzec opisuje problem, który powtarza się wielokrotnie

Bardziej szczegółowo

WZORCE PROJEKTOWE (I) (DESIGN PATTERNS)

WZORCE PROJEKTOWE (I) (DESIGN PATTERNS) WZORCE PROJEKTOWE (I) (DESIGN PATTERNS) Maciej Patan Motywacje W wielu dziedzinach nowoczesnej inżynierii napotykamy na następujące zagadnienia: Czy typowe zadania i problemy można rozwiązywać w powtarzalny

Bardziej szczegółowo

Problemy projektowania obiektowego. Czy podobne problemy można rozwiązywac w podobny sposób?

Problemy projektowania obiektowego. Czy podobne problemy można rozwiązywac w podobny sposób? Problemy projektowania obiektowego Czy podobne problemy można rozwiązywac w podobny sposób? Czy te problemy można przedstawić w abstrakcyjny sposób, tak aby były pomocne w tworzeniu rozwiązań w różnych

Bardziej szczegółowo

Komentarz. Pieniądze wielkie pieniądze

Komentarz. Pieniądze wielkie pieniądze Komentarz Pieniądze wielkie pieniądze Pieniądze wielkie pieniądze Jak donosi prasa branżowa, w pierwszym dniu po wdrożeniu nowego systemu bankomatów, akcje Kupakasi Bank na nowojorskiej giełdzie zyskały

Bardziej szczegółowo

Wykład VII. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład VII. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład VII - semestr III Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Wytwarzanie oprogramowania Model tworzenia oprogramowania

Bardziej szczegółowo

Zaawansowane programowanie w C++ (PCP)

Zaawansowane programowanie w C++ (PCP) Zaawansowane programowanie w C++ (PCP) Wykład 4 - wzorce projektowe. dr inż. Robert Nowak - p. 1/18 Powtórzenie klasy autonomiczne tworzenie nowych typów: dziedziczenie i agregacja dziedziczenie: przedefiniowywanie

Bardziej szczegółowo

Testowanie oprogramowania Wzorce projektowe

Testowanie oprogramowania Wzorce projektowe Testowanie oprogramowania Wzorce projektowe 1/66 Testowanie oprogramowania Wzorce projektowe dr inż. Grzegorz Michalski 17 listopada 2015 Testowanie oprogramowania Wzorce projektowe 2/66 Plan wykładu Agenda

Bardziej szczegółowo

Program szkolenia: Wzorce projektowe i ich implementacja w C# oraz testowanie automatyczne

Program szkolenia: Wzorce projektowe i ich implementacja w C# oraz testowanie automatyczne Program szkolenia: Wzorce projektowe i ich implementacja w C# oraz testowanie automatyczne Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Wzorce projektowe i ich implementacja

Bardziej szczegółowo

Projektowanie obiektowe Wzorce projektowe. Wprowadzenie do wzorców projektowych

Projektowanie obiektowe Wzorce projektowe. Wprowadzenie do wzorców projektowych Projektowanie obiektowe Wzorce projektowe Wprowadzenie do wzorców projektowych 1 Zagadnienia Katalog wzorców projektowych wg Gang of Four Zasady projektowania obiektowego S O L I D MVC - Model-Widok-Kontroler

Bardziej szczegółowo

Programowanie w języku Java WYKŁAD

Programowanie w języku Java WYKŁAD Programowanie w języku Java WYKŁAD dr inż. Piotr Zabawa Certyfikowany Konsultant IBM/Rational e-mail: pzabawa@pk.edu.pl www: http://www.pk.edu.pl/~pzabawa 24.02.2014 WYKŁAD 1 Wzorce projektowe Znaczenie

Bardziej szczegółowo

Rysunkowy tutorial Możesz swobodnie dystrybuować ten plik jeśli pozostawisz go w nietkniętym stanie. Możesz także cytować jego fragmenty umieszczając w tekście odnośnik http://mbartyzel.blogspot.com Jak

Bardziej szczegółowo

Podstawy modelowania programów Kod przedmiotu

Podstawy modelowania programów Kod przedmiotu Podstawy modelowania programów - opis przedmiotu Informacje ogólne Nazwa przedmiotu Podstawy modelowania programów Kod przedmiotu 11.3-WI-INFP-PMP Wydział Kierunek Wydział Informatyki, Elektrotechniki

Bardziej szczegółowo

Projektowanie obiektowe Wzorce projektowe. Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów)

Projektowanie obiektowe Wzorce projektowe. Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów) Projektowanie obiektowe Wzorce projektowe Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów) 1 Roadmap Adapter Bridge Composite Facade 2 Pojęcia obiekt interfejs typ klasa 3 Co to jest delegacja?

Bardziej szczegółowo

Projektowanie oprogramowania: wzorce architektoniczne i projektowe

Projektowanie oprogramowania: wzorce architektoniczne i projektowe Projektowanie oprogramowania: wzorce architektoniczne i projektowe Ogólne zasady projektowania Nie staraj się zadziwić innych. Rzeczy oczywiste rób w sposób oczywisty. Nie rozmawiaj z nieznajomym. Projekt

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

(wybrane) Wzorce projektowe. Programowanie Obiektowe Mateusz Cicheński

(wybrane) Wzorce projektowe. Programowanie Obiektowe Mateusz Cicheński (wybrane) Wzorce projektowe Programowanie Obiektowe Mateusz Cicheński Kreacyjne Fabryka abstrakcyjna (Abstract Factory) Budowniczy (Builder) Metoda wytwórcza (Factory Method) Prototyp (Prototype) Singleton

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 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

Wskazówki projektowe. Programowanie Obiektowe Mateusz Cicheński

Wskazówki projektowe. Programowanie Obiektowe Mateusz Cicheński Wskazówki projektowe Programowanie Obiektowe Mateusz Cicheński Przydatne zasady SOLID Wzorce struktury aplikacji MVC MVP MVVM Metody wytwarzania oprogramowania Manifest Zwinnego Wytwarzania Oprogramowania

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Algorytmy i programowanie Algorithms and Programming Kierunek: Zarządzanie i Inżynieria Produkcji Rodzaj przedmiotu: kierunkowy Poziom studiów: studia I stopnia forma studiów: studia

Bardziej szczegółowo

Inżynieria oprogramowania (Software Engineering) Wykład 1

Inżynieria oprogramowania (Software Engineering) Wykład 1 Inżynieria oprogramowania (Software Engineering) Wykład 1 Wprowadzenie do inżynierii oprogramowania Zarządzanie przedmiotem Wydział: WEiI Katedra: KIK Web site: http://moskit.weii.tu.koszalin.pl/~swalover/

Bardziej szczegółowo

szkolenia pod drzewem Wybrane Techniki XP bnd 2008 Tomasz Włodarek. Materiał udostępniany na podstawie licencji Creative Commons (by-nc-nd) 1.00.

szkolenia pod drzewem Wybrane Techniki XP bnd 2008 Tomasz Włodarek. Materiał udostępniany na podstawie licencji Creative Commons (by-nc-nd) 1.00. szkolenia pod drzewem Wybrane Techniki XP 1.00.00 bnd Wybrane techniki XP współwłasność kodu źródłowego (collective code ownership) częsta/ciągła integracja (continuous integration) programowanie w parach

Bardziej szczegółowo

NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD

NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD OPIS Praca programisty oprócz umiejętności i wiedzy technicznej, wymaga również doskonałej pracy z kodem. Umiejętności te

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

Zapisywanie algorytmów w języku programowania

Zapisywanie algorytmów w języku programowania Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym

Bardziej szczegółowo

Programowanie w Javie nazwa przedmiotu SYLABUS A. Informacje ogólne

Programowanie w Javie nazwa przedmiotu SYLABUS A. Informacje ogólne Programowanie w Javie nazwa SYLABUS A. Informacje ogólne Elementy składowe sylabusu Nazwa jednostki prowadzącej kierunek Nazwa kierunku studiów Poziom kształcenia Profil studiów Forma studiów Kod Język

Bardziej szczegółowo

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig Modelowanie Obiektowe Wykład 1: Wprowadzenie do Modelowania i języka UML Anna Kulig Wprowadzenie do modelowania Zasady Pojęcia Wprowadzenie do języka UML Plan wykładu Model jest uproszczeniem rzeczywistości.

Bardziej szczegółowo

Wprowadzenie niektórych zagadnień OOP oraz wzorce operacyjne

Wprowadzenie niektórych zagadnień OOP oraz wzorce operacyjne Wprowadzenie niektórych zagadnień OOP oraz wzorce operacyjne ŁUKASZ KIEŁCZYKOWSKI 1 1. Wprowadzenie Wyobraźmy sobie, że jesteśmy firmą tworzącą oprogramowanie i dostaliśmy właśnie zlecenie na stworzenie

Bardziej szczegółowo

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

Język programowania. Andrzej Bobyk http://www.alfabeta.lublin.pl. www.alfabeta.lublin.pl/jp/

Język programowania. Andrzej Bobyk http://www.alfabeta.lublin.pl. www.alfabeta.lublin.pl/jp/ Język programowania Andrzej Bobyk http://www.alfabeta.lublin.pl www.alfabeta.lublin.pl/jp/ Literatura K. Reisdorph: Delphi 6 dla każdego. Helion, Gliwice 2001 A. Grażyński, Z. Zarzycki: Delphi 7 dla każdego.

Bardziej szczegółowo

Receptury - niezbędnik projektanta i architekta

Receptury - niezbędnik projektanta i architekta Program szkolenia: Receptury - niezbędnik projektanta i architekta Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Receptury - niezbędnik projektanta i architekta Craft-Receptury

Bardziej szczegółowo

I Międzyszkolny Konkurs Matematyczny dla uczniów szkół podstawowych w roku szkolnym 2015/2016

I Międzyszkolny Konkurs Matematyczny dla uczniów szkół podstawowych w roku szkolnym 2015/2016 I Organizatorzy I Międzyszkolny Konkurs Matematyczny dla uczniów szkół podstawowych w roku szkolnym 2015/2016 1. Organizatorem Konkursu jest Publiczna Szkoła Podstawowa nr 15 w Radomiu. II Rodzaj konkursu

Bardziej szczegółowo

Algorytmy i struktury danych

Algorytmy i struktury danych Letnie Warsztaty Matematyczno-Informatyczne Algorytmy i struktury danych Mariusz Różycki University of Cambridge Zajęcia będą mieć formę wykładową. Slajdy można znaleźć na stronie kursu: http://lw.mi.edu.pl/informatyka/algorytmy.

Bardziej szczegółowo

Aplikacja (oprogramowanie) będzie umożliwiać przygotowanie, przeprowadzenie badania oraz analizę wyników według określonej metody.

Aplikacja (oprogramowanie) będzie umożliwiać przygotowanie, przeprowadzenie badania oraz analizę wyników według określonej metody. Załącznik nr 1 Specyfikacja przedmiotu zamówienia Aplikacja (oprogramowanie) będzie umożliwiać przygotowanie, przeprowadzenie badania oraz analizę wyników według określonej metody. Słowniczek pojęć Badanie

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: ANALIZA, PROJEKTOWANIE I PROGRAMOWANIE OBIEKTOWE Analysis, design and object-oriented programming Kierunek: Forma studiów: Informatyka Stacjonarne Rodzaj przedmiotu: obowiązkowy w ramach

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Wzorce projektowe [ wstęp ]

Wzorce projektowe [ wstęp ] Wzorce projektowe [ wstęp ] Motywacje definiowania wzorców projektowych Za twórcę uważany jest amerykański architekt Christopher Alexander Alexander, C., Ishikawa, S., Silverstein, M., The Timeless Way

Bardziej szczegółowo

Wydział Ekonomiczno-Informatyczny w Wilnie. 1. Podstawy programowania strukturalnego (C) 2. Wstęp do programowania obiektowego

Wydział Ekonomiczno-Informatyczny w Wilnie. 1. Podstawy programowania strukturalnego (C) 2. Wstęp do programowania obiektowego Podstawy programowania w internecie nazwa SYLABUS A. Informacje ogólne Tę część wypełnia koordynator (w porozumieniu ze wszystkimi prowadzącymi dany przedmiot w jednostce) łącznie dla wszystkich form zajęć

Bardziej szczegółowo

Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton

Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton Dzisiejszy wykład Wzorce projektowe Visitor Client-Server Factory Singleton 1 Wzorzec projektowy Wzorzec nazwana generalizacja opisująca elementy i relacje rozwiązania powszechnie występującego problemu

Bardziej szczegółowo

Rok akademicki: 2012/2013 Kod: ZIE-1-306-s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Rok akademicki: 2012/2013 Kod: ZIE-1-306-s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: - Nazwa modułu: Programowanie obiektowe Rok akademicki: 2012/2013 Kod: ZIE-1-306-s Punkty ECTS: 3 Wydział: Zarządzania Kierunek: Informatyka i Ekonometria Specjalność: - Poziom studiów: Studia I stopnia

Bardziej szczegółowo

Wzorce logiki dziedziny

Wzorce logiki dziedziny Wzorce logiki dziedziny 1. Wzorce logiki dziedziny skrypt transakcji (Transaction Script), brama tabeli (Table Data Gateway), model dziedziny (Domain model), strategia (Strategy), moduł tabeli (Table Module),

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

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

Projektowanie oprogramowania. Termin zajęć: poniedziałek, 18.00-19.45. a podstawie materiału ze strony. http://gromit.iiar.pwr.wroc.

Projektowanie oprogramowania. Termin zajęć: poniedziałek, 18.00-19.45. a podstawie materiału ze strony. http://gromit.iiar.pwr.wroc. Projektowanie oprogramowania Termin zajęć: poniedziałek, 18.00-19.45 a podstawie materiału ze strony http://gromit.iiar.pwr.wroc.pl/p_inf/ Przebieg realizacji projektu (tabela 1) Nr tygo dnia Spotkanie

Bardziej szczegółowo

Zaawansowane programowanie w języku C++

Zaawansowane programowanie w języku C++ Kod szkolenia: Tytuł szkolenia: C/ADV Zaawansowane programowanie w języku C++ Dni: 3 Opis: Uczestnicy szkolenia zapoznają się z metodami wytwarzania oprogramowania z użyciem zaawansowanych mechanizmów

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

Virtual Grid Resource Management System with Virtualization Technology

Virtual Grid Resource Management System with Virtualization Technology Virtual Grid Resource Management System with Virtualization Technology System zarządzania zasobami wirtualnego Gridu z wykorzystaniem technik wirtualizacji Joanna Kosińska Jacek Kosiński Krzysztof Zieliński

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

Technik mechatronik kwalifikacjae18 Analiza egzaminu zewnętrznego - czerwiec 2015

Technik mechatronik kwalifikacjae18 Analiza egzaminu zewnętrznego - czerwiec 2015 Technik mechatronik kwalifikacjae Analiza egzaminu zewnętrznego - czerwiec Wyniki OKE Jaworzno : etap pisemny,, etap praktyczny,9, całość, Wyniki krajowe : etap pisemny 9,, etap praktyczny,, całość 9,

Bardziej szczegółowo

ANALIZA EGZAMINU GIMNAZJALNEGO Z JĘZYKA NIEMIECKIEGO W GIMNAZJUM IM. JANA PAWŁA II W BUDZOWIE

ANALIZA EGZAMINU GIMNAZJALNEGO Z JĘZYKA NIEMIECKIEGO W GIMNAZJUM IM. JANA PAWŁA II W BUDZOWIE ANALIZA EGZAMINU GIMNAZJALNEGO Z JĘZYKA NIEMIECKIEGO W GIMNAZJUM IM. JANA PAWŁA II W BUDZOWIE ZESTAWIENIE I ANALIZA EGZAMINU Z JĘZYKA NIEMIECKIEGO UCZNIÓW III KLAS GIMNAZJUM IM. JANA PAWŁA II W BUDZOWIE

Bardziej szczegółowo

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, 351203 O STRUKTURZE PRZEDMIOTOWEJ Systemy baz danych 1. 2 Wstęp do baz danych 2. 2 Relacyjny model baz danych. 3. 2 Normalizacja baz danych. 4. 2 Cechy

Bardziej szczegółowo

Programowanie w języku Java WYKŁAD

Programowanie w języku Java WYKŁAD Programowanie w języku Java WYKŁAD dr inż. Piotr Zabawa Certyfikowany Konsultant IBM/Rational e-mail: pzabawa@pk.edu.pl www: http://www.pk.edu.pl/~pzabawa 26.05.2014 WYKŁAD 13 Refleksja Data Access Object

Bardziej szczegółowo

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty przedmiotu Stopień studiów i forma: Rodzaj przedmiotu Kod przedmiotu Grupa kursów Zaawansowane techniki analizy

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 OBIEKTOWE Object-Oriented Programming

Bardziej szczegółowo

PROJEKTOWANIE. kodowanie implementacja. PROJEKT most pomiędzy specyfikowaniem a kodowaniem

PROJEKTOWANIE. kodowanie implementacja. PROJEKT most pomiędzy specyfikowaniem a kodowaniem PROJEKTOWANIE określenie wymagań specyfikowanie projektowanie kodowanie implementacja testowanie produkt konserwacja Faza strategiczna Analiza Dokumentacja Instalacja PROJEKT most pomiędzy specyfikowaniem

Bardziej szczegółowo

Spring Framework - wprowadzenie i zagadnienia zaawansowane

Spring Framework - wprowadzenie i zagadnienia zaawansowane Program szkolenia: Spring Framework - wprowadzenie i zagadnienia zaawansowane Informacje ogólne Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Spring Framework - wprowadzenie i zagadnienia

Bardziej szczegółowo

Spis treści 1. Wstęp 2. Projektowanie systemów informatycznych

Spis treści 1. Wstęp 2. Projektowanie systemów informatycznych Spis treści 1. Wstęp... 9 1.1. Inżynieria oprogramowania jako proces... 10 1.1.1. Algorytm... 11 1.2. Programowanie w językach wysokiego poziomu... 11 1.3. Obiektowe podejście do programowania... 12 1.3.1.

Bardziej szczegółowo

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

Bardziej szczegółowo

Inventor 2016 co nowego?

Inventor 2016 co nowego? Inventor 2016 co nowego? OGÓLNE 1. Udoskonalenia wizualizacji, grafiki i programu Studio Nowa obsługa oświetlenia opartego na obrazie (IBL, Image Based Lighting) Wszystkie style oświetlenia w programie

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Podniesienie poziomu wiedzy studentów z inżynierii oprogramowania w zakresie C.

Bardziej szczegółowo

Paradygmaty programowania

Paradygmaty programowania Wg. J. Bylina, B. Bylina Przegląd języków i paradygmatów programowania, UMCS, Lublin 2011 Paradygmaty programowania Paradygmat (gr. Paradeigma) - wzorzec lub przykład Def. słownikowa: przyjęty sposób widzenia

Bardziej szczegółowo

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

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji 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

Projekt wykonania zadania informatycznego specyfikacja zadania

Projekt wykonania zadania informatycznego specyfikacja zadania Projekt wykonania zadania informatycznego specyfikacja zadania I. Metryczka prowadzenia lekcji na której będzie wykonywane zadanie: 1. Imię i nazwisko prowadzącego lekcję:... 2. Typ szkoły:... 3. Klasa:...

Bardziej szczegółowo

Specyfikacja wymagań projektu. Wersja <1.0>

<Nazwa firmy> <Nazwa projektu> Specyfikacja wymagań projektu. Wersja <1.0> Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą

Bardziej szczegółowo

WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja. Nazwa przedmiotu: Język programowania C++

WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja. Nazwa przedmiotu: Język programowania C++ Jednostka prowadząca: Wydział Techniczny Kierunek studiów: Elektronika i telekomunikacja Nazwa przedmiotu: Język programowania C++ Charakter przedmiotu: podstawowy, obowiązkowy Typ studiów: inŝynierskie

Bardziej szczegółowo

JavaScript - korzenie

JavaScript - korzenie JavaScript - korzenie Dowiesz się o historii JavaScript, jego dialektach i wersjach. Poznasz złe i dobre strony języka, a gdy zaskoczy Cię działanie któregoś z jego elementów, będziesz wiedział, gdzie

Bardziej szczegółowo

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne Architektury i technologie integracji danych Systemy Mediacyjne Multi-wyszukiwarki Wprowadzenie do Mediacyjnych Systemów Zapytań (MQS) Architektura MQS Cechy funkcjonalne MQS Cechy implementacyjne MQS

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

Ogólne zasady projektowania algorytmów i programowania

Ogólne zasady projektowania algorytmów i programowania Ogólne zasady projektowania algorytmów i programowania Pracuj nad właściwie sformułowanym problemem dokładna analiza nawet małego zadania może prowadzić do ogromnych korzyści praktycznych: skrócenia długości

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

Przykłady wybranych fragmentów prac egzaminacyjnych z komentarzami Technik technologii drewna 311[32]

Przykłady wybranych fragmentów prac egzaminacyjnych z komentarzami Technik technologii drewna 311[32] Przykłady wybranych fragmentów prac egzaminacyjnych z komentarzami Technik technologii drewna 311[32] 1 2 3 4 1. W pracach egzaminacyjnych oceniane były następujące elementy: I. Tytuł pracy egzaminacyjnej.

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

Naturalny Porządek Refaktoryzacji Java Developer Days 2012

Naturalny Porządek Refaktoryzacji Java Developer Days 2012 Naturalny Porządek Refaktoryzacji Java Developer Days 2012 W slajdzie tytułowym szare tło zastąp fajnym zdjęciem lub obrazkiem adekwatnym do szkolenia czy modułu (dwa typowe dla nas slajdy tytułowe znajdziesz

Bardziej szczegółowo

WYKORZYSTANIE PORTALU DYDAKTYCZNEGO W NAUCE JĘZYKÓW PROGRAMOWANIA

WYKORZYSTANIE PORTALU DYDAKTYCZNEGO W NAUCE JĘZYKÓW PROGRAMOWANIA WYKORZYSTANIE PORTALU DYDAKTYCZNEGO W NAUCE JĘZYKÓW PROGRAMOWANIA Plan wystąpienia Wprowadzenie Zdalne nauczanie języków programowania Cele i przyjęte rozwiązania Przykładowe elementy kursów Podsumowanie

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

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

SYLABUS/KARTA PRZEDMIOTU

SYLABUS/KARTA PRZEDMIOTU SYLABUS/KARTA PRZEDMIOTU. NAZWA PRZEDMIOTU Programowanie Auto Cad w wizualizacji przemysłowej. NAZWA JEDNOSTKI PROWADZĄCEJ PRZEDMIOT Instytut Politechniczny 3. STUDIA kierunek stopień tryb język status

Bardziej szczegółowo

Załącznik do Uchwały Nr 1/2014/2015 Rady Pedagogicznej Szkoły Podstawowej w Czernikowie z dnia 15.09.2014 r.

Załącznik do Uchwały Nr 1/2014/2015 Rady Pedagogicznej Szkoły Podstawowej w Czernikowie z dnia 15.09.2014 r. Celem doskonalenia sprawności rachunkowej należy: stosować różnorodne ćwiczenia doskonalące sprawność rachunkową, dostosowane do indywidualnych możliwości uczniów; wykorzystywać codzienne okazje do utrwalania

Bardziej szczegółowo

Algorytm. Krótka historia algorytmów

Algorytm. Krótka historia algorytmów Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne

Bardziej szczegółowo

Języki i paradygmaty programowania. I. Wprowadzenie

Języki i paradygmaty programowania. I. Wprowadzenie Języki i paradygmaty programowania I. Wprowadzenie O źródłach wykład został przygotowany w ogromnej części w oparciu o serwis http://wazniak.mimuw.edu.pl/ (zgodnie z licencją serwisu) inne źródła: Wikipedia:

Bardziej szczegółowo

Wstęp do Programowania, laboratorium 02

Wstęp do Programowania, laboratorium 02 Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite

Bardziej szczegółowo

Projekt architektury systemów informatycznych Uniwersytetu Warszawskiego w oparciu o metodykę TOGAF. Tomasz Turski 26.05.2011

Projekt architektury systemów informatycznych Uniwersytetu Warszawskiego w oparciu o metodykę TOGAF. Tomasz Turski 26.05.2011 Projekt architektury systemów informatycznych Uniwersytetu Warszawskiego w oparciu o metodykę TOGAF Tomasz Turski 26.05.2011 Plan prezentacji Architektura korporacyjna Frameworki Pryncypia Metodyka TOGAF

Bardziej szczegółowo

Wzorce oprogramowania Gof (cd) zastosowane w modelu obiektowym

Wzorce oprogramowania Gof (cd) zastosowane w modelu obiektowym Wzorce oprogramowania Gof (cd) (Gang of Four skrót odnoszący się do autorów ksiązki: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software)

Bardziej szczegółowo

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu. Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą

Bardziej szczegółowo

Akredytowane szkolenie i egzamin. Zarządzanie projektami w oparciu o metodykę PRINCE2 Fundation

Akredytowane szkolenie i egzamin. Zarządzanie projektami w oparciu o metodykę PRINCE2 Fundation Akredytowane szkolenie i egzamin. Zarządzanie projektami w oparciu o metodykę PRINCE2 Fundation Opis Progress Project zaprasza do zapoznania się z programem szkolenia organizowanego przez partnera szkoleniowego,

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Mechatronika Rodzaj przedmiotu: obowiązkowy Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Zapoznanie studentów z inteligentnymi

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

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych W procesie tworzenia programów równoległych istnieją dwa kroki o zasadniczym znaczeniu: wykrycie

Bardziej szczegółowo

Rok akademicki: 2014/2015 Kod: IEL s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Rok akademicki: 2014/2015 Kod: IEL s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: - Nazwa modułu: Programowanie obiektowe Rok akademicki: 2014/2015 Kod: IEL-1-408-s Punkty ECTS: 5 Wydział: Informatyki, Elektroniki i Telekomunikacji Kierunek: Elektronika Specjalność: - Poziom studiów:

Bardziej szczegółowo

Projektowanie aplikacji na platformie Android Kod przedmiotu

Projektowanie aplikacji na platformie Android Kod przedmiotu Projektowanie aplikacji na platformie Android - opis przedmiotu Informacje ogólne Nazwa przedmiotu Projektowanie aplikacji na platformie Android Kod przedmiotu 11.3-WI-INFD-PAPA Wydział Kierunek Wydział

Bardziej szczegółowo

Czym jest Ruby on Rails?

Czym jest Ruby on Rails? Czym jest Ruby on Rails? Ruby on Rails - napisany w języku Ruby framework open source do szybkiego tworzenia aplikacji internetowych w oparciu o architekturę MVC David Heinemeier Hansson twórca Rails Ruby

Bardziej szczegółowo

Programowanie w języku C++ Grażyna Koba

Programowanie w języku C++ Grażyna Koba Programowanie w języku C++ Grażyna Koba Kilka definicji: Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i zasad

Bardziej szczegółowo

Java. Wzorce projektowe

Java. Wzorce projektowe IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK SPIS TREŒCI KATALOG ONLINE DODAJ DO KOSZYKA CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWOŒCIACH ZAMÓW CENNIK Java. Wzorce projektowe

Bardziej szczegółowo

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas Analiza i projektowanie obiektowe 2016/2017 Wykład 10: Tworzenie projektowego diagramu klas Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Projektowy

Bardziej szczegółowo

Analiza i projektowanie aplikacji Java

Analiza i projektowanie aplikacji Java Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie

Bardziej szczegółowo

Podręcznik użytkownika Obieg dokumentów

Podręcznik użytkownika Obieg dokumentów Podręcznik użytkownika Obieg dokumentów Opracowany na potrzeby wdrożenia dla Akademii Wychowania Fizycznego im. Eugeniusza Piaseckiego w Poznaniu W ramach realizacji projektu: Uczelnia jutra wdrożenie

Bardziej szczegółowo

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java Cechy C++ Język ogólnego przeznaczenia Można programować obiektowo i strukturalnie Bardzo wysoka wydajność kodu wynikowego

Bardziej szczegółowo

Template method (metoda szablonowa)

Template method (metoda szablonowa) 1/11 Template method (metoda szablonowa) Cel: Definiuje szkielet algorytmu przy pomocy operacji podstawowych. Konkretyzacja poszczególnych kroków składowych pozostawiona klasom potomnym mogą być one zmieniane

Bardziej szczegółowo