Фундаментальная информатика и информационные технологии

Бакалавриат   |   02.03.02
Профиль: «Информатика и компьютерные науки»

Информатика является сравнительно молодой наукой, однако уже включает в себя разделы, считающиеся фундаментальными и которые должен знать каждый специалист в области компьютерных наук. В рамках этого направления изучаются теоретические основы информатики и программирования, пристальное внимание уделяется математическим дисциплинам наряду с развитием практических навыков программирования. .

Узнать о том, какие документы необходимо подать и в какие сроки проводится набор можно в разделе Поступить на факультет.

Чему вас будут учить

Фокус образовательной программы сосредоточен на фундаментальных основах информатики и программирования. Программа первого курса содержит цикл классических математических дисциплин, включающих ключевые для ИТ-специалиста разделы, такие как дискретная математика, математический анализ, алгебра и геометрия.

На первом курсе изучаются несколько дисциплин, позволяющих наработать практические навыки программирования:

  • Основы программирования.

    В процессе изучения дисциплины происходит ознакомление студентов с понятием алгоритма, способами и средствами их представления, классификацией и эволюцией языков программирования, и современными тенденциями их развития, а также детальное изучение одного из языков высокого уровня (язык C).

  • Информатика.

    Изучая эту дисциплину, студенты знакомятся с основными понятиями информатики, этапами развития компьютерных систем, их архитектурой, базовыми структурами данных и алгоритмов, включая одномерные и многомерные массивы, стеки и очереди, бинарные деревья, алгоритмы сортировки и поиска, алгоритмы на графах, динамические структуры данных.

  • Объектно-ориентированное программирование.

    Студенты изучают основные этапы, методы, средства и стандарты разработки программного обеспечения, детальное изучение одного из объектно-ориентированных языков программирования (Java), обучение студентов разработке кроссплатформенных приложений.

Отличительная особенность этой программы в наличии дисциплин, углубленно изучающих фундаментальные основы современной информатики:

  • Математическая логика и теория алгоритмов.

    Цель изучения дисциплины состоит в освоении основ фундаментальных знаний, позволяющих разобраться в математическом описании проблем, связанных с математической логикой и теорией алгоритмов, умении решать стандартные задачи, давать интерпретацию полученным результатам. У слушателей формируется представление о современном состоянии теоретической информатики и приобретению специальных знаний из области моделирования и анализа сложных информационных систем.

  • Алгоритмы и анализ сложности.

    Целью дисциплины является изучение общих основ разработки и анализа алгоритмов, включая асимптотический анализ верхней, нижней и средней оценок сложности алгоритмов; сравнение наилучших, средних и наихудших оценок, эмпирические измерения эффективности алгоритмов; проведение оценок накладных расходов по времени и памяти; рекуррентные соотношения и анализ рекурсивных алгоритмов, анализ алгоритмов динамического программирования; изучение NP класса сложности задач.

  • Теория автоматов и формальных языков.

    Данный курс вырабатывает у студентов навыки использования аппарата теории формальных языков, теории автоматов, что является фундаментальной основой многих современных информационных технологий.

  • Теория вычислительных процессов и структур.

    В рамках дисциплины студенты учатся применять в исследовательской и прикладной деятельности современный аппарат разработки и анализа корректности алгоритмов и развивают умение исследовать свойства программ и математически доказывать их корректность.

  • Теория конечных графов и ее приложения.

    Центральным объектом дисциплины является современная теория графов и графовые модели, базирующиеся на аппарате дискретной математики, а также подходы к использованию теории графов на практике. Данный курс вырабатывает у студентов навыки использования математического аппарата теории графов, совершенствует навык построения математически строгих доказательств и развивает способность использовать графовые модели на практике, в том числе для написания эффективных программ.

Этот фундамент подкрепляется циклом дисциплин, связанных с развитием практических навыков, необходимых успешному ИТ-специалисту:

  • Программирование на .NET Framework.

    В рамках освоения дисциплины происходит ознакомление студентов с архитектурой среды .NET Framework, идеологией создания приложений для данной среды исполнения, языком С# как одним из основных языков программирования в среде .NET Framework, библиотекой классов Common Language Runtime, а также изучение средств создания, отладки и развертывание .NET-приложений.

  • Основы веб-программирования.

    Целью освоения дисциплины является подготовка специалистов, которые могут спроектировать web-приложение (фронтэнд и бэкэнд). В рамках дисциплины рассматриваются задачи верстки, включая адаптивную верстку, и построения веб-серверов с использованием стека Apache-MySQL-PHP, современных CMS, а также ASP.NET.

  • Основы тестирования программного обеспечения.

    Цель дисциплины состоит в изучении базовой теории, умении ориентироваться в базовых концепциях и терминах, и овладении техник тест-дизайна: разработки способов создания тестовых сценариев и тестовых данных.

  • Введение в информационный поиск.

    В рамках дисциплины студенты осваивают теоретические основы построения информационно-поисковых систем, базирующиеся на теории алгоритмов, теории информации, а также практические подходы к реализации данного класса программных систем. Данный курс вырабатывает у студентов навыки использования математического аппарата для решения прикладных задач информационного поиска в вебе, а также хранения, обработки и поиска текстовой и другой информации в иных хранилищах данных.

  • Программная инженерия.

    Дисциплина обеспечивает приобретение знаний и умений в области проектирования и разработки информационных систем с использованием современных информационных технологий, а также включает в себя изучение универсальных принципов и методологий разработки программного обеспечения. Цель дисциплины — изучение основных качеств программного обеспечения и принципов его построения, обеспечивающих реализацию этих качеств. Изучение подкрепляется примерами, имеющими практическую направленность и учитывающими современные тенденции развития методологий и технологий программной инженерии.

  • Языки и методы программирования.
  • Программирование ASP.NET.
  • Основы мобильной разработки.

