Дисциплини

23 Програмни системи

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

Анотация


Дисциплината "Програмни системи" запознава студентите от II курс, спец. "КСТ" със средата, техниката и технологиите за програмиране на приложения в средата WINDOWS. В дисциплината се разглеждат програмотехники за базово програмиране под WINDOWS (обработка на съобщения, работа с менюта, с диалогови и графични елементи и др.), а както и инструментални и програмни средства за създаване на комплексни приложения (DLL, COM, MFC, ATL, ActiveX и ODBC-интерфейс).
Дисциплината е разпределена в два раздела, като особено важен е втори раздел, който третира проблемите на програмирането на сложни приложения в средата WINDOWS.
Дисциплината се основава на предхождащите я "Дискретни структури" - теоретични познания по информатика; "Cинтез и анализ на алгоритми" - програмотехника и програмиране на С/C++; "Обектно-ориентирано програмиране" - програмиране на езика С++;
Изходните връзки на дисциплината се представят от паралелните дисциплини: "Бази данни и информационни системи", "Програмиране на JAVA", "Програмни технологии в Интернет" и следващите дисциплини в магистърския курс по "Microsoft-технологии",
а както и курсови проекти по програмиране и специализации.

В рамките на курса се провежда и курсова работа, чието съдържание обхваща програмиране и използване на инструментални средства в малък до среден проект. Лабораторните упражнения се изпълняват на MS Visual Studio X.0. Учебната програма включва и форми за семестриален контрол, базиран на точкова система


Съдържание


Тема 1. Инструментални средства за програмиране в среда WINDOWS. Обектно програмиране в среда WINDOWS. Обекти. Обработка и изпращане на съобщения. Средства за синхронизация. Архитектура на средата WINDOWS. Прозорци. Атрибути. Типове съобщения. Диспечер на съобщенията. Основни функции на WINDOWS.
Тема 2. Обектно програмиране в среда WINDOWS. Обекти. Полиморфия и наследяване на обекти в средата WINDOWS. Управление на ресурсите във WINDOWS. Управление на оперативната памет. Управление на разделяемите ресурси.
Тема 3. Инструментални средства. Компилатор. Динамични библиотеки. Средства за връзка между приложения в средата WINDOWS. Структура наWIN32-приложение. Проста примерна програма за управление на прозорец.
Тема 4. Управление на прозорци във WINDOWS. Работна област. Контекст на устройствата (GDI). Обработка на съобщения (събития) от клавиатура, таймер и мишка. Извеждане на векторна графика, запълване на области, бизнес-графика. Работа с менюта. Обслужваща функция. Създаване, показване и модификация на менюта.
Тема 5. Ресурси: диалогови кутии, диалогови елементи. Език за дефиниране на ресурси Управление на диалогови елементи във Win32-приложение. Съобщения, функции за управление на диалогови елементи (инициализация, постановяване и поучаване на стойности).
Тема 6. Интерактивна графика и управление на визуални елементи. Drag&Drop с мишката, Маркиране и влачене на графични елементи. Примерна програма за визуална работа в работната област на графичен прозорец.
Тема 7. Достъп до файловата система. Типове файлове. Файлове и стиймове. Форматиране и конвертиране на стриймове и низове. Последователен и директен достъп до елементите на файлове.
Тема 8. Работа с по-сложни контроли във Windows: списъчен (табличен) контрол и дървовиден контрол.
Тема 9. Технологии за програмиране в средата WINDOWS.   Създаване на динамични библиотеки (DLL) в среда WINDOWS. Импорти и експорти. Примерен опростен DLL и клиентска програма за достъп до DLL.
Тема 10. MFC и ActiveX контроли. Примерна програма, която включва стандартен ActiveX контрол
Тема 11. Компонентен обектен модел (COM), същност, COM-интерфейси. Регистрация на COM-модули. Функции на COM-обектите.
Тема 12. ActiveTemplateLibrary (ATL COM). Създаване на ATL-клиентска и ATL-сървърна част.
Тема 13. Управление на бази от данни. ODBC-интерфейс. Извадки (RecordSet) от базата. Примерно приложение за достъп до база от данни на MS-ACCESS.