| Лектор | проф. д-р Петър Бърнев |
| Анотация |
Независимо от конкретния език, който се използва, програмирането се основава на определени основни понятия, принципи и методи. Познаването на общите положения на процеса на програмирането и на основните характеристики на програмите и програмните системи позволява да се изгради правилна ориентация по въпросите на програмирането. Съществуват стотици езици за програмиране, сред които няколко десетки са по-разпространени или имат важно теоретично значение. Въпреки разнообразието си, езиците са изградени на определени принципи. Познаването на тези принципи дава възможност да се проследи развитието на методите и на езиците за програмиране, да се оценяват различните езици и подпомага изучаването на нови езици за програмиране. Курсът е теоретичен и с активно участие на студентите цели: запознаване с основните понятия, принципите, проблемите на програмирането и развитието на програмните парадигми; представянето на основните характеристики на разпространени и характерни езици за програмиране и някои основни положения при реализацията им, като запознае студентите с принципите, по които се изграждат и развиват езиците за програмиране. |
| Съдържание |
| 1. Основни понятия в информатиката и програмирането. |
| 2. Алгоритми. Величини. |
| 3. Структури от данни. |
| 4. Обща структура, основни конструкции и равнища в езиците за програмиране. |
| 5. Формално представяне на езиците за програмиране. |
| 6. Обща характеристика на машинните и машинно-ориентираните езици. |
| 7. Обща характеристика и особености на COBOL и RPG . |
| 8. Обща характеристика и особености на FORTRAN и APL . |
| 9. Обща характеристика и особености на Алгол-60 и произлизащите от Алгол-60 езици. |
| 10. Обща характеристика и особености на езиците LISP и PROLOG. |
| 11. Обща характеристика и особености на езиците Forth, C и на обектно-ориентираните езици Simula-67, Smalltalk, C++. |
| 12. Обща характеристика и особености на езиците за обработка на знакови и формулни данни.. SNOBOL, REDUCE, система SAC. |
| 13. Принципи (подходи) при програмирането. |
| 14. Езикови процесори. Видове и принципи на действие. |
| 15. Лексичен и синтактичен анализ. |
| 16. Генерация на код. Разпределение на оперативната памет. Проверка и редактиране на програми. |