Advanced Object Programming in Java

Podobne dokumenty
Lab. Poznanie procesu modelowania świata wirtualnego. Zaznajomienie z algorytmami symulacji zjawisk fizycznych w świecie wirtualnym.

Lab. Efekt 1 - kolokwium wykładowe. Efekt 2, 3 i 4 - samodzielnie rozwiązywane ćwiczenia laboratoryjne.

Sprawdzian ustny lub pisemny, ocena wykonanych projektów.

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

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Język Java i technologie Web - opis przedmiotu

Distributed programming Distributed programming. Informatyka II stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

PRZEWODNIK PO PRZEDMIOCIE

KARTA PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI CELE PRZEDMIOTU

Informatyka II stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

PRZEWODNIK PO PRZEDMIOCIE

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

PRZEWODNIK PO PRZEDMIOCIE

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Programowanie Internetowe Web programming

Auditorium classes. Lectures

12. Wymagania wstępne w zakresie wiedzy, umiejętności i kompetencji społecznych dla przedmiotu/modułu oraz zrealizowanych przedmiotów:

K_W04 K_W04 K_W04. Opis

OPISY KURSÓW. Nazwa kursu: PROGRAMOWANIE SYSTEMÓW ROZPROSZONYCH NA BAZIE STE- ROWNIKÓW PLC. Język wykładowy: polski

Field of study: Computer Science Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

Inżynieria oprogramowania - opis przedmiotu

Programowanie obiektowe 1 - opis przedmiotu

Egzamin / zaliczenie na ocenę*

PRZEWODNIK PO PRZEDMIOCIE

Wydział Matematyki i Nauk Informacyjnych Politechniki Warszawskiej

Field of study: Computer Science Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

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

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS)

Informatyka II stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) Kierunkowy (podstawowy / kierunkowy / inny HES)

Zarządzenie Rektora Politechniki Gdańskiej nr 20/2012 z 19 lipca 2012

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS) Wydział Nauk Historycznych i Pedagogicznych, Instytut Archeologii 4. Kod przedmiotu/modułu 22-AR-S1-KMaA1

PRZEWODNIK PO PRZEDMIOCIE

Wykład Ćwiczenia Laboratorium Projekt Seminarium

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/17

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS)

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

E-1IZ3-06-s6. Inżynieria Programowania. Informatyka. I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Field of study: Computational Engineering Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

KARTA PRZEDMIOTU. Zaliczenie na ocenę

PRZEWODNIK PO PRZEDMIOCIE

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS)

KARTA MODUŁU KSZTAŁCENIA

E-ID1S-08-s5. Informatyka. I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Ekonofizyka 1 (Metody fizyki w ekonomii 1)

KARTA PRZEDMIOTU. Warsztaty z programowania mobilnego w Python. Python Mobile Programming Workshop

1 / 5. Inżynierii Mechanicznej i Robotyki. Mechatronic Engineering with English as instruction language. stopnia

E-ID1G-06-s5. Programowanie współbieżne. Informatyka I stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

A. USYTUOWANIE MODUŁU W SYSTEMIE STUDIÓW

Programowanie sieciowe Network programming PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

Kierunkowy Wybieralny Polski Semestr V

INP002018W, INP002018L

Projektowanie aplikacji na platformie Android Kod przedmiotu

PROJECT. Syllabus for course Negotiations. on the study program: Management

PRZEWODNIK PO PRZEDMIOCIE. Negotiation techniques. Management. Stationary. II degree

KARTA MODUŁU KSZTAŁCENIA

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS)

KARTA PRZEDMIOTU USYTUOWANIE PRZEDMIOTU W SYSTEMIE STUDIÓW. Informatyka. Stacjonarne. Praktyczny

Faculty: Management and Finance. Management

Course syllabus. Mathematical Basis of Logistics. Information Technology in Logistics. Obligatory course. 1 1 English

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS)

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS) Praktyczny Wstęp do programowania. Practical Introduction to Programming

Odnawialne źródła energii. Renewable Energy Resources. Energetics 1 st degree (1st degree / 2nd degree) General (general / practical)

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/17

Z-LOG-1070 Towaroznawstwo Commodity Studies. Logistics 1st degree (1st degree / 2nd degree) General (general / practical)