Часть преподаваемых дисциплин является дисциплинами по выбору, что позволяет обучающемуся сформировать собственную образовательную траекторию.

Вы также можете ознакомиться с полной версией учебного плана приема 2017 года.

Ваша будущая профессия

Специальность «Фундаментальная информатика и информационные технологии» гарантирует трудоустройство в сферах, где активно используются IT-технологии. При получении диплома специалиста вы становитесь программистом широкого профиля со знаниями языков программирования, технологий автоматизации IT систем, обладая навыками разработки и сопровождения соответствующих информационных сервисов и продуктов.

Программисты широкого профиля – инженеры, web-разработчики, администраторы, профессионалы глобальных компьютерных сетей – востребованы всегда и везде. В процессе обучения вы можете заниматься подработкой, которая поможет в становлении на будущем рабочем месте:

Примеры выпускных работ

В.Г. Агаджанова. Моделирование и анализ свойств протоколов распространения данных в распределенных системах с использованием раскрашенных сетей Петри

Объектом исследования являются раскрашенные сети Петри и протокол Gossip.

Цель работы – построить модель протокола Gossip с использованием инструментального средства моделирования CPN Tools и проанализировать его работу на примере нескольких топологий коммутируемых сетей.

В процессе работы создавались модификации модели, позволяющие анализировать модель по многим параметрам.

По завершении работы проведен анализ работы модели в различных ситуациях и на разных примерах, что показывает правильность работы модели и ее свойства.

Н.П. Баранов. Выделение контуров на изображениях в ОС Android

В данной работе рассматриваются три алгоритма для выделения контуров в изображении.

Цель работы – разработка приложения для операционной системы Android, которое позволяет выделить контуры в изображении тремя алгоритмами с последующим сохранением полученного результата.

В рамках работы данное приложение было разработано и протестировано на ряде устройств.

К.В. Лагутина. Разработка метода выделения ключевых слов для информационной системы электронного туризма Open Karelia

Актуальной задачей в рамках разработки информационных систем является автоматизация создания структуры имеющихся текстовых документов в виде связного графа. Наличие связей между туристическими объектами, удовлетворяющих описанным характеристикам, используется для более качественного и полноценного предоставления информации пользователю.

Разработан метод автоматического выделения ключевых слов для сайтов и информационных систем из сферы туризма, при этом тексты связываются друг с другом через общие ключевые слова, тем самым формируя граф, достаточно связный для удобной навигации по сайту/системе. Метод представляет собой комбинацию известного алгоритма выделения ключевых слов с процедурой постобработки при помощи тезауруса. Разработанный метод сейчас находится на этапе внедрения в туристическую информационную систему проекта Open Karelia.

Н.Г. Нуриева. Автоматический поиск контрпримеров для гипотез о периодической структуре полулинейных множеств

Основной целью работы является написание программы визуализации двумерных полулинейных множеств, согласно выдвинутым гипотезам. Основными задачами работы – изучить построение одномерных линейных множеств, а также двумерных полулинейных, выбрать и изучить язык программирования и вспомогательные элементы, написать программу визуализации.

В ходе работы были изучены одномерные линейные множества, двумерные полулинейные множества и их примеры. Практическим результатом работы является программа, написанная на языке программирования Java, визуализирующая двумерное множество достижимости.

С.В. Моржов. Анализ и разработка программного средства управления межсетевым экраном для контроллера программно-конфигурируемой сети

Целью данного проекта является создание ПО в виде сетевого приложения для ПКС контроллера Floodlight, не допускающего появление различных коллизий в правилах межсетевого экрана и списка контроля доступа.

В ходе работы был изучен способ борьбы с коллизиями, возникающими между правилами политик безопасности, предложенный Эль-Шаером. На его основе был построен алгоритм для недопущения возникновения коллизий в правилах межсетевого экрана и списке контроля доступа ПКС контроллера Floodlight. На основе полученного алгоритма было реализовано сетевое приложение. Эффективность и корректность работы данного приложения была доказана экспериментально в ходе модульного тестрования ядра, а так же системного тестирования сетевого приложения.

Другие программы бакалавриата





Образовательная программа имеет государственную аккредитацию