Управление образования г. Калуги МБОУ «СОШ№12»г. Калуги» «Утверждаю» _____________ Директор школы В.Н. Повереннов Принято на заседании педсовета 26.08. 2020г. Программа клуба программирования «АЛГОРИТМ» Общеразвивающая программа технической направленности Основы программирования на языке Python Составил: педагог дополнительного образования МБОУ «СОШ №12» г. Калуги Никишин А.И. КАЛУГА - 2020 ПАСПОРТ ПРОГРАММЫ Полное название программы Автор программы, должность Адрес реализации программы (адрес школы, телефон) Направленность программы Срок реализации программы Форма реализации программы Возраст учащихся Форма организации образовательной деятельности Название объединения «Основы программирования на языке Python» Никишин Андрей Иванович, учитель информатики МБОУ «СОШ№12» города Калуга, ул. Молодёжная, д.5, т. 8(4842)55-44-12 техническая 1год, 198часов групповая 13-16 лет Клуб программирования Клуб программирования «Алгоритм» РАЗДЕЛ 1. «КОМПЛЕКС ОСНОВНЫХ ХАРАКТЕРИСТИК ПРОГРАММЫ» 1.1. ПОЯСНИТЕЛЬНАЯ ЗАПИСКА В мире бурными темпами идёт развитие компьютерных технологий. Эти технологии невозможно представить без программ, которые написаны программистами с помощью языков программирования. Существуют объектно-ориентированные и универсальные языки программирования. Даже в школе возможно изучение нескольких языков программирования — это может быть Basic, Pascal, C++, Python и другие. Задача программиста — знать язык программирования, чтобы писать программы и управлять компьютером. Программирование — это процесс создания программ для компьютера. Программа клуба программирования «Алгоритм» представляет систему занятий с детьми среднего и старшего школьного возраста, которые интересуются компьютерными технологиями и хотят научиться создавать свой программный продукт, хотят научится сделать свой первый творческий программный проект. Она составлена в соответствии с законом «Об образовании», федеральными и региональными правовыми документами, отражающими проблемы и задачи формирования личности школьника в современной образовательной среде, обеспеченной компьютерными технологиями и направлена на развитие креативности мышления, технической грамотности в деятельности подростков и старшеклассников. Направленность программы: техническая. Вид деятельности: информационная культура и информационные технологии. Вид программы: модифицированная. Актуальность: Программа актуальна для обучения алгоритмическому мышлению, для обучения навыкам работы с различным программным обеспечением, для освоения базовых и современных методов программирования. Так как в ходе обучения приходиться решать различные математические, физические и другие задачи, программа способствует межпредметным связям в рамках общеобразовательной программы. Новизна. Освоение собственно технологий – то есть формирование ИКТ - квалификации учащегося, является частью образовательной цели формирования его ИКТкомпетентности. Знания по теории и практике программирования воспитанник получает в контексте практической деятельности на персональном компьютере в среде программирования Python, это также дает возможность изучать теоретические вопросы в их деятельно-практическом аспекте. Педагогическая целесообразность. Данная программа позволяет: - повысить технологические умения по работе с прикладными программными средствами компьютера; - закрепить выработанные общеучебные умения и навыки программирования; - развить воображение, фантазию, мышление; - научить коммуникативному взаимодействию при выполнении в группе проектов (в том числе и сетевых); - ориентировать на осознанный выбор профессии в будущем. Отличительные особенности данной программы. Курс носит прикладной характер и призван выработать у обучаемых знания о специфике языка программирования и приёмов программирования для решения различных задач. Последовательность структуры изложения материала дает возможность закрепить полученные ранее навыки и применить их на новом уровне. Формирование и закрепление соответствующих навыков оперирования прикладными программными средствами осуществляется в процессе оформления тематических задач. Выбор тематики идет с учетом индивидуальных потребностей учащегося, тем самым повышается мотивация при выполнении проектов. Адресат программы. Программа рассчитана на учащихся школьного возраста. В школьном возрасте происходит интенсивное развитие физических и духовных сил, создание фундамента, на котором построится все дальнейшее развитие ученика. Возраст учащихся: 13-16 лет. Особенности организации образовательного процесса: - Объем программы: 198 часов. - Срок реализации программы: 1 год - Форма обучения: классно-урочная система обучения с лекциями, беседами и практическими занятиями. - Режим занятий: 198 часов в год – 6 часов в неделю. - Периодичность и продолжительность занятий: 3 раза в неделю по 2 часа. - Форма обучения: очная. - Особенности набора: свободный. - Форма организации образовательной деятельности: клуб. - Вид группы: школьная. - Состав группы: постоянный. Формы занятий: 1. по количеству участников: - индивидуальные занятия (беседа, консультация); - групповые 2. по методу обучения: - беседа; - лекция; - наблюдения; - индивидуальная работа; - творческие задания; Коллектив клуба программирования “ Алгоритм ” представляет собой добровольную группу учащихся, интересующихся цифровыми технологиями в области программирования и работы с программным обеспечением. Программа клуба программирования “ Алгоритм ” основана на учебниках “Основы программирования на языке Python.” Д.Златопольский и «Python на практике.» Марк Самерфилд. 1.2. ЦЕЛЬ И ЗАДАЧИ Цель: достижение качественного уровня в умении владеть навыками программирования и приёмами объектно-ориентированного программирования (ООП), создание собственных программ и прохождение всего процесса изготовления программного продукта. Для реализации поставленной цели программа решает следующие задачи: • • • • • создать условия для включенности воспитанников в информационное и образовательное пространство, формируемое программой клуба программирования “Алгоритм ”, с целью их самореализации и ориентации на социальнозначимую деятельность; сформировать навыки работы с программным обеспечением; развить творческие способности; развить коммуникативные качества личности; способствовать развитию алгоритмического мышления. Важное значение имеет постоянная практическая отработка умений и навыков, причем более эффективно это делать в процессе создания компьютерных программ, когда учащиеся применяют полученные знания в комплексе: от умения разрабатывать алгоритмы, писать компьютерный код, до умения получить конечный продукт социального значения. В процессе обучения овладевают приёмами алгоритмизации задач, работой с различным программным обеспечением, позволяющим создавать и обрабатывать программный продукт, создавать компьютерные графические объекты. Учащиеся принимают участие в освоении современных приёмов программирования, в адаптации своих программ к школьному учебному процессу. 1.3. СОДЕРЖАНИЕ ПРОГРАММЫ. УЧЕБНО-ТЕМАТИЧЕСКИЙ ПЛАН № п/п Тема Теоретич. часы Практич. часы Всего 1. Знакомство и изучение PyCharm –интегрированной среды разработки для языка программирования Python. 3 3 6 2. Программа и синтаксис ЯП Python. 3 3 6 3. Python простейшие графические возможности. 4 8 12 4. Python вычислительные возможности, математические функции 3 3 6 5. Python базовые алгоритмические структуры в программе. 4 8 12 6. Python создание сложных графических объектов. 2 6 8 7. Создание функций и работа с функциями в Python. 2 10 12 8. Списки, строки, кортежи, словари в Python. 4 8 12 9. Python библиотеки и модули программирования 4 22 26 10. Python объектно-ориентированное программирование 4 54 58 11. Создание программных проектов ___ 40 40 ИТОГО 33 165 198 СОДЕРЖАНИЕ ПРОГРАММЫ Тема 1: Знакомство и изучение PyCharm –интегрированной среды разработки для языка программирования Python. Теория. Назначение и возможности интегрированной среды разработки PyCharm. Практика. Установка и запуск среды программирования Python и PyCharm Тема 2: Программа и синтаксис ЯП Python. Теория. Структура программы и команды в Python. Практика. Решение простейших задач в Python. Написание кода первых программ. Тема 3: Python простейшие графические возможности. Теория. Что такое двумерная компьютерная графика? Координаты графического поля. Команды рисования. Практика. Создание простых геометрических фигур с использованием графической библиотеки turtle. Тема 4: Python вычислительные возможности, математические функции. Теория. Вычисления в среде программирования Python. Практика. Применение арифметических действий и математических функций в вычисляемом выражении. Решение математических задач в Python. Ввод и вывод данных. Тема 5: Python базовые алгоритмические структуры в программе. Теория. Линейные, циклические и ветвящиеся алгоритмы. Смешанные структуры программ. Практика. Создания программ с линейной, циклической и ветвящейся структурой в Python. Тема 6: Python создание сложных графических объектов. Теория. Применение алгоритмических структур для создания сложных графических объектов. Практика. Формирование сложных графических объектов в среде программирования Python. Тема 7: Создание функций и работа с функциями в Python. Теория. Разнообразие и назначение функций в программировании. Практика. Формирование и применение функций в среде программирования Python. Тема 8: Списки, строки, кортежи, словари в Python. Теория. Назначение списков, строк, кортежей и словарей в Python. Практика. Формирование и применение списков, строк, кортежей и словарей в среде программирования Python. Тема 9: Python библиотеки и модули программирования. Теория. Возможности и применение библиотек и модулей в системах программирования. Практика. Создание программ с применением библиотек и модулей в Python. Разаботка и формирование графического интерфейса программы. Тема 10: Python объектно-ориентированное программирование. Теория. Неограниченные возможности объектно-ориентированного программирования. Практика. Создание программ приёмами объектно-ориентированного программирования. Тема 11: Создание программных проектов. Практика. Создание программного продукта, как проекта. Защита проекта. 1.4. ПРОГНОЗИРУЕМЫЕ РЕЗУЛЬТАТЫ Учащиеся должны знать: • основные приёмы и правила создания программ; • • • • программное обеспечение и способы эффективной работы с ним; что такое модули и библиотеки в программировании; как формировать программу на основе объектно-ориентированного программирования; новые направления и возможности программирования. Учащиеся должны уметь: • • • • • • пользоваться различным программным обеспечением; владеть языком программирования; писать оптимальный компьютерный код; придумывать и реализовывать свои алгоритмы; правильно оформить программный продукт; применять программирование повышения уровня своего образования. РАЗДЕЛ № 2 «КОМПЛЕКС ОРГАНИЗАЦИОННО-ПЕДАГОГИЧЕСКИХ УСЛОВИЙ» 2.1 КАЛЕНДАРНЫЙ ГРАФИК. Неделя Дата 1 2-7 сент. 2 3 4 5 6 7 8 8-14 сент. 16-21 сент. 23-28 сент. 30-5 окт. 7-12 окт. 14-19 окт. 21-26 окт. 9 28-2 нояб. 10 4-9 нояб. 11 12 11-16 нояб. 18-23 нояб. Тема Вводное занятие. Инструктаж по ТБ. Установка и работа с ПО Python и PyCharm. Структура программы и синтаксис ЯП. Простейшие программы на Python. Данные в программе. Ввод данных в программу и вывод. Вычисления в программе. Арифметические действия в программе. Компьютерная графика. Графический режим turtle. Графические объекты. Создание графических объектов в режиме turtle. Задание цвета графическим объектам Работа с цветовыми объектами. Команда заливки цвета. Заливка цветом простейших фигур. Применение текста в графике. Воспроизводство текста в графическом режиме. Математические функции. Вычислительные возможности программы, применение математических функций. Линейный алгоритм. Возможности линейных алгоритмов. Циклический алгоритм. Возможности циклических алгоритмов. Кол-во Форма работы часов 2 Объяснение Объяснение 4 Практика 2 Объяснение 4 Практика 2 Объяснение 4 Практика 3 Объяснение 4 Практика 2 Объяснение 4 Практика 2 Объяснение 4 Практика 2 4 2 4 2 Объяснение Практика Объяснение Практика Объяснение 4 Практика 2 Объяснение 4 Практика 2 4 2 4 Объяснение Практика Объяснение Практика 13 14 15 16 17 25-30 нояб. 2-7 дек. 9-14 дек. 16-21 дек. 23-28 дек. 18 13-18 янв. 19 20-25 янв. 20 27-31 янв. 21 22 3-8 фев. 10-15 фев. 23 17-21 фев. 24 25-28 фев. 25 2-6 марта 26 10-14 марта 27 28 16-21 марта 23-28 марта 29 30-4 апр. 30 6-11 апр. 31 13-18 апр. 32 20-25 апр. 33 27-30 Программы с циклами. Циклы с математическими функциями. Алгоритм с ветвлением. Возможности ветвящихся алгоритмов. Условия выбора в программе с ветвлением. Логические операторы в программе. Использование случайных чисел. Датчик случайных чисел в программе. Сложные графические объекты. Создание Сложных графических объектов. Вложенные циклы. Применение вложенных циклов в компьютерной графике. Ошибки и исключения. Обработка ошибок и исключений в программе. Формирование функции. Создание и использование в программе функций. Параметры и аргументы функций. Программы для решения задач. Дополнительные библиотеки и модули. Применение библиотек и модулей. Списки данных. Заполнение списков данными и вывод данных из списков. Функции и методы списков. Программы с применением функций и методов списков. Работа со списками в программе. Применение random для списков. Строковые переменные. Строки в программе. Формирование строк в программе. Сравнение строк. Методы строк. Применение методов. Кортежи. Кортежи в программе. Сложные кортежи. Словари. Словари в программе. Заполнение словарей данными и вывод данных из словарей. Методы словарей. Работа с методами словарей. Файл. Работа с файлами. Загрузка данных из файла, запись результатов программы в файл. Объектно-ориентированное программирование. Возможности модуля Tkinter. Создание в программе окон. 2 4 2 4 2 4 2 4 2 4 2 Объяснение Практика Объяснение Практика Объяснение Практика Объяснение Практика Объяснение Практика Объяснение 4 Практика 2 Объяснение 4 Практика 2 Объяснение 4 Практика 2 4 2 4 2 Объяснение Практика Объяснение Практика Объяснение 4 Практика 2 Объяснение 4 Практика 2 4 2 Практика Практика Объяснение 4 Практика 2 4 2 4 2 Объяснение Практика Объяснение Практика Объяснение 4 Практика 2 4 2 Объяснение Практика Объяснение 4 Практика 2 Объяснение 4 3 Практика Практика апр. 34 35 36 Создание кнопок управления. Интерфейс программы. 12-16 Формирование интерфейса окна. Обработка май событий. 18-23 Программа-проект. май Работа над проектом 25-29 Типовые задачи обработки данных. май Защита проекта. 3 2 Практика Объяснение 4 Практика 2 4 2 4 Объяснение Практика Практика Практика 2.2. СИСТЕМА КОНТРОЛЯ 1. Предварительный контроль: Выявление подготовленности ребенка - владение навыками программирования и знание ЯП (собеседование, практические задания, упражнения). 2. Промежуточный контроль: Контроль за усвоением знаний, умений, навыков. Диагностика формирования навыков программиста , развития творческих способностей. 3. Заключительный контроль: Полученные за учебный год умения и навыки (создание программного продукта). 2.3. ЭТАПЫ ПЕДАГОГИЧЕКОГО КОНТРОЛЯ № п/п Сроки Знания, умения, навыки, которые контролируются Форма подведения итогов 1. Октябрь Умение работать в PyCharm Создание программ на ЯП Python. 2. Ноябрь Умение создавать геометрические фигуры Создание программ на ЯП Python. 3. Декабрь Умение производить вычисления, вводить и выводить данные. Создание программ на ЯП Python. 4. Январь Умение пользоваться различными алгоритмическими структурами. Создание программ на ЯП Python. 5. Февраль Умение создавать сложные геометрические объекты Создание программ на ЯП Python. 6. Апрель Умение формировать графический интерфейс программы. Создание программ на ЯП Python. 7. Май Создание индивидуального Защита индивидуального программного проекта программного проекта. 2.4 МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ПРОГРАММЫ Занятия проводятся в хорошо освещенном помещении, полностью оборудованном необходимыми техническими средствами: компьютеры, компьютерная сеть, принтер, сканер, проектор. В работе используются учебные презентации, маркеры для классной доски. НОРМАТИВНО-ПРАВОВЫЕ ДОКУМЕНТЫ И МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПРАВИТЕЛЬСТВА РОССИЙСКОЙ ФЕДЕРАЦИИ: - "Конституция Российской Федерации" (принята всенародным голосованием 12.12.1993) (с учетом поправок, внесенных Законами РФ о поправках к Конституции РФ от 30.12.2008 N 6-ФКЗ, от 30.12.2008 N 7-ФКЗ, от 05.02.2014 N 2-ФКЗ, от 21.07.2014 N 11-ФКЗ) - Федеральный закон Российской Федерации от 29 декабря 2012 г. N 273-ФЗ «Об образовании в Российской Федерации». - Федеральный государственный образовательный стандарт начального общего образования (ФГОС НОО) от 6 октября 2009 г. N 373; в ред. от 11 февраля 2013 г. N 26993. - Приказ Министерства образования и науки Российской Федерации (Минобрнауки России) от 17 октября 2013 г. N 1155 г. Москва. Об утверждении федерального государственного образовательного стандарта дошкольного образования" . - Национальная стратегия действий в интересах детей на 2012 - 2017 годы (утв. Указом Президента РФ от 01.06.2012 N 761) - Государственная программа Российской Федерации «Развитие образования» на 20132020 годы (Распоряжение правительства РФ от 22 ноября 2012 г. № 2148-р). ЛИТЕРАТУРА 1. «Основы программирования на языке Python.» Д.Златопольский, издание ДМК Пресс, 2017. 2. «Python на практике.» Марк Самерфилд, издание ДМК Москва 2014.