Основы программирования на языке Python (базовый уровень) 136 часов

Скачать как pdf или txt
Скачать как pdf или txt
Вы находитесь на странице: 1из 18

Оглавление

1. Пояснительная записка ......................................................................................... 3


2. Новизна данной образовательной программы ................................................... 6
3. Общая характеристика курса «Основы программирования на языке Python
(базовый уровень)»...................................................................................................... 7
3.1. Основные разделы программы ...................................................................... 7
3.2. Формы организации учебных занятий ......................................................... 9
4. Личностные, предметные и метапредметные результаты освоения курса
«Основы программирования на языке Python (базовый уровень)» ..................... 11
5. Тематический план ............................................................................................. 14
6. Список литературы ............................................................................................. 18
1. Пояснительная записка
В настоящее время мы переживаем большие изменения в развитии
современного общества. В современную жизнь человека всё больше внедряются
компьютеры и информационные технологии. Всё большее значение приобретает
умение человека грамотно обращаться с компьютером, причём зачастую не на
пользовательском уровне, а на уровне начинающего программиста.
В обязательном школьном курсе информатики программирование нередко
представлено лишь на элементарном уровне, на это выделяется недостаточное
количество часов. Лишь немногие школы могут себе позволить преподавать
программирование на достойном уровне. Следствием этого является формальное
восприятие учащимися основ современного программирования и неумение
применять полученные знания на практике.
Опираясь на уникальный опыт преподавания программирования в
Яндекс.Лицее (дополнительное образование), в Школе анализа данных Яндекса
(АНО ДПО «ШАД») и на факультете компьютерных наук НИУ ВШЭ, мы
подготовили данную программу. В ней большое внимание уделяется
практической работе на компьютере, самостоятельному написанию кода.
Изучение основных принципов программирования невозможно без
регулярной практики написания программ на каком-либо языке. Нами был
выбран язык Python. Его синтаксис достаточно прост и интуитивно понятен, что
понижает порог вхождения и позволяет сосредоточиться на логических и
алгоритмических аспектах программирования, а не на выучивании тонкостей
синтаксиса. При этом Python является очень востребованным языком; он
отлично подходит для знакомства с различными современными парадигмами
программирования и активно применяется в самых разных областях от
разработки веб-приложений до машинного обучения.
Научившись программировать на языке Python, учащиеся получат мощный
и удобный инструмент для решения как учебных, так и прикладных задач.
Вместе с тем чистота и ясность его конструкций позволит учащимся потом с
лёгкостью выучить любой другой язык программирования.
Знания и умения, приобретённые в результате освоения курса, могут быть
использованы обучающимися при сдаче ОГЭ и ЕГЭ, при участии в олимпиадах
по программированию, при решении задач по физике, химии, биологии,
лингвистике и другим наукам, а также они являются фундаментом для
дальнейшего совершенствования мастерства программирования.
В основу курса «Основы программирования на языке Python (базовый
уровень)» заложены принципы модульности и практической направленности,
что обеспечит вариативность обучения. Содержание учебных модулей
направлено на:
 детальное изучение алгоритмизации;
 реализацию межпредметных связей;
 организацию проектной и исследовательской деятельности обучающихся.
Важным аспектом программы является самостоятельная работа над
заданиями: школьники учатся решать задачи без помощи преподавателя. Для
этого в содержании курса фигурируют задания, в которых:
 для решения задачи необходимо найти какую-то информацию в сети
Интернет;
 может потребоваться устранение ошибки, которую не так просто быстро
обнаружить;
 условие сформулировано недостаточно прозрачно и ученику необходимо
самостоятельно доформулировать его (или задать правильные вопросы
преподавателю).
Программа «Основы программирования на языке Python (базовый
уровень)» рассчитана на 136 учебных часов и 68 часов самостоятельной работы
и предназначен для учеников 8, 9 или 10 классов общеобразовательных школ
разного уровня подготовки и с разной степенью мотивации. Для большей
усвояемости материала рекомендуется вводить дополнительно часы для
консультационной деятельности и практической работы.
Целью курса является создание условий для изучения методов
программирования на языке программирования Python; рассмотрение различных
парадигм программирования, предлагаемых этим языком (процедурная,
функциональная, объектно-ориентированная); подготовка к использованию как
языка программирования, так и методов программирования на Python в учебной
и последующей профессиональной деятельности в различных предметных
областях.
Настоящий курс направлен на решение следующих задач:
 формирование и развитие навыков алгоритмического и логического
