zhChinese    enEnglish
  ПМ-ПУ  » Образование  » Программы курсов » Технология программирования » Лектор Клюев В.В.

Технология программирования

Общий курс

Языки и методы программирования

Лектор: к.ф.-м.н., доцент Клюев В.В.

1. Введение

1.1. Принципы построения машины Тьюринга.
1.2. Понятие о языках программирования. Исторический обзор.
1.3. Классификация: императивные, декларативные, параллельные.
1.4. Компиляторы и интерпретаторы. Синтаксис и семантика.
1.5. Препроцессоры.

2. Формальные грамматики.

2.1. Способы описания синтаксиса языков программирования.
2.2. Нормальная форма Бэкуса-Наура, контекстно свободные грамматики.

3. Обзор императивных языков.

3.1. Паскаль, С++, Java.
3.2. Структура программы, типы данных, структуры управления.
3.3. Абстрактные типы данных.
3.4. Примеры решения задач.
3.5. Языки интерпретируемого типа на примере Perl и Unix Shell.

4. Обзор декларативных языков.

4.1. Lisp (RLisp средство реализации Reduce), Пролог, Scheme.
4.2. Принципы функционального программирования.
4.3. Языки управления базами данных и знаний.

5. Введение в языки и методы параллельного программирования.

5.1. Понятие о языке OCCAM.
5.2. Средства параллельного программирования в языках Fortran и Java.
5.3. Распределенные вычисления.
5.4. Принципы администрирования сетей (Windows 9x/NT, UNIX/Linux, Novell).
5.5. Построение корпоративных гетерогенных сетей
5.6. Технологии CORBA, COM, DCOM.

6. Современные технологии программирования.

6.1. Объектно-ориентированное программирование.
6.2. Типы современных баз данных, их классификация.
6.3. Обзор современных СУБД.
6.4. Администрирование СУБД (Oracle, MS SQL, Interbase, Access)
6.5. Проектирование, реализациями и оптимизация БД.
6.6. Genetic programming.
6.7. Нейросети.

7. Базовые алгоритмы.

7.1. Сортировка, поиск.
7.2. Алгоритмы на графах.
7.3. Методы компрессии и шифрования данных.
7.4. Сложность алгоритмов, NP-полные задачи.

8. Языки форматирования текстов.

8.1. Языки гипертекстовой разметки.
8.2. Понятие о языках TeX, HTML, SGML, XML.
8.3. CSS - стили и включаемые в текст скрипты: PHP, JavaScript и т.д.
8.4. Основные представления о языках TeX, Postscript и PDF, ориентированных на издательскую деятельность.

Литература

  1. Фридман А. и др. С/С++: Архив программ. СПб.: Бином, 2001
  2. Байков В. Интернет: поиск информации, продвижение сайтов. СПб.: BHV. 2001.
  3. Новиков Ф.А. Дискретная математика для программистов: Учебник. СПб.: Питер, 2001.
  4. Николенко Д.В. Практические занятия по JavaScript. Наука и техника, 2000.
  5. Причард Дж. COM и CORBA просто и доступно. М.: Лори, 2001.
  6. Гаврилова Т.А., Хорошевский В.Ф.. Базы знаний интеллектуальных систем. Учебник. Питер, 2000.
  7. Петровский А. TCL: Командный язык программирования. М., 2001.
  8. Олифер В.Г. Компьютерные сети: Учебник. СПб.: Питер, 2001
  9. Грэхем Р., Кнут Д., Паташник О. Конкретная математика: Основания информатики. М.: Мир, 1998.
  10. Бен-Ари М. Языки программирования. Практический сравнительный анализ. М.: Мир, 2000.
  11. Вейтман В. Программирование для Web. Диалектика, 2000.
  12. Орфали Р., Харки Д. Java и CORBA в приложениях клиент - сервер. М.: Лори, 2000.
  13. Максимальная безопасность в LINUX: Руководство от хакера по защите сервера и рабочей станции LINUX. Диасофт, 2000.