KARTA PRZEDMIOTU. 1. NAZWA PRZEDMIOTU: Programowanie obiektowe. 2. KIERUNEK: Matematyka. 3. POZIOM STUDIÓW: I stopnia 4. ROK/ SEMESTR STUDIÓW: II/4

Z-ID-306 Technologie internetowe Internet Technologies. Podstawowy Obowiązkowy Polski Semestr III

Informatyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny) niestacjonarne (stacjonarne / niestacjonarne)

KARTA KURSU. Student zna podstawy analizy, projektowania i programowani obiektowego oraz podstawy języka C++.

Podstawy automatyki. Energetics 1 st degree (1st degree / 2nd degree) General (general / practical) Full-time (full-time / part-time)

Podstawy modelowania programów Kod przedmiotu

KARTA PRZEDMIOTU. Tworzenie bezpiecznego kodu D1_13

PRZEDMIOTY WYBIERALNE, SPECJALNOŚCI, MIEJSCE WYKONYWANIA PRACY DYPLOMOWEJ (LICENCJACKIEJ/MAGISTERSKIEJ)

Inzynieria Oprogramowania 2... nazwa przedmiotu SYLABUS A. Informacje ogólne. Wydział Ekonomiczno-Informatyczny w Wilnie

Aplikacje WWW i PHP - opis przedmiotu

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS) 3. Jednostka prowadząca przedmiot Wydział Nauk Historycznych i Pedagogicznych, Instytut Archeologii

Krakowska Akademia im. Andrzeja Frycza Modrzewskiego. Karta przedmiotu. obowiązuje studentów, którzy rozpoczęli studia w roku akademickim 2012/2013

Język angielski B2+ - obowiązkowy kurs języka specjalistycznego na studiach II stopnia dla studentów Wydziału Inżynierii Mechanicznej i Robotyki

KARTA MODUŁU KSZTAŁCENIA

Kod: Liczba punktów ECTS: 6. Nazwa w języku angielskim. Język prowadzenia zajęć. angielski

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS)

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS)

Specjalnościowy Obowiązkowy Polski Semestr trzeci

E-I2S-2001-s1. Informatyka II stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

PRZEWODNIK PO PRZEDMIOCIE

E-2IZ1-03-s3. Informatyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny)

PRZEWODNIK PO PRZEDMIOCIE

Probabilistic Methods and Statistics. Computer Science 1 st degree (1st degree / 2nd degree) General (general / practical)

Egzamin / zaliczenie na ocenę*

KARTA KURSU (realizowanego w module specjalności)

KARTA MODUŁU KSZTAŁCENIA

PRZEWODNIK PO PRZEDMIOCIE

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA Bieżący sylabus w semestrze zimowym roku 2016/17

English B2 course - compulsory course of 135 hours for students of FIRST- CYCLE studies - semester 3/3

Computer Science 1 st degree (1st degree / 2nd degree) General (general / practical)

OPIS PRZEDMIOTU/MODUŁU KSZTAŁCENIA (SYLABUS)

Informatyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny) podstawowy (podstawowy / kierunkowy / inny HES)

APLIKACJE KLIENT-SERWER Client-Server Applications Forma studiów: Stacjonarne Poziom kwalifikacji: I stopnia. Liczba godzin/tydzień: 2W, 2L

Transkrypt:

