SubjectsSubjects(version: 963)
Course, academic year 2013/2014
  
Object Oriented Programming - N143006
Title: Objektově orientované programování
Guaranteed by: Department of Informatics and Chemistry (143)
Faculty: Faculty of Chemical Technology
Actual: from 2013 to 2013
Semester: winter
Points: winter s.:5
E-Credits: winter s.:5
Examination process: winter s.:
Hours per week, examination: winter s.:2/2, C+Ex [HT]
Capacity: unlimited / unlimited (unknown)
Min. number of students: unlimited
State of the course: taught
Language: Czech
Teaching methods: full-time
Teaching methods: full-time
Level:  
Note: course can be enrolled in outside the study plan
enabled for web enrollment
Guarantor: Šimek Miroslav Mgr.
Examination dates   Schedule   
Annotation -
This course introduces students to the principles of object-oriented programming. It builds upon decomposition techniques taught in Programming II and enhances them with object-oriented approach. Students are challenged to create object-oriented design of software applications, express the system in subset of UML diagrams (use case, class, sequence). The programming part begins with introduction to C# programming language (syntax, containers, I/O, exceptions) and finalizes with a medium-scaled software project.
Last update: ROZ143 (10.05.2011)
Aim of the course -

Students will be able to:

JJ:

Transform real-world situation into object model

Describe model using standard UML diagrams

Write a short program using basic C# programming language constructs

Use basic C# programming language libraries

Last update: TAJ143 (02.07.2013)
Literature -

R: Steve McConnell: Code Complete: A Practical Handbook of Software Construction; Microsoft Press; 2nd edition, 2004 ISBN 1556154844

R: Elisabeth Freeman, Eric Freeman, Bert Bates, Kathy Sierra: Head First Design Patterns; O'Reilly Media, 2004 ISBN 0596007124

Last update: TAJ143 (02.07.2013)
Requirements to the exam - Czech

zápočet: naimplementovaný a zdokumentovaný softwarový projekt, průběžná práce na příkladech zadaných na cvičení

zkouška: písemnou formou, teoretická a praktická část

Last update: Šimek Miroslav (19.11.2012)
Syllabus -

1. Top-down application design, system decomposition, namespaces, libraries.

2. Encapsulation principle as a mean of decomposition and complexity management. Class, instance, object. Operations and methods. Message passing, method invocation.

3. Abstraction principle. Separation of contract, interface, implementation.

4. Inheritance principle. Parent class, single and multiple inheritance.

5. Principle of polymorphism. Using polymorphism as a mean of abstraction.

6. Graphical representation of classes and their relationships. Structural UML diagrams (component, class diagram).

7. Computer architecture, information representation within computers. Basic data types, statically and dynamically typed languages. C# language syntax.

8. Exceptional states during program execution. Exceptions.

9. Collections/containers in C#. Mutable and immutable data types. Iterators.

10. File descriptor as an abstraction of I/O. Streams, byte and character access.

11. Software project: requirements analysis, use case diagram. Design of class hierarchy.

12. Software project implementation

13. Software project implementation

14. Software project implementation

Last update: ROZ143 (10.05.2011)
Learning resources -

.NET framework class library http://msdn.microsoft.com/en-us/library/gg145045.aspx

Last update: TAJ143 (02.07.2013)
Registration requirements -

none

Last update: TAJ143 (02.07.2013)
Teaching methods
Activity Credits Hours
Účast na přednáškách 1 28
Příprava na přednášky, semináře, laboratoře, exkurzi nebo praxi 1 28
Práce na individuálním projektu 2 56
Účast na seminářích 1 28
5 / 5 140 / 140
Coursework assessment
Form Significance
Regular attendance 20
Defense of an individual project 20
Examination test 60

 
VŠCHT Praha