Course: Programming II

« Back
Course title Programming II
Course code KI/PGL2
Organizational form of instruction Lecture + Lesson
Level of course Bachelor
Year of study 3
Semester Summer
Number of ECTS credits 6
Language of instruction Czech, English
Status of course Compulsory, Compulsory-optional
Form of instruction unspecified
Work placements unspecified
Recommended optional programme components None
Lecturer(s)
  • Beránek Pavel, Ing. Mgr.
  • Fišer Jiří, Mgr. Ph.D.
  • Kubera Petr, RNDr. Ph.D.
  • Babichev Sergii, prof. DSc.
Course content
1. properties : encapsulation, getters and setters, object states 2. shared interface: interface, polymorphism, library interfaces 3. inheritance : reusability of code, inheritance vers. composition 4. basic design patterns: abstract factory, factory method, bridge, decorator, state, etc. 5. sharing on class level : static fields and methods 6. collections (specialized colecctions, iterators) 7. exceptions (throwing and catching of exceptions) 8. reflection (RTTI, plugins) 9. generics (simple generic class and interfaces)

Learning activities and teaching methods
unspecified
Learning outcomes
Second part of introductory programming course develops students' skills in the field of practical object oriented programming. The core part of course is based on object polymorphism (provided by mechanism of shared interfaces and class inheritance) and its utilization in more complex application in form of standard design patterns. This course also covers some parts of standard libraries (GUI, regular expressions, XML processing) and principles of exceptions.

Prerequisites
Teaching in English is meant only for erasmus and foreign students. In the case of a small number of students is teaching in a form of individual consultations.
KI/PGL1

Assessment methods and criteria
unspecified
tutorials: homework assignments assigned by instructor lectures: homework assignment assigned by lecturer (prerequisite for oral exam)
Recommended literature
  • Albahari J., Albahari B. C# 3.0 in a Nutshell: A Desktop Quick Reference.
  • Bayer J. C# 2005 : velká kniha řešení. Computer Press, Brno, 2007. ISBN 978-80-251-1620-3.
  • Bishop J. M. C# 3.0 design patterns. O'Reilly, Beijing, 2007. ISBN 0-596-52773-X.
  • Bishopová J. M. C# : návrhové vzory. Zoner Press, Brno, 2010. ISBN 978-80-7413-076-2.
  • Etsker S. J. Design patterns in C#. Addison-Wesley, Boston, 2004. ISBN 0-321-12697-1.
  • Gamma E. et al. Návrh programů pomocí vzorů: stavební kameny objektově orientovaných programů. Grada Publishing, Praha, 2003. ISBN 978-80-247-0302-2.
  • Nash T. C# 2010 : rychlý průvodce novinkami a nejlepšími postupy. Computer Press, Brno, 2010.
  • Pecinovský R. Návrhové vzory. Computer Press, Praha, 2007.
  • Virius M. C# pro zelenáče. Neocortex, 2007.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester
Faculty: Faculty of Science Study plan (Version): Mathematics (double subject) (A14) Category: Mathematics courses 3 Recommended year of study:3, Recommended semester: Summer
Faculty: Faculty of Science Study plan (Version): Mathematics (double subject) (A14) Category: Mathematics courses 3 Recommended year of study:3, Recommended semester: Summer
Faculty: Faculty of Science Study plan (Version): Information Sciences (double subject) (A14) Category: Informatics courses 1 Recommended year of study:1, Recommended semester: Summer
Faculty: Faculty of Science Study plan (Version): Information Sciences (double subject) (A14) Category: Informatics courses 1 Recommended year of study:1, Recommended semester: Summer
Faculty: Faculty of Science Study plan (Version): Mathematics (double subject) (A14) Category: Mathematics courses 3 Recommended year of study:3, Recommended semester: Summer
Faculty: Faculty of Science Study plan (Version): Information Systems (A14) Category: Informatics courses 1 Recommended year of study:1, Recommended semester: Summer