Fundamentals of Programming
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
00ZPR | Z | 4 | 0+4 | English |
- Course guarantor:
- Lecturer:
- Tutor:
- Supervisor:
- Faculty of Nuclear Sciences and Physical Engineering
- Synopsis:
- Requirements:
- Syllabus of lectures:
-
Outline:
I. The basics of writing clean code
1. Formatting
2. Data structures
3. Naming of variables
4. Rules for writing functions
5. Handling of errors, exceptions
6. Comments
II. Code development
1. Coding conventions
2. Specification and design
3. Testing of code
4. Refactoring
5. Documentation
Outline (exercises):
The excercise is an integral part of the course, its contents is given by the subject's sylabus.
- Syllabus of tutorials:
- Study Objective:
-
Knowledge:
How to write clean code, coding conventions. Principles of defensive programming, code management and guidelines for refactoring. How to write documentation. Code structure and functionality, creating of consistent blocks and their testing. Object-oriented design, open for changes. Development of clean and comprehensible code.
Skills:
The student learns to write transparent code, which is easy to understand by other developers, flexible in terms of adding new functionality and easy for debugging.
Requirements:C/C++ programming, object-oriented programming
Key words:Clean code, coding conventions, defensive programming, test driven development, object-oriented design, refactoring, documentation.
- Study materials:
-
Key references:
[1] R.C. Martin, Clean Code: A Handbook of Agile Software Craftmanship, Prentice Hall 2009
[2] S. McConnell, Code Complete, Second Edition, Microsoft Press, 2004
Recommended references:
M. Fowler, Refactoring: Improving the Design of Existing Code, Addison-Wesley, 2002
- Note:
- Further information:
- No time-table has been prepared for this course
- The course is a part of the following study plans: