University of Warsaw - Central Authentication System
Strona główna

Object-oriented programming

General data

Course ID: 1000-212bPO
Erasmus code / ISCED: 11.301 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (unknown)
Course title: Object-oriented programming
Name in Polish: Programowanie obiektowe
Organizational unit: Faculty of Mathematics, Informatics, and Mechanics
Course groups:
ECTS credit allocation (and other scores): (not available) Basic information on ECTS credits allocation principles:
  • the annual hourly workload of the student’s work required to achieve the expected learning outcomes for a given stage is 1500-1800h, corresponding to 60 ECTS;
  • the student’s weekly hourly workload is 45 h;
  • 1 ECTS point corresponds to 25-30 hours of student work needed to achieve the assumed learning outcomes;
  • weekly student workload necessary to achieve the assumed learning outcomes allows to obtain 1.5 ECTS;
  • work required to pass the course, which has been assigned 3 ECTS, constitutes 10% of the semester student load.

view allocation of credits
Language: Polish
Type of course:

obligatory courses

Requirements:

Introduction to programming (functional approach) 1000-211bWPF
Introductory programming 1000-211bWPI

Short description:

Presentation of fundamental notions and problems of object-oriented programming. During the course the notions of a class and an object are introduced as well as encapsulation, inheritance and polymorphism. Formalisms for describing object-oriented designs and programs are presented. During laboratory hours students are supposed to write small programs illustrating topics presented in the lectures and describe their solutions using adopted design notation.

Full description:

* Object-oriented domain modeling

* Basics of UML notation

* Introduction to object-oriented programming

* Object-oriented programming in Java

* Data hiding, encapsulation

* Creation, initialization and destruction of objects

* Inheritance and polymorphism

* Interfaces

* Exceptions

* Generics and collections

* Streams, serialization

* Design patterns

* Graphical user interface

Bibliography:

1. J . Gosling, B. Joy, G. Steele, G. Bracha, Java Language Specification, Addison-Wesley Professional, 3rd edition, 2005.

2. G. Booch, J. Rumbaugh, I. Jacobson, The Unified Modeling Language User Guide (2nd Edition), Addison-Wesley Professional, 2005.

3. E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley Professional, 1st edition, 2005.

4. C. Larman, Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Prentice Hall, 3st edition, 2004.

5. B. Eckel, Thinking in Java, Prentice Hall, 4th edition, 2006.

Learning outcomes: (in Polish)

Wiedza

- ma uporządkowaną wiedzę w zakresie programowania obiektowego [K_W02]

- stosuje kapsułkowanie i rozumie problemy wynikające z jego braku, [K_W09]

- zna i stosuje ze zrozumieniem dziedziczenie, rozumie zasadę podstawialności, [K_W09]

- rozumie i potrafi zastosować polimorfizm, [K_W09]

- zna podstawowe rodzaje kolekcji, [K_W09]

- zna pojęcie wyjątku, [K_W09]

- rozumie pojęcie interfejsu, [K_W09]

- zna wybrane wzorce projektowe, [K_W10]

- rozumie znaczenie testów jednostkowych. [K_W10]

Umiejętności

- potrafi kompilować i wykonywać programy w wybranym języku obiektowym, [K_U05]

- potrafi wykonać analizę wymagań dla postawionego problemu oraz obiektowo projektuje oprogramowanie, [K_U17]

- posługuje się wzorcami projektowymi [K_U18, K_U24]

- potrafi obiektowo zaimplementować prosty system zgodnie z podaną specyfikacją [K_U19]

- potrafi zastosować w swoich programach wyjątki, [K_U19]

- potrafi pisać programy przetwarzające duże zbiory danych za pomocą kolekcji, [K_U08]

- potrafi definiować testy jednostkowe i wykorzystać do przetestowania stworzonego przez siebie oprogramowania. [K_U21]

Kompetencje

- jest przygotowany do krytycznej oceny posiadanej wiedzy i odbieranych treści [K_K01]

- jest gotów do pracy z zachowaniem uczciwości intelektualnej w działaniach własnych i innych osób [K_K02]

- znaje znaczenie wiedzy w rozwiązywaniu problemów poznawczych i praktycznych, potrafi wyszukiwać informacje w literaturze [K_K03]

Assessment methods and assessment criteria: (in Polish)

Klasówka, programy zaliczeniowe, egzamin.

Końcowa ocena wyliczana wg wzoru:

L + max((3/2) * E, E + K)

gdzie:

L - liczba punktów z laboratorium (0..30),

K - liczba punktów z klasówki (0..20),

E - liczba punktów z egzaminu (0..40).

Do zdania przedmiotu potrzeba 60% punktów (54). Skala ocen liniowa (progi poszczególnych ocen to: 54, 61, 68, 75, 82).

Żeby być dopuszczonym do egzaminu w pierwszym terminie trzeba zaliczyć ćwiczenia i laboratorium. Zaliczenie polega na:

zdobyciu co najmniej 8 punktów z klasówki (z klasówki poprawkowej można dostać 0 lub 8 punktów),

oraz co najmniej 15 punktów z laboratorium.

This course is not currently offered.
Course descriptions are protected by copyright.
Copyright by University of Warsaw.
Krakowskie Przedmieście 26/28
00-927 Warszawa
tel: +48 22 55 20 000 https://uw.edu.pl/
contact accessibility statement USOSweb 6.8.0.0-7 (2022-11-16)