CSCB579 Програмиране на приложения с Microsoft Visual C# .NET

Анотация:

Целта на курса е да запознае студентите с основите на програмиране под .NET, използвайки езика C#.

Курсът започва с въведение в .NET и C#.

Следва разглеждане на основните елементи на езика С# в детайли: данни, операции, оператори, изключителни ситуации, класове, обекти, наследяване. Всяка от темите е съпроводена с демонстрация и самостоятелна лабораторна работа.

Лабораторни упражнения ще се провеждат посредством MS Visual Studio.

прочети още
Информатика

Преподавател(и):

гл. ас. Лъчезар Томов  д-р
гл. ас. Димитър Петров  д-р

Описание на курса:

Компетенции:

Успешно завършилите курса студенти:

1) знаят:

• Основните характеристики и особености на програмиране в среда на .Net Framework

• Характеристиките и елементите на езика C#

2) могат:

• Да работят в среда на MS Visual Studio.

• Да създават, програмират и проследяват изпълнението на програми, написани на C#.


Предварителни изисквания:
Студентите трябва да познават основите на Обектно-ориентирано програмиране и да имат знания поне по един език за програмиране.

Форми на провеждане:
Редовен

Учебни форми:
Лекция

Език, на който се води курса:
Български

Теми, които се разглеждат в курса:

  1. .Net Framework – основни понятия и компоненти. Visual Studio 2017 –работна среда. Програма на C#. Компилиране, изпълнение, дебъгване. Основи на езика C#. Пространство на имената.
  2. Примитивни типове данни Стойностни и референтни типове данни. Преобразуване на типове. Клас Convert и методите му. Основни оператори – аритметични, логически и управляващи. Клас Console. Пренасочване на вход/изход. Просто конзолно приложение. Метод Main.
  3. Цикли, оператори за цикли. Масиви – видове : едномерни, многомерни, назъбени (jagged). Клас Array; Деклариране и инициализация. Работа с масиви
  4. Принципи на ООП – наследяване, абстракция, капсулация, полиморфизъм. Шаблони за дизайн. Обекти и класове. Атрибути и поведение на класове – полета данни, свойства, методи, събития. Конструктори.
  5. Методи. Модификатори за достъп. Формални и фактически (аргументи) параметри. Обмен. Полета vs локални променливи. Overriding и Overloading на методи
  6. Интерфейси. Множествено наследяване и имплементация. Вградени интерфейси.
  7. Свойства. Свойства vs полета. Видове аксесори за достъп. Примери. Създаване на Windows Form приложение. Работа с контроли Label, TextBox, Button. Клас MessageBox. Динамични контроли
  8. Делегати и събития. Генериране и обработка на събития. Тест 1
  9. Изключения. Прихващане и обработка на изключения
  10. Вход/Изход в C#. Потоци. Работа с файлове. Диалози за работа с файлове
  11. Сериализация и десериализация на обекти. Текстова и двоична сериализация.
  12. Динамични колекции – ArrayList, SortedList, Stack, Queue.
  13. Работа с компоненти. Създаване, компилиране и свързване на динамични библиотеки (.dll).
  14. Рисуване в Windows Form. Класове Graphics, Brush, Pen. Тест2
  15. Асемблита, пространства на имена, директиви на препроцесора, рефлексия Атрибути. Предаване. Потребителски атрибути. Поправка на Тест1 и Тест2

Литература по темите:

Основна:

• Albahari, J., & Albahari, B. (2018). C# 7.0 in a Nutshell. O’Reilly Media, Inc.

• Brunetti, R., & Boncinelli, V. (2013). Exam Ref 70-485 Advanced Windows Store App Development using C# (MCSD) . O’Reilly Media, Inc.

• Price, M. J. (2017). C# 7.1 and .NET Core 2.0 – Modern Cross-Platform Development, Third Edition. Packt.

• Sharp, J. (2015). Microsoft Visual C# Step by Step (8th Edition) (Developer Reference). Microsoft Press.

Допълнителна:

• Wouter de KortRichter (2013), Programming in C# - Exam Ref 70-483, O'Reilly Media, Inc.

• Hilyard, Stephen Teilhet. (2015), C# 6.0 Cookbook, 5fth Edition, O'Reilly Media, Inc.

• Joseph Albahari and Ben Albahari, (2016), C# 6.0 in a Nutshell, O'Reilly Media, Inc.

• Mark Michaelis , (2015), Essential C# 6.0, 5fth Edition, Addison-Wesley Microsoft Technology