Course detail
Modern Methods of Programming
FSI-SR3 Acad. year: 2018/2019 Summer semester
Architecture of .NET Framework, CLR managed execution environment, C# language, Common Type System (CTS), .NET components (assemblies), Framework Class Library
Language of instruction
Czech
Number of ECTS credits
4
Supervisor
Department
Learning outcomes of the course unit
The most important topics covered include: Architecture of .NET Framework, CLR managed execution environment, C# language, Common Type System (CTS), .NET components (assemblies), Framework Class Library. Also dealt with is working with XML, creating graphical user interface with Windows Forms.
Prerequisites
Students are expected to be familiar with basic programming and have knowledge of basic object-oriented programming principles. No formal background in computer science is expected.
Planned learning activities and teaching methods
The course is taught through lectures explaining the basic principles and theory of the discipline. Exercises are focused on practical topics presented in lectures.
Assesment methods and criteria linked to learning outcomes
Graded course-unit credit is awarded on the following conditions: 30% on weekly programming assignments, 70% on the individual project. Participation in the lessons may be reflected in the final mark.
Aims
The course objective is to make students familiar with the principles of application development for the Microsoft .NET Framework.
Specification of controlled education, way of implementation and compensation for absences
Attendance at lectures is recommended, attendance at seminars is required.
The study programmes with the given course
Programme B3A-P: Applied Sciences in Engineering, Bachelor's
branch B-MAI: Mathematical Engineering, compulsory
Type of course unit
Lecture
13 hours, optionally
Teacher / Lecturer
Syllabus
1 .NET Framework Architecture
2. Common language Runtime (CLR); Common Language Specification (CLS); Language Integration;
3. Visual Studio .NET development environment
4. Introduction to C# language
5. Object-oriented concepts in .NET
6. Namespaces; Exceptions handling
7. Common type system
8. Delegates and events
9. Attributes
10. Arrays and collections
11. Working with strings; Regular expressions
12. Memory and resource management
13. Input/output; Working with XML; Serialization
14. Windows Forms
Computer-assisted exercise
26 hours, compulsory
Teacher / Lecturer
Syllabus
1. Intermediate Language (IL); .NET execution model
2. Primitive data types; Enumerations; Expressions; Statements
3. Control structures (if, for, while, do..while, foreach)
4. Visual Studio .NET development environment
5. Classes and interfaces; constructors, methods, fields, constants, access modifiers; Inheritance and polymorphism
6. Namespaces; Exceptions handling
7. System, object, equality, hash codes, cloning; Value types & reference types, boxing and unboxing; type conversions and casting
8. Delegates and multicast delegates; events
9. Using attributes; creating custom attributes
10. Arrays; jagged vs. multidimensional arrays; collections and enumerators; lists, dictionaries, hash tables, sorted lists
11. Strings, strings manipulation (StringBuilder), string formatting; Unicode, encodings, globalization and internationalization; regular expressions language
12. Managed heap and garbage collection; destructors and finalizers
13. Streams, readers/writers; files and directories; asynchronous input/output; Basic XML concepts; XML classes; DOM classes and XmlReader;
14. Windows Forms programming model, basic classes (Component, Control, ScrollableControl, ContainerControl); forms and dialogs; basic controls (Label, TextBox, Button); adding controls to forms; handling events;