Тема 3.1 Структуры данных
Тема 2.3 Языки программирования
Тема 2.2 Алгоритмы
Тема 2.1 Операционные системы и сети
Эволюция операционных систем. Классификация операционных систем. Однозадачные и многозадачные операционные системы. Системы пакетной обработки, разделения времени, и системы реального времени. Однопроцессорные и многопроцессорные системы.
Архитектура операционной системы. Классификация программного обеспечения. Компоненты операционной системы. Запуск операционной системы.
Понятие процесса. Управление процессами. Модель «клиент/сервер»
Компьютерные сети. Классификация сетей. Сеть Internet. Internet – адресация. Сетевые ресурсы и службы Internet.
Информационная безопасность. Защита данных.
Понятие алгоритма. Представление алгоритма. Примитивы. Псевдокод.
Создание алгоритма. Основы теории и методов решения задач.
Итерационные структуры в алгоритмах. Управление циклами. Примеры использования итерационных структур в алгоритмах: алгоритм последовательного поиска, алгоритм сортировки методом вставки.
Рекурсивные структуры в алгоритмах. Управление рекурсией. Примеры использования рекурсивных структур в алгоритмах: алгоритм двоичного поиска.
Эффективность алгоритма. Верификация программ.
Исторический обзор языков программирования. Ранние поколения. Машинная независимость. Парадигмы программирования.
Концепции традиционного программирования. Операторы объявления. Переменные, константы и литералы. Указатели и ссылки. Типы данных. Структура данных. Операторы присваивания. Управляющие операторы. Комментарии.
Процедуры, параметры и функции в языках программирования. Операторы ввода-вывода.
Специализированные типы данных. Типы данных, определяемые пользователем. Абстрактные типы данных.
Объектно-ориентированное программирование. Классы, объекты и методы. Инкапсуляция, наследование, полиморфизм.
Процесс трансляции исходного текста программы. Связывание и загрузка. Пакеты для разработки программ.
Технология разработки программного обеспечения. Предмет технологии разработки программного обеспечения. Жизненный цикл программного обеспечения. Модульность. Методы проектирования. Тестирование. Документирование. Право собственности и ответственность за создаваемое программное обеспечение.
Раздел 3 Организация данных
Массивы. Строки. Размещение массивов в основной памяти. Реализация строк.
Списки. Концептуальная и реальная организация списков: непрерывные и связанные списки. Реализация списков. Библиотека стандартных шаблонов.
Стеки. Концептуальная и реальная организация стеков. Реализация стеков.
Очереди. Концептуальная и реальная организация очередей. Реализация очереди.
Древовидные структуры. Концептуальная и реальная организация бинарных деревьев. Реализация древовидной структуры.