SylabUZ

Generate PDF for this page

Object-oriented design and programming - course description

General information
Course name Object-oriented design and programming
Course ID 11.3-WE-BEP-PPO
Faculty Faculty of Computer Science, Electrical Engineering and Automatics
Field of study E-business
Education profile practical
Level of studies First-cycle studies leading to Engineer's degree
Beginning semester winter term 2021/2022
Course information
Semester 2
ECTS credits to win 5
Course type obligatory
Teaching language polish
Author of syllabus
  • dr inż. Tomasz Gratkowski
Classes forms
The class form Hours per semester (full-time) Hours per week (full-time) Hours per semester (part-time) Hours per week (part-time) Form of assignment
Lecture 30 2 18 1,2 Credit with grade
Laboratory 30 2 18 1,2 Credit with grade

Aim of the course

Przedstawienie podstawowych pojęć związanych z programowaniem i projektowaniem obiektowym oraz ich realizacją w środowisku Java. Zapoznanie z nowoczesnymi środowiskami deweloperskimi wspierającymi wytwarzanie oprogramowania na platformie Java.

Prerequisites

Brak

Scope

Podstawy kompilacji i uruchamiania programów na platformie Java. Omówienie środowiska Java Development Kit oraz zintegrowanych środowisk deweloperskich IDE dla platformy Java.

Podstawy programowania imperatywnego i strukturalnego w języku Java. Typy danych, zmienne proste i referencyjne, literały, operatory, tablice, instrukcje sterujące, zasięg widoczności zmiennych, funkcje, właściwości zmiennych.

Podstawy programowania obiektowego w języku Java. Klasy i instancje, typy wyliczeniowe, pakiety, właściwości klas i metod. Zasady konstrukcji obiektów i poznanie mechanizmu czyszczenia pamięci (kolektora śmieci).

Mechanizmy i właściwości programowania obiektowego. Dziedziczenie, polimorfizm i enkapsulacja. Projektowanie złożonych typów obiektowych przy użyciu kompozycji i dziedziczenia.

Zaawansowane techniki obiektowe. Tworzenie interfejsów programistycznych z wykorzystaniem klas abstrakcyjnych i interfejsów. Rozszerzanie interfejsów. Klasy wewnętrzne i klasy statycznie zagnieżdżone.

Obsługa narzędzi deweloperskich na platformie Java. Tworzenia dokumentacji API w środowisku Javy. Archiwizacja programów i bibliotek Javy. Mechanizmy wdrażania i automatycznej instalacji programów. Obsługa debugera. Podstawy tworzenia programów odpornych na błędy. Metody walidacji danych, obsługa sytuacji wyjątkowych.

Wybrane zagadnienia implementacyjne języka Java. Klasy użytkowe, klasy strumieniowe do obsługi systemu wejścia i wyjścia, przechowywanie obiektów w kolekcjach, tworzenie graficznego interfejsu użytkownika.

Teaching methods

Wykład - wykład konwencjonalny z wykorzystaniem wideoprojektora.

Laboratorium - zajęcia praktyczne w laboratorium komputerowym.

Learning outcomes and methods of theirs verification

Outcome description Outcome symbols Methods of verification The class form

Assignment conditions

Wykład - sprawdzian w formie pisemnej realizowany na koniec semestru.

Laboratorium – ocena końcowa stanowi sumę ważoną ocen uzyskanych za realizację poszczególnych ćwiczeń laboratoryjnych oraz sprawdzianów kontrolnych weryfikujących przygotowanie merytoryczne do ćwiczeń.

Ocena końcowa = 50 % oceny zaliczenia z formy zajęć wykład + 50 % oceny zaliczenia z formy zajęć laboratorium.

Recommended reading

  1. Sierra K., Bates B.: Java. Rusz głową! Wydanie II, Helion, 2010
  2. Horstmann, C.S., Cornell, G.: Java., Podstawy, Wydanie dziewiąte, Gliwice, Helion, 2013
  3. Horstmann, C.S., Cornell, G., Java. Techniki zaawansowane, Wydanie dziewiąte, Gliwice, Helion, 2013
  4. Wróblewski, M.: Algorytmy, struktury danych i techniki programowania. Wydanie V, Helion, 2015
  5.  Cormen T. H., Leiserson C. E., Rivest R. L, Stein C., Wprowadzenie do algorytmów, Wydawnictwo Naukowe PWN, 2018

Further reading

  1. Martin, R.C.: Czysty kod. Podręcznik dobrego programisty, Helion, 2010
  2. Eckel, B., Thinking in Java, Wydanie IV, Warszawa, Helion, 2006
  3. Lis, M., Praktyczny kurs Java, Gliwice, Helion, 2015
  4. Coldwind G., Zrozumieć programowanie, Wydawnictwo Naukowe PWN, 2018

Notes


Modified by dr hab. inż. Marek Kowal, prof. UZ (last modification: 21-04-2021 08:39)