Дисциплини

2 Приложно програмиране със С# и Visual Studio Net

Седмичен хорариум 2+0+2
Форма на контрол Изпит

Анотация


Основната цел на дисциплината "Приложно програмиране със C# и Visual Studio .NET" е да запознае студентите от магистърската степен на специалност "Компютърни системи и технологии" с ансамбъла от .NET технологии актуални и перспективни компонентно и обектно-ориентирани технологии за разработване на програмни приложения. В дисциплината се разглеждат архитектурата и особеностите на .NET програмния модел. Основният акцент се поставя върху спецификите на езика C#, чрез разработка на приложения в Windows.

Дисциплината се базира на редица дисциплини от бакалавърския курс на обучение за специалност КСТ, предполага се, че студентите имат добри познания в обектно –ориентираното програмиране и е непосредствено свързана със следващи магистърски курсове, като „Разпределени приложения със C# и Visual Studio.Net”, „Софтуерни шаблони за проектиране” и др. Особено внимание е отделено на логическата последователност, взаимната свързаност и преходите между отделните теми. Освен необходимата теоретична част, всяка тема съдържа примерни програми и фрагменти от програми. Разглеждат се и се анализират различни сценарии за изграждане на програмни решения в зависимост от спецификата на решаваните проблеми. Дисциплината и разработеното за нея учебно пособие дават на студентите теоретични знания и практически умения, които могат да се използват при разработване на дипломна работа, както и за придобиване на сертификати на Microsoft.

Съдържание


Тема 1. .NET технологии. Архитектура и особености на Microsoft .NET Framework
1.1. Развитието на софтуерните технологии и Microsoft.NET
1.2. Архитектура и особености на .NET Framework
1.3. Езикът C#
Тема 2. Особености на компилацията и изпълнението на .NET приложения. Същност на машинно-независимия език MSIL. Организация на ансамбли (assemblies).
2.1. Особености на компилацията на .Net приложения
2.2. Особености на изпълнението на .Net приложения
2.3. Организация на ансамбли
Тема 3. Система от типове в .NET модела. Типове-стойности и типове-референции. Примитивни типове и типове, дефинирани от потребителя.
3.1. Система от типове в .NET модела (Common Type System - CTS)
3.2. Типове-стойности и типове-референции.
3.3. Примитивни типове и типове, дефинирани от потребителя
Тема 4. Класове и структури. Модификатори на достъпа. Променливи и константни полета. Статични и екземплярни членове. Конструктори и инициализатори. Особености на наследяването
4.1. Класове и структури: прилики и разлики. Особености на наследяването.
4.2. Членове на клас в .NET Framework
4.3. Модификатори на достъпа
Тема 5. Свойства (properties) и индексатори. Методи за извличане и модифициране на полета (get и set методи).
5.1. Свойства (properties)
5.2. Индексатори
Тема 6. Методи. Особености на предаването на параметри. Полиморфизъм. Предефиниране на методи.
6.1. Статични и екземплярни методи. Особености на предаването на параметри. Методи с променлив брой параметри.
6.2. Полиморфизъм на методи
Тема 7. Интерфейси в C#. Абстрактни класове
7.1. Реализиране и използване на интерфейс
7.2. Абстрактни класове
Тема 8. Оператори в C#. Управляващи програмни конструкции.
8.1. Последователни оператори и управляващи програмни конструкции в C#
Тема 9. Работа с низове и регулярни изрази. Основни операции и форматиране.
9.1. Символни низове и константи в C#
9.2. Регулярни изрази в C#. Основни класове за работа с регулярни изрази.
Тема 10.Видове колекции предимства и недостатъци. Изброяване на обекти. Масиви в Net Framework.
10.1. Класове, имплементиращи колекции в FCL (Framework Class Library) на .NET Framework
10.2. Масиви в Net Framework – видове и особености.
Тема 11.Основни типове колекции с общо предназначение и операции върху тях.
11.1. Списъчни колекции
11.2. Речникови колекции
Тема 12.Специални и силно типизирани колекции в .Net Framework.
12.1. Специални колекции
12.2. Силно типизирани колекции
Тема 13.Обработка на изключения. Същност на изключенията, генериране и прихващане на изключения
13.1. Основна концепция при обработка на изключенията. Сценарии за обработка на изключенията. Препоръчвани практики.
Тема 14.Даннови потоци и файлове. Четене и запис на низове и потоци. Работа с директории и файлове.
14.1. Основни класове и методи за работа с файлове и директории.
Тема 15.Управление на паметта и ресурсите. Същност и управление на механизма за "събиране на боклука". Делегати, събития и ламбди в C#.