мышления, грамотной разработки программ;
 знакомство с принципами и методами функционального
программирования;
 знакомство с принципами и методами объектно-ориентированного
программирования;
 приобретение навыков работы в интегрированной среде разработки на
языке Python;
 изучение конструкций языка программирования Python;
 знакомство с основными структурами данных и типовыми методами
обработки этих структур;
 приобретение навыков разработки эффективных алгоритмов и программ
на основе изучения языка программирования Python;
 приобретение навыков поиска информации в сети Интернет, анализ
выбранной информации на соответствие запросу, использование
информации при решении задач;
 развитие у обучающихся интереса к программированию;
 формирование самостоятельности и творческого подхода к решению задач
с использованием средств вычислительной техники;
 воспитание упорства в достижении результата;
 расширение кругозора обучающихся в области программирования;
 систематизации знаний по математическим основам информатики.
По окончании курса ученик приобретает следующие компетенции:
 знание основ современных языков программирования;
 умение объяснять и использовать на практике как простые, так и сложные
структуры данных и конструкции для работы с ними;
 умение искать и обрабатывать ошибки в коде;
 умение разбивать решение задачи на подзадачи;
 способность писать грамотный, красивый код;
 способность анализировать как свой, так и чужой код;
 понимание основ представления, кодирования, хранения и передачи
информации, логических законов построения компьютеров;
 способность работать с информацией: находить, оценивать и использовать
информацию из различных источников, необходимую для решения
профессиональных задач (в том числе на основе системного подхода);
 способность грамотно строить коммуникацию, исходя из целей и
ситуации.
2. Новизна данной образовательной программы
Программа курса:
 обеспечивает знакомство с фундаментальными понятиями
алгоритмизации и программирования на доступном уровне;
 имеет практическую направленность с ориентацией на реальные
потребности, соответствующие возрасту ученика;
 охватывает как алгоритмическое направление, так и вопросы
практического использования полученных знаний при решении задач из
различных областей знаний;
 ориентирована на существующий парк вычислительной техники и
дополнительные ограничения;
 допускает возможность варьирования в зависимости от уровня подготовки
и интеллектуального уровня учащихся (как группового, так и
индивидуального);
 предусматривает возможность индивидуальной работы с учащимися.
Практическая значимость курса заключается в том, что он способствует
более успешному овладению знаниями и умениями по направлению
«Программирование» через развитие самостоятельности обучающихся и
оптимизацию средств и методов обучения.
Элементы программы курса могут быть рекомендованы для использования
учителями информатики при проведении лабораторно-практических и
практических занятий.

3. Общая характеристика курса «Основы программирования на языке


Python (базовый уровень)»
3.1. Основные разделы программы
Модуль 1. Введение в программирование
Знакомство с электронной образовательной системой: регистрация,
организация личного кабинета, поиск и выкладывание материалов. Знакомство с
системой автоматизированной проверки задач.
Основные понятия программирования: исполнитель, система команд,
алгоритм, программа, среда разработки, интерпретатор, код программы и
редактор кода.
Ввод-вывод в программе, условный оператор, оператор цикла с
предусловием. Простейшие программы с использованием условного оператора,
оператора циклов while и операторов ввода-вывода. Технология разработки
программы.
На этом этапе обучающиеся разрабатывают первые алгоритмы и
программы, а также анализируют, на какие функциональные блоки может быть
разбита программа, и определяют работоспособность разработанной программы.
В течение модуля ученики решают большое количество задач: от самых
простых до сложных.
Модуль 2. Базовые конструкции языка Python
Понятие о языке высокого уровня Python. Структура программы,
переменные и константы, работа с числовыми переменными, арифметические
операторы в Python. Основные управляющие конструкции алгоритмов с
ветвлением в Python.
Устройство циклов for. Основные управляющие конструкции циклического
алгоритма в Python. Простейшие циклы и циклы с переменными.
Работа со списками, строками, множествами и кортежами в Python. Понятие
итератора.
Понятие ассоциативного массива. Словари в Python. Решение задач.
Решение задач.
Модуль 3. Решение прикладных задач в Python
Понятие подпрограммы, процедуры, функции. Функции в Python.
Модули в Python. Подключение и использование модулей стандартной
библиотеки. Модульный принцип компоновки программы. Работа с
документацией в стандартной библиотеке. Понятие репозитория различных
пакетов Python. Работа с внешними библиотеками Python и утилитой pip.
Решение задач.
Модуль 4. Введение в ООП на языке Python
Понятие класса и объекта. Создание классов на языке Python. Атрибуты и
экземпляры объектов. Методы и перегрузка операторов. «Магические» методы
в Python. Наследование и множественное наследование. Проектирование
классов.
Самостоятельная работа: работа с конспектом, который описывает способы
решения задач, разработка проекта по индивидуальному заданию, составление
отчёта о выполнении индивидуальной или совместной работы.
Тематика самостоятельных и контрольных работ:
 задачи, в которых по заданному алгоритму необходимо написать
