Course Unit Code | 638-3012/06 |
---|
Number of ECTS Credits Allocated | 5 ECTS credits |
---|
Type of Course Unit * | Optional |
---|
Level of Course Unit * | Second Cycle |
---|
Year of Study * | |
---|
Semester when the Course Unit is delivered | Summer Semester |
---|
Mode of Delivery | Face-to-face |
---|
Language of Instruction | English |
---|
Prerequisites and Co-Requisites | Course succeeds to compulsory courses of previous semester |
---|
Name of Lecturer(s) | Personal ID | Name |
---|
| S1I28 | doc. Ing. Ivo Špička, Ph.D. |
Summary |
---|
Course gives basis of programming of information systems in workspace of
operation system Windows. It explains technique of event diving programming,
system of sending messages a basic concept of multiple threading programs. In
second part it is explained basic data structures with corresponding algorithms. |
Learning Outcomes of the Course Unit |
---|
Student will understand:
- the principles of IS programming;
- the complex data structures and their usage;
- the comprehensive algorithms, process synchronizations, multithread programming.
Student will be able to create the basic programs for graphical user interface in Windows.
|
Course Contents |
---|
1. The architecture of programs for Windows, server and client program architecture in Windows, messages.
2. Widows API, the main window and the message loop.
3. The object program for Windows, event handling.
4. Elements and components, dialogs and features of control at Windows API.
5. The special features of Win32programs, system registry, threads, exceptions, structured exception.
6. The principle of calling system service, dynamic libraries, dynamic library call.
7. The component technology.
8. The dynamic memory allocation.
9. Data structures, static, dynamic, homogeneous, heterogeneous.
10. The constructor, the selector. Dynamic structures, lists - one-way, two-way, circular, two-way list. Stack. Use the stack: backtracking algorithms, recursion.
11. Passages of a binary tree. Recursive and non-recursive passages algorithms writing. Implementation of some operations on the tree (equivalence structures, equivalence of two trees, copy, destruction, number of leaves, height, find the longest path from the root to the leaf. Sequential search in a file, a field list. Binary search. Binary search trees. Recursive and non-recursive version operations of the BVS.
12.Tables with direct access, the principle index-sequence search. Hash-table. Characteristics and design of the hash (hash) function. Evaluation of search methods.
13. Sorting, basic concepts: stability, naturalness, time and space complexity of sorting algorithms. To sort by multiple keys, shift without moving items. Classification principles of the sort. Ordering on the principle of choice - Bubble-sort and its variants, Heap sort. Ordering fields on the principle of insertion.
14. The principle of sorting sequential files. 3 and 4 tape sorting method sequential files - direct and natural. Recursion, the principles of typical recursive algorithms; transfer between recursive and no recursive registration algorithm, Tower of Hanoi, 8 queens, horses’ road, recursion in graphics.
|
Recommended or Required Reading |
---|
Required Reading: |
---|
PETZOLD, CH. Programming Microsoft® Windows® with C#. Redmond: Microsoft Press, 2002. ISBN 0735613702.
PHILIP, C. a J. IVERSON, 2017. Fundamentals of C# Programming for Information Systems: Black & White Version. Danvers: Prospect Press. ISBN 978-1-943153-17-6. |
ŠPIČKA, I. Programování informačních systémů. Studijní opora k předmětu. Ostrava: VŠB – TUO, 2013.
PETZOLD, CH. Programming Microsoft® Windows® with C#. Redmond: Microsoft Press, 2002. ISBN 0735613702
PHILIP, C. a J. IVERSON, 2017. Fundamentals of C# Programming for Information Systems: Black & White Version. Danvers: Prospect Press. ISBN 978-1-943153-17-6. |
Recommended Reading: |
---|
GUCKENHEIMER, S. a N. LOJE. Agile software engineering with Visual studio: from concept to continuous feedback. Upper Saddle River, NJ: Addison-Wesley, 2012. ISBN 978-0-321-68585-8.
|
GUCKENHEIMER, S. a N. LOJE. Agile software engineering with Visual studio: from concept to continuous feedback. Upper Saddle River, NJ: Addison-Wesley, 2012. ISBN 978-0-321-68585-8.
HONZÍK, J. a kolektiv: Programovací techniky. Brno: VUT, 1987.
PETZOLD, CH. Programování ve Windows, Praha: Computer Press, 2001.
ŠUSTA, R. Programování řízení ve Windows. Praha: ČVUT, 1999. |
Planned learning activities and teaching methods |
---|
Lectures, Individual consultations, Tutorials |
Assesment methods and criteria |
---|
Tasks are not Defined |