ПЕРСПЕКТИВИ ВИВЧЕННЯ МОВИ ПРОГРАМУВАННЯ PYTHON В ШКІЛЬНОМУ КУРСІ ІНФОРМАТИКИ
Веремієнко В.О., викладач
Уманський державний педагогічний університет імені Павла Тичини
Інформатика в даний час – найбільш змінюється в області змісту навчальна дисципліна, як серед шкільних дисциплін, так і серед предметів, що вивчаються у вузах і освітніх установах середньої професійної освіти. Необхідно відзначити, що в більшості шкіл наразі в якості мов програмування вивчаються Pascal або Basic, в зв’язку з чим виникає закономірне питання, чи є необхідність у вивченні мови Python майбутніми викладачами інформатики, які навчаються у вищому навчальному закладі, чи є необхідність в оволодінні основами цієї мови старшими школярами.
Мова програмування Python станом на 2019, є однією із самих затребуваних мов. У 2019 році Python зайняв 1 місце в рейтингу PYPL [1] (рейтинг мов, за якими найчастіше шукають навчальні посібники (вивчають)) і стала мовою року за версією TIOBE [2] (індекс популярності мов програмування на основі аналізу пошукових запитів). Сфера використання мови (за даними jetbrains.com [3](розробник IDE)):
27% – web-розробка
17% – аналіз даних
11% – машинне навчання
11% – адміністрування і DevOps
Це одина з кращих мов не тільки для навчання, але і для вирішення більшого кола практичних завдань.
Безумовно, вивчення школярами Python, як першої мови програмування, може викликати деякі закономірні побоювання: високлрівневість мови, типизація структур, наявність бібліотек широкого спектру, в яких описані стандартні алгоритми.
Багато вчителів та викладачів висловлюють побоювання, що використовуючи високорівневу мову програмування, як першу до вивчення, учні та студенти не опанують базові алгоритми та поняття: нариклад поняття «масив» замінюється поняттям «високорівневий список», алгоритм сортування замінюється командою «sort».
Але також є безперчні переваги мови програмування Python. Програми на Python набагато лаконічніші за аналогічні програми на Pascal, а це спрощує написання, пошук помилок та відлагодження готового коду. Відсутні синтаксичні стуктури в вигляді символів закінчення стрічки та програмні дужки, в Python ці структури базуються на відступах. Також безперечним плюсом в високорівневій мові програмування є спрощення написаня основного коду програми та зменшення часових затрат. Порівняємо частини коду написані на мовах Pascal та Python.
var a: array [1..500] of integer;
…
for i:=1 to 500 do
a[i]:=2;
та
a=[2]*500
Як ми можемо бачити код який виконує одну і ту саму функцію, а саме створює одномірний масив розмірністю 500 елементів і заповнений двійками, на мові Pascal займає три стрічки програмного коду, тоді як на мові Python лише одну. Якщо розглядати цей приклад з методичної точки зору, то код написаний на Pascal, більш точно передає дії, які потрібно виконати для отримання масиву (тобто зарезервувати в пам’яті місце під змінну і циклічно повторити одну дію 500 разів). Тоді як в коді на Python, на наш погляд, стрічка a=[2]*500 відображає дію з математичної точки зору (потрібен масив з 500 елементів заповнений двійками).
Спрощення структури програми є безперечним плюсом при використанні мови програмування Python при розв’язуванні олімпіадних задач, де одним із критичних значень, є час розв’язування задачі та написання коду.
Якщо розглядати вивчення Python, як першу мову програмування, з методичної точки зору потрібно учнів потрібно знайомити спочатку з базовими алгоритмами і прийомами програмування, а потім переходити до вбудованих структур та можливостей мови. Наприклад: для розв’язувані задачі перепресвоєння значення змінних a і b, потрібно спочатку познайомити учнів зі введенням додаткової змінної c, а потім вводити поняття кортежів.
a=c
a=b
b=c
і з використанням кортежів:
(a,b)=(b,a)
Використовуючи додаткову змінну, ми пояснюємо принципи збереження даних в пам’яті та принципи і особливості роботи операції присвоєння.
Використовуючи такий прийом ми можемо пояснити більшість алгоритмів сортування, роботі з масивами, пошуку заданого елементу і т.д..
В після аналізу можна відзначити, що не тільки немає необхідності відмовлятися від ідеї вивчення високорівневих мов програмування в школі, а навпаки, вивчення Python, при правильному виборі стратегії навчання і обліку методичних особливостей, відкриє перед учнем нові можливості, активізує пізнавальний процес, заохотить до навчання, так як сучасні мови програмування, вдосконалюючись, стають все більш універсальними, гнучкими і простими, зручними для сприйняття і налагодження. Такий підхід до вивчення високорівневих мов дозволить готувати вже на шкільній ступені початківців програмістів, що мають різносторонній досвід в написанні програм.
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ
- PopularitY of Programming Language [Електронний ресурс] – Режим доступу до ресурсу: http://pypl.github.io/PYPL.html
- TIOBE Software BV[Електронний ресурс] – Режим доступу до ресурсу: https://www.tiobe.com/tiobe-index/
- JetBrains s.r.o. Developed with drive and IntelliJ IDEA [Електронний ресурс] – Режим доступу до ресурсу: https://www.jetbrains.com/