программу;
 задачи, в которых необходимо составить алгоритм решения и написать по
нему программу;
 задачи, для решения которых необходимо найти некоторую информацию
в Интернете.
Выполненные самостоятельные работы загружаются в автоматизированную
тестирующую систему для дальнейшей оценки.
3.2. Формы организации учебных занятий
Основной тип занятий — комбинированный, сочетающий в себе элементы
теории и практики. Большинство заданий курса выполняется самостоятельно с
помощью персонального компьютера и необходимых программных средств.
Единицей учебного процесса является блок уроков (модуль). Каждый такой
блок охватывает отдельную информационную технологию или её часть. Внутри
блоков разбивка по времени изучения производится учителем самостоятельно,
но с учётом рекомендованного календарно-тематического плана. С учётом
регулярного повторения ранее изученных тем темп изучения отдельных
разделов блока определяется субъективными и объективными факторами.
Каждая тема курса начинается с постановки задачи — характеристики
предметной области или конкретной программы на языке Python, которую
предстоит изучить. С этой целью учитель проводит демонстрацию презентации
или показывает саму программу, а также готовые работы, выполненные в ней.
Закрепление знаний проводится c помощью практики отработки умений
самостоятельно решать поставленные задачи, соответствующих минимальному
уровню планируемых результатов обучения.
Основные задания являются обязательными для выполнения всеми
обучающимися в классе. Задания выполняются на компьютере с использованием
интегрированной среды разработки. При этом ученики не только формируют
новые теоретические и практические знания, но и приобретают новые
технологические навыки.
В каждую тему курса интегрированы вопросы, связанные с теоретическими
основами изучаемого раздела. Это позволяет учащимся получить более глубокое
представление о принципах работы с информацией и способах автоматизации
этой деятельности.
Методика обучения ориентирована на индивидуальный подход. Для того
чтобы каждый ученик получил наилучший результат обучения, программой
предусмотрены дополнительные задания для самостоятельной работы на
домашнем компьютере. Такая форма организации обучения стимулирует
интерес ученика к предмету, активность и самостоятельность учащихся,
способствует объективному контролю глубины и широты знаний, повышению
качества усвоения материала обучающимися, позволяет педагогу получить
объективную оценку выбранной им тактики и стратегии работы, методики
индивидуального обучения и обучения в группе, выбора предметного
содержания.
Для самостоятельной работы используются разные по уровню сложности
задания, которые носят репродуктивный и творческий характер. Количество
таких заданий в работе может варьироваться.
В ходе обучения проводится промежуточное тестирование по темам для
определения уровня знаний учеников. Выполнение контрольных заданий
способствует активизации учебно-познавательной деятельности и ведёт к
закреплению знаний, а также служит индикатором успешности
образовательного процесса.
Распределение учебной нагрузки
Для организации занятий по программе «Основы программирования на
языке Python (базовый уровень)» необходимо выделить 1 сдвоенный урок (2 по
45 минут) в неделю. Для лучшего усвоения материала (в случае такой
необходимости) рекомендуется выделять еще 1 сдвоенный урок, проводя в
течение этого времени дополнительные консультации.
Методы организации учебного процесса
При организации занятий по программе «Основы программирования на
языке Python (базовый уровень)» для достижения поставленных целей и решения
поставленных задач используются формы проведения занятий с активными
методами обучения:
 занятие в форме проблемно-поисковой деятельности;
 занятие с использованием межпредметных связей;
 занятие в форме мозгового штурма;
 занятие в форме частично-поисковой деятельности.
