Федеральное агентство по рыболовству

Вид материалаОсновная образовательная программа
Аннотация к рабочей программе дисциплины «Объектно-ориентированное программирование»
2. Требования к уровню освоения содержания дисциплины
3. Содержание дисциплины. Основные разделы.
Аннотация к рабочей программе дисциплины «Программирование на языке высокого уровня»
2. Требования к уровню освоения содержания дисциплины
3. Содержание дисциплины. Основные разделы.
Подобный материал:
1   ...   15   16   17   18   19   20   21   22   ...   39

Аннотация к рабочей программе дисциплины «Объектно-ориентированное программирование»


1. Цели и задачи дисциплины

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


2. Требования к уровню освоения содержания дисциплины.

Процесс изучения дисциплины направлен на формирование у обучаемого следующих компетенций:
  • умеет логически верно, аргументировано и ясно строить устную и письменную речь (ОК-2);
  • разрабатывать компоненты программных комплексов и баз данных, использовать современные инструментальные средства и технологии программирования (ПК-5);
  • готовить презентации, научно-технические отчеты по результатам выполненной работы, оформлять результаты исследований в виде статей и докладов на научно-технических конференциях (ПК-7).

В результате изучения дисциплины студент должен:

Знать:

- области применения объектно-ориентированного программирования;

- понятия объектно-ориентированного программирования;

- методы объектно-ориентированного программирования

уметь:

- использовать объектный подход для решения практических задач;

- осуществлять моделирование произвольных систем в терминах ООП;

- создавать расширяемые программы

владеть:

- понятиями и методами объектно-ориентированного программирования;

- средствами объектного программирования языка С++;

- навыками программирования в объектном стиле


3. Содержание дисциплины. Основные разделы.

Общие принципы объектно-ориентированного подхода в программировании. Классы и объекты. Инкапсуляция, полиморфизм и наследование. Объектно-ориентированные языки. Класс как абстрактный тип данных. Определение класса в C++. Поля и методы. Доступность компонентов класса. Статические поля и методы. Объявление компонентных функций. Неявный указатель this. Друзья класса Локальные классы. Классы и шаблоны. Объявление объектов-переменных, объектов-констант. Константные методы. Указатель на объект и объявление динамических объектов класса. Массив объектов. Объект как поле в классе.

Инициализация объектов. Конструкторы. Копирование объектов класса. Преобразования типов. Конструктор как операция преобразования. Объекты – параметры функций. Операция приведения типа. Деструкторы. Вызов перегруженной функции. Перегрузка с несколькими аргументами. Параметры по умолчанию. Функции – операции. Правила перегрузки операций. Перегрузка присваивания. Перегрузка индексирования. Перегрузка (). Перегрузка new и delete. Потоки. Ввод-вывод встроенных типов. Форматный ввод-вывод. Состояния потока. Манипуляторы. Ввод-вывод не встроенных типов. Работа с файлами. Иерархия классов. Управление доступом. Простое и множественное наследование. Виртуальные базовые классы. Абстрактные классы. Правила определения виртуальных функций. Видимость виртуальных функций. Вызов виртуальных функций. Виртуальные деструкторы. Принципы построения программ для Windows. Понятие об API и состав API Windows. Ресурсы. Графический вывод. Средства ввода. Многооконный интерфейс MDI. Динамические библиотеки DLL. Связи и обмен данными. Многозадачность и многопоточность. Иерархия классов MFC. Классы, определяющие архитектуру приложения. Окна и элементы управления. Вывод на экран. Классы типов данных. Классы для работы с файлами и БД. Классы для работы в Internet и сетях.

Аннотация к рабочей программе дисциплины «Программирование на языке высокого уровня»


1. Цели и задачи дисциплины

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

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

2. Требования к уровню освоения содержания дисциплины.

Процесс изучения дисциплины направлен на формирование у обучаемого следующих компетенций:
  • умеет логически верно, аргументировано и ясно строить устную и письменную речь (ОК-2);
  • разрабатывать компоненты программных комплексов и баз данных, использовать современные инструментальные средства и технологии программирования (ПК-5);
  • готовить презентации, научно-технические отчеты по результатам выполненной работы, оформлять результаты исследований в виде статей и докладов на научно-технических конференциях (ПК-7).

В результате изучения дисциплины студент должен:

иметь представление:
  • о месте и роли языков программирования в информатизации общества.
  • об организации вычислительного процесса в среде Windows;
  • о возможностях языков программирования различного уровня;
  • о современных тенденциях в области разработки языков программирования;
  • о методах и проблемах доказательства правильности программ;
  • об анализе некоторых задач и алгоритмов; проблемах оптимизации программ;
  • об абстрактных типах данных (на примерах), их спецификации, представлении и реализации в языке С++;

знать:
  • конструкции языка С++;
  • основные способы представления данных и приемы алгоритмизации;
  • способы постановки и спецификации задач для решения на ПЭВМ;
  • основные современные методы и средства разработки корректных структурированных алгоритмов и программ;
  • основные этапы реализации программ на ЭВМ;
  • правила и приемы диалоговой работы на ЭВМ при программировании типовых задач;
  • способы записи и документирования алгоритмов и программ; способы испытания и отладки программ;
  • основные понятия и методы технологии программирования;

уметь:
  • формализовать поставленную задачу;
  • применять полученные знания в различных предметных областях;
  • составлять и оформлять программы на языке программирования C++;
  • тестировать и отлаживать программы;
  • работать с ресурсами компьютера программными средствами
  • использовать современные информационные технологии;
  • самостоятельно осуществлять постановку и спецификацию задачи для решения на ЭВМ;
  • самостоятельно составлять, отлаживать, тестировать и документировать программы на языке C++;
  • доказывать корректность ключевых фрагментов составленных алгоритмов и программ;

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


3. Содержание дисциплины. Основные разделы.

Понятие алгоритма. Основная задача алгоритмизации и порядок составления алгоритмов. Способы записи алгоритма. Языки программирования, эволюция и классификация. Общие принципы построения и использования языков программирования. Современные интегрированные среды разработки программ. Интегрированная среда MS Visual.NET.

Программа на языке высокого уровня. Структура программы. Алфавит и основные конструкции. Средства описания данных и действий. Стандартные типы данных Идентификаторы. Типы и размеры данных. Описания переменных. Символьные и строчные константы, константные выражения. Операции и операторы C++: арифметические, присваивания, стандартные математические функции. Организация ввода/вывода. Основные понятия математической логики. Операции отношения и логические побитовые операции и операторы. Таблица приоритетов операций. Преобразование типов. Условные выражения. Старшинство и порядок присваивания. Инвариантные утверждения. Управляющие структуры if/else и switch. Условная операция. Блок. Время жизни переменной, видимость переменной. Управляющие структуры while, do/while и for. Инкремент, декремент. Организация завершения циклического процесса: по количеству итераций, по условию, с использованием управляющих клавиш. Организация бесконечных циклов. Функции прерывания break и continue. Области применимости и основные различия между тремя конструкциями циклов. Правила работы с вложенными циклами. Понятие структуры (записи), объявление структуры, инициализация, доступ к полям. Структуры как параметры функций. Шаблоны структур. Размеры объектов. Выравнивание. Перегрузка операций. Понятие одномерных и многомерных массивов. Способы объявления массивов (массив фиксированного размера, динамический, вектор), инициализация массивов, максимальные размеры массивов. Заполнение массивов (в том числе случайными числами). Обработка числовых массивов (поиск в массивах: линейный и двоичный поиск; перестановка элементов в массиве; удаление и вставка элементов в массиве). Массив структур. Массивы в структурах. Одномерный массив как параметр функции. Передача массива по ссылке. Индексы как параметры функции. Вектор как параметр и как возвращаемый результат функции. Двумерные массивы – обработка без функций, используя индексы. Вектор векторов. Рекурсивные функции. Понятие стека вызовов функций. Формы рекурсивных процедур. Индуктивные функции на последовательностях. Программирование рекурсивных алгоритмов. Параметры в рекурсивных функциях. Одномерные массивы в рекурсивных функциях. Потоки, виды потоков в С++ (стандартные, строковые, файловые). Принципы организации потоков. Буферизация. Вывод в поток. Ввод из потока. Состояние потока.

Работа с файлами. Текстовые файлы. Стандартные средства форматирования. Перегрузка операций ввода/вывода (enum и структуры). Двоичные файлы. Файлы с записями (выравнивание). Произвольный доступ к записям.