Kod: 2 51 645 Liczba punktów ECTS: 3 Nazwa przedmiotu Nazwa w języku angielskim Język prowadzenia zajęć Poziom studiów Profil studiów Jednostka prowadząca Kierownik i realizatorzy angielski studia drugiego stopnia A, ogólnoakademicki Instytut Informatyki Stosowanej Bieniecki Wojciech, dr inż. Grabowski Szymon, dr hab. Formy zajęć i liczba godzin w semestrze Wyk. Ćw. Lab. Proj. Sem. Inne Suma godzin w semestrze 3 Cele przedmiotu Efekty kształcenia Metody weryfikacji efektów kształcenia Zaznajomienie studentów z zaawansowanymi technikami programowania w Javie: - wzorce projektowe, - programowanie funkcyjne, - programowanie rozproszone. 1. Zaznajomienie studentów z zaawansowanymi technikami programowania w Javie takimi jak - wzorce projektowe, 2. Zaznajomienie studentów z zaawansowanymi technikami programowania w Javie takimi jak - programowanie funkcyjne, 3. Zaznajomienie studentów z zaawansowanymi technikami programowania w Javie takimi jak - programowanie rozproszone. Po zakończeniu kursu student będzie w stanie: 1. Wyjaśniać subtelności programowania obiektowego. 2. Stosować odpowiednie wzorce projektowe. 2. Budować aplikacje rozproszone z wykorzystaniem odpowiednich technologii Javy. 3. Projektować i implementować złożone aplikacje z zastosowaniem programowania funkcjonalnego. 5. Rozwiązywać praktyczne zadania z użyciem zaawansowanej biblioteki kolekcji Google Guava. 1. Student wyjaśnia subtelności programowania obiektowego. 2. Student stosuje odpowiednie wzorce projektowe. 3. Student buduje aplikacje rozproszone z wykorzystaniem odpowiednich technologii Javy. 4. Student projektuje i implementuje złożone aplikacje z zastosowaniem programowania funkcjonalnego. Efekt 1 i 2 - kolokwium wykładowe. Efekt 3, 4 i 5 - samodzielne zadania laboratoryjne i domowe. Wymagania wstępne Organizacja przedmiotu i treści kształcenia Efekt 1 i 2 - kolokwium wykładowe. Efekt 3, 4 - samodzielne zadania laboratoryjne i domowe. Podstawowa umiejętność programowania obiektowego w Javie, znajomość podstaw inżynierii oprogramowania, w tym modelowania i analizy obiektowej WYKŁAD: 1. Zaawansowane mechanizmy obiektowe w języku Java 2. Wzorce projektowe

3. Aplikacje rozproszone 4. Programowanie funkcyjne 5. Biblioteki rozszerzające język Java LABORATORIUM Laboratorium składa się z podstawowych ćwiczeń laboratoryjnych i trudniejszych zadań domowych realizujących treści wykładu. WYKŁAD - paradygmaty programowania zaimplementowane w Javie - mechanizm wyjątków jako przykład programowania zdarzeniowego - Struktury danych - kolekcje, tablice, listy, zbiory, słowniki - nowe elementy Java8 - strumienie, elementy programowania funkcyjnego - Programowanie generyczne - Refleksja - Adnotacje - Aplikacje sieciowe i bazodanowe. ĆWICZENIA LABORATORYJNE 1. aplikacje w Javie z użyciem pakietów, klas, własnych wyjątków i testów jednostkowych. Tworzenie dokumentacji JavaDoc. 2. Implementacja zadań algorytmicznych z wykorzystaniem kolekcji oraz strumieni Java 8. 3. Strumienie plikowe: formaty tekstowe, binarne, obiektowe i skompresowane. 4. Klasy dynamiczne, refleksja i adnotacje czasu wykonania. 5. Aplikacja sieciowa wielowątkowa. 6. Aplikacja bazodanowa z mechanizmem ORM. Formy zaliczenia - sprawdzenie osiągnięć efektów kształcenia Literatura podstawowa Literatura uzupełniająca Kolokwium wykładowe (5%), zadania laboratoryjne i domowe (5%). C. S. Horstmann, G. Cornell: Core Java, Vol. 2: Advanced Feature, Prentice Hall 28. E. Gamma et al.: Design Patterns: Elements of Reusable Object-Oriented Software, E. Freeman et al.: Head First Design Patterns, O'Reilly Media, 24. 1. C. S. Horstmann, G. Cornell: Core Java, Vol. 2: Advanced Feature, Prentice Hall 28. 2. E. Gamma et al.: Design Patterns: Elements of Reusable Object-Oriented Software, 3. E. Freeman et al.: Head First Design Patterns, O'Reilly Media, 24. http://code.google.com/p/lambdaj/ http://code.google.com/p/guava-libraries/ 1. http://code.google.com/p/lambdaj/ 2. http://code.google.com/p/guava-libraries/ Przeciętne obciążenie studenta pracą własną - ze zdefiniowaniem form pracy własnej Suma godzin wszystkich form zajęć 3 Udział w konsultacjach 5 Udział w pisemnych i/lub praktycznych formach weryfikacji 1 Przygotowanie do kolokwium wykładowego 12 Przygotowanie do laboratorium Przygotowanie prac domowych Suma godzin: 78 Suma godzin powinna mieścić się w zakresie: 75..9

