Logo ČVUT
Loading...
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2011/2012

Programming Techniques

The course is not on the list Without time-table
Code Completion Credits Range Language
X33PTE Z,ZK 4 2+2s Czech
Lecturer:
Jan Faigl (gar.)
Tutor:
Jan Faigl (gar.), Vojtěch Vonásek
Supervisor:
Department of Cybernetics
Synopsis:

Overview of selected programming techniques is given: theory of complexity, search and sort algorithms, data structures, metadata and XML, parallel processes, their management and co-operation in OS, resource sharing in the operating system context, basic concepts of structural and object-oriented analysis and programming, software system architectures, management of complex software systems' development.

Requirements:

Active participation in labs, elaboration of practical part.

Syllabus of lectures:

1. Introduction, history, and overview of programming techniques

2. Elements of the theory of complexity

3. Recursive programming, recursive and reentrant modules

4. Data structures, implementation

5. Search and sort algorithms and their complexity.

6. Hashing and indexing

7. Data compression algorithms, lossless vs. lossy data compression, Shannon theory

8. Metadata and XML - basic concepts a guidelines

9. Parallel/pseudoparallel processes, their co-operation, synchronization and resource sharing.

10. Parallel programming

11. Basics of software engineering, software „physics“

12. Software requirements specification, types of specifications

13. Basics of structured system analysis and design, object-oriented analysis and design

14. Management of complex software projects

Syllabus of tutorials:

1. Introduction to the tasks solved in work groups

2. Submission of the first problem domain tasks (searching and sorting tasks)

3. Individual task solving (1)

4. Individual task solving (2)

5. Presentation and defend of results

6. Submission of the second problem domain tasks (parallel programming tasks)

7. Individual task solving (1)

8. Individual task solving (2)

9. Presentation and defend of results

10. Submission of the third problem domain tasks (system analysis tasks)

11. Individual task solving (1)

12. Individual task solving (2)

13. Presentation and defend of results

14. Demonstration of distributed multiagent system

Study Objective:
Study materials:

[1] Wirth, N.: Algorithm + Data Structures = Program. New Jersey: Prentice-Hall, 1975

[2] Louden, Kenneth, C.: Programming Languages. Principles and Practice. Massachusetts: PWS-Kent, 1993

[3] Jalote, Pankaj: An Integrated Approach to Software Engineering. New York, Springer-Verlag, 1997

Note:
Further information:
No time-table has been prepared for this course
The course is a part of the following study plans:
Generated on 2012-7-9
For updated information see http://bilakniha.cvut.cz/en/predmet11591704.html