Курсы
Дискретные структуры
Раздел 1. Математический инструментарий
Тема 1.1. Язык математической логики
Высказывания и операции над ними. Равносильные формулы. Логическое следствие. Законы логики. Предикаты и кванторы.
Тема 1.2. Множества
Множества и операции над ними. Диаграммы Эйлера – Вэнна.
Тема 1.3. Бинарные отношения
Бинарные отношения. Виды отношений: рефлексивные, антирефлексивные, симметричные, антисимметричные, транзитивные, связные. Исследование отношений. Отношения эквивалентности и порядка.
Тема 1.4. Метод математической индукции
Доказательство тождеств, неравенств и делимости методом математической индукции
Тема 1.5. Комбинаторика
Принцип суммы и произведения. Перестановки, размещения, сочетания без повторений и с повторениями. Бином Ньютона.
Раздел 2. Последовательности
Тема 2.1. Рекуррентные соотношения
Рекурсия. Числа Фибоначчи. Производящие функции. Преобразование производящей функции при преобразовании последовательности. Решение возвратных рекуррентных соотношений.
Раздел 3. Графы
Тема 3.1. Виды графов
Основные понятия теории графов. Степень вершины графа. Дерево.
Плоские графы. Формула Эйлера. Теорема Фари.
Эйлеровы графы. Обход ребер графа по одному разу в обоих направлениях. Гамильтоновы графы.
Тема 3.2. Взвешенные графы
Взвешенные графы. Минимальное остовное дерево. Поиск кратчайшего маршрута. Сетевой график. Потоки в сетях.
Раздел 4. Булевы функции
Тема 4.1. Представление булевых функций
Булевы функции. Элементарные операции. Таблица значений. Двойственные булевы функции. Сднф и скнф.
Полнота. Полином Жегалкина.
Тема 4.2. Классы булевых функций
Замкнутые классы. Теорема о функциональной полноте. Минимизация булевых функций.
Раздел 5. Теория кодирования
Тема 5.1. Теория кодирования
Однозначность декодирования. Самокорректирующиеся коды
Результаты освоения курса
Выпускник знает:
Язык математической логики, основы теории множеств, комбинаторики, теории графов, теории булевых функций
Умеет:
Использовать теоретические знания для решения широкого круга задач
Владеет и (или) имеет опыт деятельности:
Методами решения комбинаторных задач, использования графов для моделирования и решения задач в различных областях математики
Операционные системы
В курсе рассматриваются базовые концепции функционирования операционных систем, утилиты, обеспечивающие подсистемы, процессы и управление процессами, управление файловыми системами и устройствами хранения данных, элементы обеспечения безопасности и защиты от несанкционированного доступа.
Курс направлен на формирование у слушателей компетенций, необходимых для решения задач системного администрирования, включающих в себя:
- самостоятельное администрирование операционных систем;
- управление учетными записями и правами пользователей;
- решение проблем функционирования операционных систем.
Результаты освоения курса
В результате освоения курса слушатели будут:
знать:
- механизмы и модели функционирования операционных систем;
- задачи и методы системного администрирования;
- технологии взаимодействия с *NIX системами на уровне пользователя и администратора
- модели управления ресурсами операционной системы;
- основные подходы к конфигурированию сетевых сервисов: www, email, ftp, nfs, samba;
- важные аспекты обесппечения информационной безопасности на уровне операционной системы, технологии защиты от локального и удаленного несанкционированного доступа.
уметь:
- осуществлять установку, настройку операционной системы (Debian 6.x);
- управлять учетными записями пользователей и системными базами данных;
- устанавливать приложения и настраивать совместное взаимодействие служб и сервисов;
- осуществлять мониторинг производительности системы и управление процессами.
- проводить обслуживание файловых систем;
- управлять резервным копированием и восстановлением данных.
владеть:
- методами установки и настройки операционных систем для решения прикладных задач;
- технологиями управления сетевыми сервисами и службами.
Основы программирования на языке Java
Цель курса
Рассматривается технология написания Java-приложений с использованием JDK. Слушатели изучат конструкции и механизмы работы языка Java, основанные на парадигме объектно-ориентированного программирования. Изучается вопрос создания графического интерфейса пользователя (GUI) с использованием библиотеки Swing. Также рассматриваются основы написания многопоточных систем и работа со стеком протоколов TCP/IP.
В результате освоения курса слушатели будут:
Знать:
- Основы технологии Java.
- Типы данных, переменные и операторы языка Java
- Основные понятия ООП, включая наследование, абстрактные классы и интерфейсы
- Специальные типы данных, такие как строки (String) и массивы (Arrays)
- Обобщенное программирование
- Механизм пакетов и модификаторы доступа в Java
- Технологию создания графического пользовательского интерфейса
- Многопоточную Модель данных в Java
- Организацию потоков ввода/вывода
- Работу со стеком TCP/IP
Уметь:
Создавать Java приложения с графическим интерфейсом пользователя, способные работать в многопоточной среде и взаимодействовать с сервером с использованием сокетов.
Владеть:
Технологиями написания Java приложений в рамках StandardEdition.
Перечень разделов курса
- Основы технологии Java. Понятия и термины. Краткая история Java. Преимущества и особенности Java. Понятия и термины. Комментарии в языке Java. Алфавит языка Java. Зарезервированные слова
- Типы данных, переменные и операторы. Примитивные типы данных. Объявления переменных. Область действия и значения по умолчанию. Приведение типов. Операторы. Перечисления
- Управление течением программы. Составные операторы. Условные выражения: оператор if-then. Условные выражения: оператор switch/case. Циклы: цикл с предусловием while…. Циклы: цикл с постусловием do… while. Циклы: цикл с фиксированным количеством итераций for. Циклы: цикл перебора коллекций типа foreach
- Методы. Создание и использование метода. Возврат значения из метода. Передача параметров в метод. Перегрузка методов. Методы с переменным количеством параметров
- Массивы. Определение массивов. Одномерные массивы в Java. Многомерные и иррегулярные массивы. Инициализация и управление массивами
- Классы и объекты. Объектно-ориентированная концепция. Переменные класса и экземпляра класса. Объектные ссылки и сборка мусора
- Наследование. Механизм наследования в Java. Перекрытие методов и позднее связывание. Методы класса Object
- Конструкторы. Предназначение конструкторов. Использование конструкторов. Порядок работы конструкторов. Обратный вызов как пример использования конструкторов
- Обобщенное программирование. Общие сведения о настраиваемых типах. Создание настраиваемого типа. Ограниченные типы и метасимвольные аргументы. Ограниченные типы и коллекции. Ограничения настраиваемых типов
- Работа со строкам. Класс String и его особенности. Методы класса String. Сравнение классов String и StringBuffer
- Абстрактные классы и интерфейсы. Абстрактные классы: постановка задачи. Решение задачи с помощью абстрактных классов. Интерфейсы: постановка задачи. Решение задачи с помощью интерфейсов
- Пакеты и модификаторы доступа. Пакеты. Параметр CLASSPATH. Модификаторы доступа. Инкапсуляция
- Графические компоненты SWING. AWT как предшественник SWING. Иерархия классов Swing. Графические компоненты SWING
- Менеджеры размещения компонентов. Общие сведения о менеджерах расположения. Стандартные менеджеры расположения. Вспомогательные компоненты. Комбинирование менеджеров расположения
- Графика в языке Java. Графический контекст и методы его работы. Определение цветов и шрифтов. Рисование на поверхности компонентов
- Обработка событий в Java. Основы механизма обработки событий. Классы-обработчики. Примеры использования классов-обработчиков. Внутренние классы
- Обработка исключительных ситуаций. Описание механизма обработки исключений. Способы обработки исключений. Диагностические утверждения
- Многопоточное программирование. Многопоточная модель Java. Создание потоков в рамках JVM: Класс Thread и интерфейс Runnable. Методы класса Thread
- Синхронизация потоков. Синхронизация: постановка задачи. Способы синхронизации потоков. Методы wait() и notify() и notifyAll() класса Object. Способы управления жизненным циклом потока
- Потоки ввода-вывода. Иерархия потоковых классов. Чтение данных с консоли. Сериализация объектов
- Работа со стеком TCP / IP. Сетевые классы Java. Примеры реализации сетевых приложений: клиент. Примеры реализации сетевых приложений: сервер. Примеры реализации сетевых приложений: многопоточный сервер
Основы языков программирования
В курсе рассматриваются общие концепции разработки и реализации языков программирования, изучаются основные конструкции языков программирования, анализируются различные структуры данных, освещаются вопросы объектно-ориентированного программирования.
Курс направлен на формирование у студентов компетенций, необходимых для эффективного решения различных задач по проектированию и созданию программ, включающие в себя:
- применение объектно-ориентированного подхода;
- создание программ на различных объектно-ориентированных языках программирования, таких как C++, C#, Object Pascal и Java.
В результате освоения курса слушатели будут:
знать:
- общие концепции разработки и реализации языков программирования;
- основные парадигмы программирования;
- влияние стандартизации языка программирования на его использование;
- хранение и применение различных элементарных и производных типов данных;
- управление подпрограммами;
- основные концепции объектно-ориентированного программирования;
- основные различия в современных объектно-ориентированных языках программирования, таких как C++, C#, Object Pascal и Java;
- методы создания защищенного кода.
уметь:
- создавать приложения на языках программирования C++, C#, Object Pascal и Java;
- использовать различные структуры данных;
- применять объектно-ориентированную парадигму при разработке приложений;
- анализировать семантику и синтаксис различных языков программирования, c применением БНФ-нотаций;
- создавать производительные и устойчивые к ошибкам программы.
владеть:
- технологиями разработки, создания и отладки программ на различных объектно-ориентированных языках программирования.
Программирование на языке C
Целью курса является изучение технологии написания программ на языке С.
Задачи учебного курса:
Освоение слушателями навыков и приемов работы в среде Visual Studio.
получение практической подготовки в области использования вычислительной техники и программного обеспечения для решения прикладных задач.
Результаты освоения курса
В результате освоения учебного курса слушатели должны знать:
Инструменты и методы верификации структуры программного кода
Регламенты кодирования на языках программирования
Возможности ИС
В результате освоения учебного курса слушатели должны уметь:
использовать возможности технических и программных средств в своей практической деятельности;
применять современные информационные технологии в практической деятельности;
В результате освоения учебного курса слушатели должны владеть:
формами представления информации в ЭВМ, навыками выполнения арифметических операций над двоичными цифрами с фиксированной и плавающей запятой, навыками разработки алгоритмов решения задач и методами эффективного кодирования информации
Технологии баз данных
Цель курса
В курсе рассматриваются основные функции СУБД, типовая архитектура SQL ориентированных баз данных, анализируются различные модели данных. Особое внимание удаляется изучению реляционной модели данных, рассматривается применение языка SQL
Курс направлен на формирование у студентов компетенций, необходимых для интерактивной или удаленной работе с базами данных. Формируемые компетенции включают в себя:
- применение реляционной модели данных;
- проектирование концептуальной модели данных, построение диаграмм данных;
- использование баз данных для хранения и обработки различной информации.
Язык CSS
Цель курса
Целью курса является изучение основ верстки сайтов, получение навыков подключения сторонних расширений на своем сайте.
Результаты освоения курса
Задачи учебного курса:
Освоение слушателями навыков и приемов работы в среде HTML.
получение практической подготовки в области использования вычислительной техники и программного обеспечения для решения прикладных задач.
В результате освоения учебного курса слушатели должны знать:
язык HTML
язык CSS
В результате освоения учебного курса слушатели должны уметь:
решать типовые задачи
В результате освоения учебного курса слушатели должны владеть:
техникой верстки сайтов;
Язык HTML
Система заданий разработана по технологии поэтапного формирования умственных действий с адаптацией к психологическим особенностям личности учащихся.
Для достижения основной цели курса необходимо поставить и решить несколько задач.
Задачи учебного курса:
освоение слушателями навыков и приемов работы с гипертекстовыми страницами.
получение практической подготовки в области разработки статических веб-сайтов на основе использования HTML5.
Результаты освоения курса
В результате освоения учебного курса слушатели должны знать:
основные приемы работы с гипертекстовыми документами;
синтаксис и семантику языка разметки HTML;
способы проектирования структуры сайта на основе шаблонов;
В результате освоения учебного курса слушатели должны уметь:
выполнять практические операции по созданию гипертекстовых документов на языке HTML;
создавать логически и синтаксически правильные документы на языке HTML;
использовать специальные теги языка HTML5;
использовать мета-теги и формализованное описание документа;
создавать гипертекстовые страницы с использованием таблиц и форм;
выполнять внедрение мультимедийных документов.
В результате освоения учебного курса слушатели должны владеть:
практическими навыками разработки статических сайтов на языке HTML.