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

Информационные системы и технологии

Программное обеспечение вычислительной техники и автоматизированных систем

 

Архитектура ЭВМ.

  1. Функциональная схема компьютера, организованного на Intel-совместимом процессоре. Система прерываний.
  2. Классическая шинно-мостовая структура чипсета.
  3. Компоненты процессора Intel 8088.
  4. Функциональная схема и работа управляющего устройства процессора.
  5. АЛУ и назначение регистров процессора.
  6. Кэширование, назначение, организация и алгоритмы.
  7. Принцип действия динамической памяти.
  8. Конструкция накопителя на жестких магнитных дисках.
  9. Способы оптимизации работы НЖМД. RAID-массивы, принципы работы, разновидности.
  10. Принципы работы оптических носителей информации, форматы CD и DVD носителей.

 

Операционные системы.

  1. Структура операционной системы. Понятия ядра, пользовательского пространства, системных вызовов.
  2. Понятие процесса. Реализация многозадачности. Понятие потока
  3. Межпроцессное взаимодействие. Критические области.
  4. Планирование процессов. Необходимость планирования. Алгоритмы планирования.
  5. Взаимоблокировка. Причины возникновения. Классификация алгоритмов борьбы с взаимоблокировкой.
  6. Борьба с взаимоблокировкой. Алгоритмы выявления и устранения. Алгоритмы предупреждения. Алгоритмы предотвращения.
  7. Управление памятью. Классификация способов управления памятью. Однозадачные системы. Системы с фиксированными разделами. Системы прямой подкачки.
  8. Виртуальная память. Таблицы страниц. Алгоритмы очистки страниц.
  9. Структура операционной системы Windows 2000. Реестр. Прикладной интерфейс программирования.
  10. Механизмы работы Windows 2000. Реализация процессов и потоков. Планирование. Управление памятью.

 

Сети.

  1. Общие принципы построения сетей. Сетевые технологии. Топологии КС.
  2. Разновидности соединений. Связь с установлением соединения. Виртуальные каналы. Дейтаграммная передача данных
  3. Принцип декомпозиции задачи. Модель OSI. Уровни сети. Структура передаваемой информации.
  4. Физический уровень. Среды передачи данных. Полоса пропускания. Помехи при передаче данных.
  5. Канальный уровень. Задачи. Кодирование сигналов. Потенциальные и импульсные коды. Скрэмблирование.
  6. Сетевой уровень. Задачи. Алгоритмы маршрутизации.
  7. Транспортные протоколы сетевого уровня в Интернете. IPv4. IPv6.
  8. Служебные протоколы сетевого уровня в Интернете.
  9. Транспортный уровень. Задачи. Алгоритмы установления и разрыва соединения.
  10. Транспортный уровень в Интернете. Протоколы TCP и UDP.

 

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

  1. Типы данных в языках программирования на примере C++, C#, Visual Basic. Упаковка и распаковка объектов.
  2. Функции и методы классов в языках С++ и C#. Передача параметров по значению и ссылке. Порядок передачи параметров в языке С и Pascal.
  3. Структуры и классы в языках программирования C++, C#, Visual Basic. Наследование. Инкапсуляция и полиморфизм.
  4. Коллекции и контейнеры в языках программирования. Алгоритмы обработки данных в библиотеке STL. Технология LINQ to Object.
  5. Принципы работы Windows–приложения. Обработка сообщений. Принципы вывода данных в окно.
  6. Библиотеки работы с файлами в С++ и C#. Кодировка текстовых файлов.
  7. Окна и элементы управления. Общие элементы управления библиотеки WinAPI.
  8. Принципы работы с графическими файлами в языках С++ и C#.
  9. Библиотеки динамической компоновки в С++ и C#. Построение библиотек и методы их использования.
  10. Процессы и потоки в языках С++ и C#, пулы потоков. Механизмы синхронизации. Объекты ядра для синхронизации процессов.

 

Дисциплины: «Базы данных», «Корпоративные информационные системы», «Проектирование информационных систем»

  1. Трехуровневая система организации базы данных.
  2. Основные функции СУБД.
  3. Основные понятия и определения реляционной модели данных.
  4. Реляционная алгебра как язык запросов. Основные операции реляционной алгебры.
  5. Теоретические основы проектирования реляционных баз данных.
  6. Двух и трехуровневые модели в архитектуре клиент-сервер. Логика приложений в клиент-серверных системах.
  7. SQL и безопасность баз данных.
  8. Корпоративные хранилища данных: назначение, создание, использование.
  9. Жизненный цикл программного обеспечения информационных систем: структура, стадии, модели.
  10. Моделирование данных. Характеристика стандарта IDEF1X.
  11. Функциональное моделирование. Стандарты IDEF0, IDEF3.
  12. Диаграммы потоков данных как инструмент описания требований заказчика.
  13. Унифицированный процесс разработки программного обеспечения.
  14. Определение требований в виде вариантов использования на языке UML.
  15. Атрибуты качества программного обеспечения.
  16. Факторы риска при создании программного обеспечения.
  17. Методы оценки стоимости проекта.
  18. Технология сбора информации в методологии SADT.

 

WEB-дизайн.

  1. Документо-орентированная и объектно-ориентированная модели Интернета.
  2. Понятие языка разметки и примеры их использования при разработке веб-приложений.
  3. Организация синхронного и асинхронного доступа к веб-приложению.
  4. Организация клиент-серверного взаимодействия в Интернете.
  5. Технология шаблонов (templates) при разработке веб-приложений. Языки описания шаблонов.
  6. Архитектуры построения веб-приложений.
  7. Способы организации хранения состояния веб-приложения.
  8. Использование баз данных для построения веб-приложений. Преимущества и ограничения различных типов баз данных.
  9. Многоуровневая модель построения веб-приложения.
  10. Использование frameworks, cms и серверов приложений при реализации веб-систем.
  11. Объектно-ориентированная модель веб-приложения при использовании CMS Plone.
  12. Использование паттерна Model-View_controler(MVC) при разработке веп-систем. Особенности реализации этого паттерна для CMS Plone.
  13. Способы расширения функциональных возможностей CMS Plone.
  14. Различные способы организации хранения и поиска данных в веб-системах.

 

Защита информации.

  1. Методологические основы безопасности.
  2. Организационно-правовая поддержка информационной безопасности.
  3. Модель нарушителя в корпоративных сетях.
  4. Компьютерные преступления.
  5. Безопасность сетевых технологий, в ОС, СУБД и Интернет.
  6. Технологии авторизации и аутентификации.
  7. НСД.
  8. Анализ и мониторинг.
  9. Вредоносные программы.