Формы и методы контроля:
 тестирование;
 устный опрос;
 самостоятельные и контрольные работы;
 участие в проектной деятельности.
Общая характеристика учебного процесса:
 при изучении курса используются практические и самостоятельные
работы;
 курс обучения заканчивается написанием программы для решения одной
из задач.
4. Личностные, предметные и метапредметные результаты освоения
курса «Основы программирования на языке Python (базовый
уровень)»
Личностные результаты:
 формирование ответственного отношения к учению, способности довести
до конца начатое дело аналогично завершённым творческим учебным
проектам;
 формирование способности к саморазвитию и самообразованию
средствами информационных технологий на основе приобретённой
благодаря иллюстрированной среде программирования мотивации к
обучению и познанию;
 развитие опыта участия в социально значимых проектах, повышение
уровня самооценки благодаря реализованным проектам;
 формирование коммуникативной компетентности в общении и
сотрудничестве со сверстниками в процессе образовательной, учебно-
исследовательской и проектной деятельности, участия в конкурсах и
конференциях различного уровня;
 формирование целостного мировоззрения, соответствующего
современному уровню развития информационных технологий;
 формирование осознанного позитивного отношения к другому человеку,
его мнению, результату его деятельности;
 формирование ценности здорового и безопасного образа жизни; усвоение
правил индивидуального и коллективного безопасного поведения при
работе с компьютерной техникой.

Предметные результаты:
 умение определять результат выполнения алгоритма при заданных

исходных данных, узнавать изученные алгоритмы обработки чисел и


числовых последовательностей, создавать на их основе несложные
программы анализа данных, читать и понимать несложные программы,
написанные на выбранном для изучения универсальном алгоритмическом
языке высокого уровня;
 формирование представлений об основных предметных понятиях
(«информация», «алгоритм», «исполнитель», «модель») и их свойствах;
 развитие логических способностей и алгоритмического мышления, умения
составить и записать алгоритм для конкретного исполнителя, знакомство с
основными алгоритмическими структурами — линейной, условной и
циклической;
 умение выполнять пошагово (с использованием компьютера или вручную)

несложные алгоритмы управления исполнителями и анализа числовых и


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

об их свойствах, умение оперировать с числами в различных системах


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

Метапредметные результаты:
 умение самостоятельно ставить и формулировать для себя новые задачи,
развивать мотивы своей познавательной деятельности;
 умение самостоятельно планировать пути решения поставленной
проблемы для получения эффективного результата; понимание, что в
программировании длинная программа не всегда лучшая;
 умение критически оценивать правильность решения учебно-
исследовательской задачи;
 умение корректировать свои действия, вносить изменения в программу и
отлаживать её в соответствии с изменяющимися условиями;
 владение основами самоконтроля, способность к принятию решений;
 умение создавать, применять и преобразовывать знаки и символы, модели
и схемы для решения учебно-исследовательских и проектных работ;
 формирование и развитие компетентности в области использования
информационно-коммуникационных технологий (ИКТ-компетенция);
 умение организовывать учебное сотрудничество и совместную
деятельность с учителем и сверстниками в процессе проектной и учебно-
исследовательской деятельности.

5. Тематический план
План составлен из расчета 2-х часов в неделю, однако мы рекомендуем все
же использовать 3 или 4 часа в неделю, выделяя дополнительное время для
отработки материала или консультаций.

Учебный год содержит 34 недели

Тематическое планирование 1 полугодия


