Object Oriented Programming - Lecture 2016/2017
This page contains materials for the first half of lectures for Object Oriented Programming (NMIN201) course that is being/has been taught during winter semester 2016/2017 at Charles University in Prague, Czech Republic.
The first half will be dedicated to C language and we will tenderly touch C++. These lectures will be given by me (Jakub Gemrot).
Web page containing information about lectures from previous year WS 2015/2016 is here (led by Martin Pergel). First half of the lecture will be based on slides from there.
The second half of lectures (about C# language) will be led by Tomáš Holan and corresponding web page should have been found here.
Permalink: http://bit.ly/mff-uk-oop-lecture-2016
Link to the “future”: http://bit.ly/mff-uk-oop-lecture-2017
Dates
Thursday's lecture, 14:00, K4.
You can contact me at any time: jakub.gemrot@gmail.com
Lectures
L01 - 6.10.2016
Topic: Introduction to C Part 1
Details:
- History of language C, Pascal vs. C (types, comments, procedures and functions, operators, return)
Slides: PDF 1 (courtesy of Martin Pergel)
- We've been through first 22 slides
Useful:
L02 - 13.10.2016
Topic: Introduction to C Part 2
Details:
- if, for, while, do-while, switch, header files, stdio.h, getchar, printf, introduction to pointers and low-level access to the memory
Slides:
Useful:
-
- You might encounter a problem including stdio.h into your .c file in VS2015
- In this case, read the discussion above and follow the solution
L03 - 20.10.2016
Topic: Introduction to C Part 3
Details:
- pointers reloaded - m/r/c-alloc, free, strlen/cmp/cpy/ncmp/ncpy, memcpy; struct, union, linked lists
- file handling, preprocessor
Slides:
Useful:
-
- another explanations of what we are going to cover in the lecture
-
- we will create our own during the lecture
L04 - 27.10.2016
Topic: Introduction to C Part 4, Introduction to C++ Part 1
Details:
- preprocessor, variable argument list
- C++ intro - classes, methods, fields, overloaded methods, constructors, destructors
Slides:
L05 - 3.11.2016
Topic: Introduction to C++ Part 2
Details:
- C++ - constructors, destructors, de/allocations, inheritance, statics, virtual methods
Slides: