Course detail

Programming Techniques I

FSI-SPT Acad. year: 2022/2023 Summer semester

In this course we deal with programming console applications for Windows in C#. For this, more advanced secure object-oriented programming constructions supporting top-down design and wrapping methodologies are used.
We develop applications in the VS 2019 environment using its productivity-enhancing tools.

Language of instruction

Czech

Number of ECTS credits

3

Learning outcomes of the course unit

Development of algorithmic thinking, structured approach to problem solving supported by actual object-oriented technologies and development of creativity.

Prerequisites

Knowledge and skills that meet the conditions for successful completion of the BASICS OF PROGRAMMING (SZP) course are expected.

Planned learning activities and teaching methods

The preferred style is learning by solve simple authentic tasks.

Assesment methods and criteria linked to learning outcomes

Students will prove the acquired knowledge and skills by independent elaboration of a semester project.
A graded credit is awarded on the basis of a point evaluation of a semester project, taking into account the point evaluation of three ongoing projects assigned during the semester. The evaluation is fully in the competence of the teacher according to the valid guidelines of BUT.

Aims

Knowledge and skill to shape students' programming habits with regard to productive writing of robust object-oriented applications under Windows in C# using its more advanced elements and VS 2019 environment tools.

Specification of controlled education, way of implementation and compensation for absences

Teaching takes place according to the weekly syllabi of the course syllabus. Attendance at lectures is expected, at seminars mandatory. Absence from the seminar can be replaced by a separate elaboration of the projects discussed at the given seminar or by elaboration of a substitute project with a possible presentation. The way of compensation missed seminar is fully in the competence of the teacher.

The study programmes with the given course

Programme B-MAI-P: Mathematical Engineering, Bachelor's, compulsory

Type of course unit

 

Lecture

13 hours, optionally

Teacher / Lecturer

Syllabus

1. Encapsulation as system definition, class / structure, object creation / release
2. Member access modifiers, property, automatic property
3. Indexed property
4. Static members, secure code, exceptions and protected blocks
5. Object serialization, binary, text, minimum XML language
6. Inheritance, type compatibility and top-down design
7. Virtual methods and top-down design
8. Delegate, delegate vs. virtual method
9. Interface, interface vs. class
10. Delegate and lamda-functions
11. Minimum on Linq collections and extensions
12. Generic class
13. Event, event management

Computer-assisted exercise

26 hours, compulsory

Teacher / Lecturer

Syllabus

At each seminar, at least one application is written or developed with the teacher's explanation and under his guidance, in which the constructions according to the current topic presented at the lecture are implemented.