№ Содержание урока Кол-во
1 Нулевой урок. Знакомство с программой и с LMS. 2
Установка и настройка среды программирования
2 PEP8. Ввод-вывод. Переменные 2
3 Введение в математическую логику. Условный оператор. 2
Отступы. Операции над строками
4 Сложные условия. Вложенные структуры. Логические 2
операции и их свойства (таблицы истинности).
5 Типы данных. Операции над числами 2
6 Приоритет операций. Простейшие функции 2
7 Самостоятельная работа на линейные алгоритмы, 2
преобразование типов, простейшие функции
8 Цикл с предусловием. Введение в системы счисления 2
9 Решение задач на цикл с предусловием. Алгоритм Евклида 2
10 Отладка программ 2
11 Цикл for. Диапазоны 2
12 Резерв 2
13 Самостоятельная работа на циклы 2
14 Булевы переменные. Прерывания и продолжения циклов 2
15 Вложенные циклы 2
16 Контрольная работа на циклы и линейные алгоритмы 2
17 Резерв 2
Тематическое планирование 2 полугодия
1 Элементы теории множеств. Множества в Python. 2
Представление логических операций через диаграммы
Эйлера-Венна
2 Строки. Индексация 2
3 Строки. Срезы. Строки. Системы счисления с основаниями, 2
являющимися степенью числа 2
4 Резерв 2
5 Самостоятельная работа на строки и множества 2
6 Списки 2
7 Кортежи 2
8 Списочные выражения. Методы split() и join() 2
9 Другие методы списков и строк 2
10 Резерв 2
11 Самостоятельная работа на методы строк и списков 2
12 Вложенные списки. Арифметические операции в различных 2
системах счисления
13 Словари 2
14 Решение задач на словари 2
15 Резерв 2
16 Контрольная работа на весь пройденный за год материал 2
17 Резерв 2

Сводная информация:
1. Уроков: 22 — 44 часа
2. Контрольных мероприятий: 6 — 12 часов
3. Резервы: 6 — 12 часов
Тематическое планирование 3 полугодия
№ Содержание урока Кол-во
1 Повторение 2
2 Функции. Введение 2
3 Функции. Возвращение значений 2
4 Области видимости переменных 2
5 Функции. Передача параметров 2
6 Самостоятельная работа на функции 2
7 Функции с переменным числом аргументов 2
8 Лямбда-функции 2
9 Функциональная обработка коллекций 2
10 Библиотеки Python (стандартная библиотека) 2
11 Резерв 2
12 Самостоятельная работа на функции и стандартную 2
библиотеку
13 Библиотеки Python (графика) 2
14 Библиотеки Python (графика + звук) 2
15 Библиотеки Python (документы). Электронные таблицы и 2
работа с ними
16 Контрольная работа на функции и библиотеки 2
17 Резерв 2
Тематическое планирование 4 полугодия
1 Повторение 2
2 Файловая система. Файлы в Python 2
3 Хранение данных. Работа с csv-документами. 2
4 Резерв 2
5 Самостоятельная работа на файлы 2
6 Введение в ООП 2
7 Введение в ООП. Полиморфизм 2
8 Определение операторов 2
9 Самостоятельная работа на ООП 2
10 Введение в ООП. Наследование 2
11 Введение в ООП. Наследование. Часть №2 2
12 Резерв 2
13 Контрольная работа на тему ООП 2
14 Методы проектирования программ 2
15 Работа над проектом 2
16 Работа над проектом 2
17 Резерв 2

Сводная информация:
1. Уроков: 20 — 40 часов
2. Контрольных мероприятий: 6 — 12 часов
3. Резервы: 5 — 10 часов
4. Проекты: 3 — 6 часов
6. Список литературы
Литература, использованная при подготовке программы
1. К. Ю. Поляков, Е. А. Еремин. Информатика. Углублённый уровень. Учебник
для 8, 9, 10 классов. М.: БИНОМ. Лаборатория знаний, 2014 или более поздние
редакции.
2. М. Лутц. Изучаем Python. СПб.: Символ-Плюс, 2011.
3. Задачи по программированию. Под ред. С. М. Окулова, М.: БИНОМ.
Лаборатория знаний, 2006.
4. С. М. Окулов. Основы программирования. М.: Бином. Лаборатория знаний,
2012.
Литература, рекомендованная обучающимся
1. М. Лутц. Изучаем Python. СПб.: Символ-Плюс, 2011.
2. Информатика и ИКТ. Задачник-практикум в 2 частях. Под ред. И. Г. Семакина
и Е. К. Хеннера. М.: БИНОМ. Лаборатория знаний, 2014.
Ресурсы в интернете
1. Материалы и презентации к урокам в LMS Яндекс.Лицея.
2. Сайт pythonworld.ru — «Python 3 для начинающих».
3. Сайт pythontutor.ru — «Питонтьютор».

Вам также может понравиться