Санкт- Петербургское государственное бюджетное
профессиональное образовательное учреждение
"Политехнический колледж городского хозяйства"
Основы алгоритмизации и программирования
рабочая программа дисциплины
09.02.07 Информационные системы и программирование
Правительство Санкт-Петербурга
Комитет по науке и высшей школе
Приложение
к ОП СПО по специальности
09.02.07 Информационные системы и программирование
, утвержденной приказом от
09.12.2016 г. №1547-ОД
Виды контроля в семестрах:
зачет с оценкой 3
экзамен 4
Распределение часов дисциплины по семестрам
Организация-разработчик:
Санкт-Петербургское государственное бюджетное профессиональное образовательное учреждение «Политехнический колледж городского хозяйства».
Преподаватель Лебедева Д.В.
Рабочая программа дисциплины
Основы алгоритмизации и программирования
разработана в соответствии с ФГОС СПО:
Федеральный государственный образовательный стандарт среднего профессионального образования по специальности 09.02.07 ИНФОРМАЦИОННЫЕ СИСТЕМЫ И ПРОГРАММИРОВАНИЕ (приказ Минобрнауки России от 09.12.2016 г. № 1547)
составлена на основании учебного плана:
по специальности Информационные системы и программирование
1. ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ
2. МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ
Требования к предварительной подготовке обучающегося:
Дисциплины (модули) и практики, для которых освоение данной дисциплины необходимо как предшествующее:
Разработка программных модулей (КПР 30)
3. ПЛАНИРУЕМЫЕ РЕЗУЛЬТАТЫ ОСВОЕНИЯ ДИСЦИПЛИНЫ
ОК 01.: Выбирать способы решения задач профессиональной деятельности применительно к различным контекстам
ОК 02.: Использовать современные средства поиска, анализа и интерпретации информации и информационные технологии для выполнения задач профессиональной деятельности
ОК 04.: Эффективно взаимодействовать и работать в коллективе и команде
ОК 05.: Осуществлять устную и письменную коммуникацию на государственном языке Российской Федерации с учетом особенностей социального и культурного контекста
ОК 09.: Пользоваться профессиональной документацией на государственном и иностранном языках
ПК 1.1.: Формировать алгоритмы разработки программных модулей в соответствии с техническим заданием.
ПК 1.2.: Разрабатывать программные модули в соответствии с техническим заданием.
ПК 1.3.: Выполнять отладку программных модулей с использованием специализированных программных средств.
ПК 1.4.: Выполнять тестирование программных модулей.
ПК 1.5.: Осуществлять рефакторинг и оптимизацию программного кода.
ПК 2.4.: Осуществлять разработку тестовых наборов и тестовых сценариев для программного обеспечения.
ПК 2.5.: Производить инспектирование компонент программного обеспечения на предмет соответствия стандартам кодирования.
В результате освоения дисциплины обучающийся должен:
Понятие алгоритмизации, свойства алгоритмов, общие принципы построения алгоритмов, основные алгоритмические конструкции.
Эволюцию языков программирования, их классификацию, понятие системы программирования.
Основные элементы языка, структуру программы, операторы и операции, управляющие структуры, структуры данных, файлы, классы памяти.
Подпрограммы, составление библиотек подпрограмм
Объектно-ориентированную модель программирования, основные принципы объектно-ориентированного программирования на примере алгоритмического языка: понятие классов и объектов, их свойств и методов, инкапсуляция и полиморфизма, наследования и переопределения
Разрабатывать алгоритмы для конкретных задач.
Использовать программы для графического отображения алгоритмов.
Определять сложность работы алгоритмов.
Работать в среде программирования.
Реализовывать построенные алгоритмы в виде программ на конкретном языке программирования.
Оформлять код программы в соответствии со стандартом кодирования.
Выполнять проверку, отладку кода программы.
4. ТЕМАТИЧЕСКОЕ ПЛАНИРОВАНИЕ ДИСЦИПЛИНЫ
Наименование разделов и тем /вид занятия/
Раздел 1. Элементы языка С++
Структура программы. Ввод и вывод данных/Пр/
Типы данных. Арифметические операции, выражения./Пр/
Встроенные математические функции. /Пр/
№1. Программы линейной структуры/Лаб/
№2. Арифметические операции. Операции инкремента и декремента/Лаб/
№3. Решение задач с использованием встроенных математических функций/Лаб/
Раздел 2. Операторы управления
Логические операции. Условный оператор /Пр/
Вложенные циклы. Оператор break и continue/Пр/
№4. Разветвляющие алгоритмы++/Лаб/
№5. Оператор выбора switch/Лаб/
№6. Оператор цикла for/Лаб/
№7. Оператор цикла while/Лаб/
№8. Оператор цикла do while/Лаб/
Описание функции, вызов, параметры/Пр/
Механизмы передачи параметров. Видимость переменных/Пр/
Рекурсивные функции. Перегрузка функций/Пр/
№10. Создание и использование функций/Лаб/
№11. Разделение программы на файлы/Лаб/
№12. Рекурсивные функции/Лаб/
Раздел 4. Одномерные массивы
Одномерные массивы, работа с элементами./Пр/
Алгоритмы сортировки элементов массива/Пр/
Одномерные массивы и функции/Пр/
№13. Обработка одномерных массивов/Лаб/
№14. Сортировка одномерных массивов/Лаб/
Двумерные массивы, работа с матрицами/Пр/
Двумерные массивы и функции/Пр/
№15. Обработка двумерных массивов/Лаб/
№16. Сортировка элементов двумерного массива/Лаб/
Дифференцированный зачет/Пр/
Работа с текстовыми файлами. Чтение и запись в файл/Пр/
№17. Чтение и запись в файл стандартных типов данных/Лаб/
Раздел 7. Указатели и массивы
Указатели. Операции над указателями /Пр/
№18. Динамические одномерные массивы/Лаб/
№19. Динамические двумерные массивы/Лаб/
Обзор функций - членов класса string/Пр/
№20. Работа со строками/Лаб/
Структуры. Массивы структур./Пр/
№21.Решение задач с использованием структур/Лаб/
Раздел 10. Введение в объектно-ориентированное программирование
Классы ООП: виды, назначение, свойства, методы, события./Пр/
Основные принципы ООП: инкапсуляция, наследование, полиморфизм./Пр/
Управление доступом. Конструкторы и деструкторы класса /Пр/
№22. Paзpa6oтка конструкторов и деструкторов/Лаб/
№23. Использование классов/Лаб/
№24. Создание наследованного класса/Лаб/
Обзор библиотеки STL. Контейнеры/Пр/
Контейнерный класс стек/Пр/
Контейнерный класс очередь/Пр/
Контейнерный класс list/Пр/
№25. Использование класса вектор/Лаб/
№26. Использование класса стек, очередь/Лаб/
№27. Использование класса список/Лаб/
Раздел 12. Визуальное событийно-управляемое программирование
Интерфейс среды разработчика. Основные компоненты среды, их назначение/Пр/
Свойства компонентов. Виды свойств/Пр/
Создание многооконного приложения/Пр/
№28. Знакомство со средой разработки. Создание простого оконного приложения /Лаб/
№29. Использование компонентов для работы с текстом/Лаб/
№30. Использование переключателей/Лаб/
№31. Использование выпадающего списка/Лаб/
№32. Использование кнопок и списков/Лаб/
№33. Создание проекта с использованием меню/Лаб/
№34. Работа с несколькими окнами/Лаб/
№35. Разработка программы построения геометрических примитивов /Лаб/
1. Немцова Т.И. Программирование на языке высокого уровня. Программирование на языке С++: Учебное пособие - М.: ИД ФОРУМ: ИНФРА-М, 2023
2. Страуструп Бьярне. Язык программирования C++. Краткий курс. Издательство: Вильямс, 2019
5.1. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
5.2. Перечень программного обеспечения
5.3. Перечень информационных справочных систем
6. МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ
7. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ДЛЯ ОБУЧАЮЩИХСЯ ПО ДИСЦИПЛИНЕ