Uwagi Uwagi własne publikowane brak Data aktualizacji 213-5- 13:1:43

Code 2 51 645 ECTS credits: 3 Course name Course name in Polish Language of instruction Level of studies Type of studies Unit running the programme Course coordinator and academic teachers English second-cycle programme nie zdefiniowano Instytut Informatyki Stosowanej Bieniecki Wojciech, dr inż. Grabowski Szymon, dr hab. Form of classes and number of teaching hour per semester Lec. Tut. Lab. Proj. Sem. Other Total number of teaching hour per semester 3 Goals Learning outcomes Learning outcomes verification methods The course aims to acquaint students with advanced programming techniques in Java: - design patterns, - elements of functional programming, - elements of distributed programming. 1. To acquaint students with advanced programming techniques in Java just as - design patterns, 2. To acquaint students with advanced programming techniques in Java just as - elements of functional programming, 3. To acquaint students with advanced programming techniques in Java just as - elements of distributed programming. A student at the end of the course will be able to: 1. Explain subtleties of object-oriented programming. 2. Employ design patterns. 3. Build distributed applications using appropriate Java technologies. 4. Design and implement complex programs using functional paradigms. 5. Solve practical problems using Google Guava advanced collection library. 1. Student explains subtleties of object-oriented programming. 2. Student employs design patterns. 3. Student builds distributed applications using appropriate Java technologies. 4. Student designes and implements complex programs using functional paradigms. Effects 1 and 2 - lecture test. Effects 3, 4, and 5 - lab/home assignments. Prerequisites Course organisation and content Effects 1 and 2 - lecture test. Effects 3, 4 - lab/home assignments. Basic capabilities of Java object-oriented programming, knowlegde of fundamentals of software engineering, including modelling and object-oriented analysis LECTURE: 1. Advanced OOP mechanisms in Java. 2. Design patterns. 3. Distributed applications. 4. Functional programming. 5. Advanced Java libraries.

LABORATORY: Basic lab assignments and (harder) home problems, covering the lecture content. LECTURE - programming paradigms existing in Java - exceptions such as an event-programming example - data structures - collections, tables, lists, sets, dictionaries - new elements of Java 8 - streams, elements of functional programming - generic programming - reflection - annotations - network and database applications. LABORATORY: 1. applications in Java using packages, classes, own exceptions and unit tests. Documentation with JavaDoc. 2. Implementation of algorithmic tasks with collections and Java 8 streams. 3. File Streams: text, binary, object and compressed formats. 4. Dynamic classes, reflection and runtime annotations. 5. multi-threaded network application. 6. database applications with ORM mechanism. Form of assessment Lecture test (5%), lab and home assignments (5%). Basic reference materials Other reference materials C. S. Horstmann, G. Cornell: Core Java, Vol. 2: Advanced Feature, Prentice Hall 28. E. Gamma et al.: Design Patterns: Elements of Reusable Object-Oriented Software, E. Freeman et al.: Head First Design Patterns, O'Reilly Media, 24. 1. C. S. Horstmann, G. Cornell: Core Java, Vol. 2: Advanced Feature, Prentice Hall 28. 2. E. Gamma et al.: Design Patterns: Elements of Reusable Object-Oriented Software, 3. E. Freeman et al.: Head First Design Patterns, O'Reilly Media, 24. http://code.google.com/p/lambdaj/ http://code.google.com/p/guava-libraries/ 1. http://code.google.com/p/lambdaj/ 2. http://code.google.com/p/guava-libraries/ Average student workload outside classroom Total hours of different forms of classes 3 Participation in consultations 5 Participation in written and/or practical forms of assesment 1 Lecture test preparation 12 Lab preparation Home assignments Total hours: 78 Total hours should be in the range: 75..9 Published comments

brak Update date 213-5- 13:1:43