СТАТЬИ

ПУБЛИКАЦИИ

На русском языке На украинском языке

RUS

UKR

главная

содержание раздела

(оригинал)

Вплив сучасних iнформацiйних технологiй
на вивчення основ алгоритмiзацiї в середнiй школi

Копаєв О.В.

Швидкий розвиток iнформацiйних технологiй (IТ) останнiм часом постiйно примушує переглядати цiлi шкiльного курсу iнформатики та вносити корективи до його змiсту. В статтi робиться спроба поглянути на роздiл "Основи алгоритмiзацiї" цього курсу з точки зору використання нових можливостей, що стали доступними з розвитком сучасних IТ.

Педагогiчнi функцiї iнформатики, як освiтньої галузi, визначаються насамперед специфiкою її внеску у вирiшення основних задач загальної освiти людини, а саме:

  • формування основ наукового свiтогляду;
  • розвиток мислення;
  • пiдготовка учнiв до практичної дiяльностi, працi, продовження освiти.

У зв'язку з цим змiст базового курсу iнформатики, передбачений державними стандартами освiти, поєднує в собi три основних напрямки, що вiдображають найважливiшi аспекти її загальноосвiтньої значимостi - свiтоглядний, алгоритмiчний та користувацький (див., наприклад, [1], [2]). При цьому алгоритмiчний аспект розглядається в контекстi розвитку специфiчних видiв мислення, якi недостатньо розвиваються (або взагалi не розвиваються) при вивченнi iнших шкiльних предметiв. Зауважимо, що коли в людському мисленнi видiляється певний вид, то його розвиток має самостiйну, незалежну вiд iнших цiннiсть. I якщо метою освiти на даному етапi є виховання культурної людини, яка живе в умовах iнформацiйного суспiльства, то розвиток будь-якого з типiв мислення є необхiдною умовою при досягненнi цiєї мети. Крiм того, при пiдготовцi молодого поколiння до життя в умовах iнформацiйного суспiльства особливу увагу потрiбно придiляти саме розвитковi мислення, а не репродуктивних здiбностей по вiдтворенню обмеженого набору певних знань. У зв'язку з цим, на нашу думку, головною метою вивчення основ алгоритмiзацiї в школi є розвиток алгоритмiчного, конструктивного, логiчного мислення учнiв, а також формування операцiйного типу мислення, яке спрямоване на вибiр оптимального розв'язку певної поставленої задачi з кiлькох можливих. Розвиток цих специфiчних видiв мислення робить вагомий внесок в розвиток загального наукового свiтогляду та розумових здiбностей особистостi.

У даному контекстi ми вважаємо, що при вивченнi основ алгоритмiзацiї в середнiй школi основна увага насамперед повинна придiлятися:

  • виявленню загальних закономiрностей i принципiв алгоритмiзацiї;
  • основним етапам розв'язування задач за допомогою сучасних iнформацiйних технологiй;
  • аналiзу поставленої задачi, методам формалiзацiї та моделювання реальних процесiв та явищ;
  • вибору виконавця поставленої задачi, виходячи з тих мiркувань, що вiн є також певним об'єктом з притаманними йому властивостями та набором дiй, якi потребують аналiзу для правильного та ефективного їх використання;
  • методам та засобам формалiзованого опису дiй виконавця, сучасним засобам їх конструювання та реалiзацiї за допомогою комп'ютера.

Однiєю з проблем, яка постає перед вчителями, методистами, розробниками педагогiчного програмного забезпечення шкiльного курсу iнформатики є проблема поєднання досить консервативної алгоритмiчної лiнiї курсу з бiльш динамiчними i прогресивними лiнiями виконавця, формалiзацiї та моделювання, iнформацiйних технологiй. Цiлком можливо, що в основi цiєї проблеми, незважаючи на те, що роздiл було введено в курс шкiльної iнформатики з самого початку його впровадження, лежать суперечки про змiст цього роздiлу та взагалi про доцiльнiсть його вивчення в курсi шкiльної iнформатики.

Алгоритмiзацiя, як роздiл iнформатики, який вивчає процеси створення алгоритмiв, традицiйно вiдноситься до теоретичної iнформатики внаслiдок свого фундаментального характеру. При цьому прихильники "користувацького" пiдходу при вивченнi шкiльної iнформатики наголошують на вiдсутностi практичної значимостi цього роздiлу для розвитку навичок користувача сучасного програмного забезпечення, що i стає предметом критики з їх боку.

Внаслiдок розвитку нових iнформацiйних технологiй, i зокрема технологiй програмування, з'являється можливiсть в межах роздiлу "Основи алгоритмiзацiї" давати загальнонауковi поняття iнформатики i в той же час формувати та розвивати вмiння i навички, необхiднi користувачу при роботi з сучасним програмним забезпеченням, [ст.24]


тобто з'являється можливiсть зробити роздiл "Основи алгоритмiзацiї" мiстком мiж теоретичною та практичною iнформатикою. Першi кроки в цьому напрямку вже зробленi. Варто згадати роботи А. Г. Кушнiренка, Ю. А. Первiна, А. Л. Семенова по впровадженню "конструктивiстської" парадигми при вивченнi теоретичної iнформатики. Одним iз принципiв цiєї парадигми є самостiйне здобування учнями знань, якi формуються при роботi з реальними та вiртуальними об'єктами. Реалiзацiя цього принципу грунтується на використаннi творчих дiяльнiсних середовищ, таких як, наприклад, Лого, Кумир, Роботландiя. Враховуючи досвiд впровадження такого роду творчих середовищ в навчальний процес, роботу з середовищами вiзуального програмування, а також методичнi та дидактичнi можливостi, що надаються новими iнформацiйними технологiями спробуємо сформулювати ряд положень, на яких, на нашу думку, повинен будуватися сучасний пiдхiд до вивчення основ алгоритмiзацiї в середнiх навчальних закладах:

1. "... алгоритми самi по собi є об'єктами досить специфiчного типу i мають властивiсть, нетипову для математичних об'єктiв, а саме семантичну властивiсть "мати змiст"[5, с.13]. Тому, на нашу думку, кiнцева мета в розвитковi алгоритмiчного мислення полягає в тому, щоб навчити учнiв видiляти конкретний змiст у вже iснуючих алгоритмах та видiляти змiст реальної задачi для побудови алгоритму її розв'язання .

2. Розвиток алгоритмiчного мислення, як свiдчить iсторичний досвiд людства, не залежить вiд наявностi комп'ютерiв. Комп'ютери, як крейда та дошка, є засобами навчання. Але було б досить дивно, агiтуючи за використання комп'ютера як засобу навчання при вивченнi рiзних шкiльних предметiв, знаючи, що комп'ютер володiє широкими дидактичними можливостями i тому значно пiдвищує ефективнiсть процесу навчання, не використовувати його при вивченнi самої iнформатики. Тому процес вивчення основ алгоритмiзацiї повинен бути орiєнтований на використання комп'ютера як дидактичного засобу навчання.

3. Вивчення основ алгоритмiзацiї в багатьох учителiв асоцiюється з вивченням алгоритмiчних мов, будь-то одна з мов програмування чи навчальна алгоритмiчна мова. "Проголосивши розвиток алгоритмiчного мислення в якостi мети, ми потребуємо засобiв для її досягнення. Цим засобом в курсi стає програмування, яке розглядається не як умiння керування комп'ютерами, а як наука про побудову алгоритмiв"[6]. Дотримуючись цiєї думки однак потрiбно пам'ятати, що метою алгоритмiзацiї є видiлення змiсту реального об'єкта - алгоритму - i його побудова, що призводить до розв'язання певної задачi, а не вивчення конкретної алгоритмiчної мови. При цьому не слiд також забувати, що алгоритмiчна мова, будь-то навчальна алгоритмiчна мова чи одна з мов програмування високого рiвня - це тiльки один з багатьох способiв подання алгоритму. На даний момент всi алгоритмiчнi мови, що використовуються в школi - текстовi мови. Мiж тим "...загальновизнано, що людський мозок в основному орiєнтований на вiзуальне сприйняття i люди отримують iнформацiю при розглядуванi графiчних образiв швидше, нiж при читаннi тексту"[7]. Отже, враховуючи когнiтивнi особливостi людського сприйняття, приходимо до висновку про доцiльнiсть використання графiчно-структурованого подання алгоритмiв. Таке подання повинно пiдходити для комп'ютерної реалiзацiї, мiстити якнайменше алгоритмiчних конструкцiй, а реалiзованi конструкцiї в iдеалi повиннi розумiтися пiдсвiдоме, що дасть змогу вивчати їх саме в процесi розробки алгоритму, а не спецiально. В ролi такого подання може виступати одне iз вже iснуючих графiчних представлень (або комбiнацiя кiлькох) з вiдповiдною адаптацiєю до комп'ютерної реалiзацiї.

4. До останнього часу реалiзацiя проекту вiзуального середовища побудови алгоритмiв на ПК була досить проблематичною внаслiдок обмежених можливостей комп'ютерної технiки. Але за кiлька останнiх рокiв в iнформацiйнiй iндустрiї вiдбулися революцiйнi змiни, якi привели до появи таких понять як мультимедiа, гiпермедiа, графiчний iнтерфейс, об'єктне представлення. Тепер на шляху до створення вiзуального середовища конструювання алгоритмiв (не написання, а саме конструювання) немає нiяких перешкод.

5.Таке середовище якраз i повинно стати мiстком мiж алгоритмiчною (теоретичною) та "користувацькою" (практичною) iнформатикою. З розвитком iнформацiйних технологiй, програмнi засоби стають все простiшими при використаннi i "ближчими" до користувача. Це стосується також i засобiв програмування. "Тепер на ринок надходять пакети програм, якi дозволяють вам зображати схеми структур на екранi персонального комп'ютера та "гратися" з ними в процесi конструювання програм. Цей напрямок буде розвиватися... " [3, с.273]. "Мови високого рiвня наблизять проектувальника до безпосереднього перекладу його абстрактних конструкцiй на мову програмування" [3, с.268]. Сьогоднi на ринку програмних продуктiв широко представленi засоби, що пiдтримують технологiю вiзуального програмування. Серед них середовища вiзуального програмування (наприклад, Delphi, Visual Basic, C Builder, Visual C) та авторськi засоби створення мультимедiйних застосувань (наприклад, Macromedia Autoware, Formule Graphics Multimedia System, Synergy Multimedia Authoring Tools). Цi системи дозволяють створювати прикладнi програми навiть не написавши жодного рядку коду. "У мiру ускладнення мов [ст.25]


програмування буде полегшуватися кодування структур програм, поскiльки елементарнi компоненти стануть бiльш розвиненими. Насправдi назавжди зникнуть деякi елементарнi компоненти нижнього рiвня, якi сьогоднi ми повиннi зображувати в своїх структурах програм... "[3, с.268]. Отже, можна зробити висновок, що звичайний користувач за допомогою засобiв вiзуального програмування може створити необхiдну для його дiяльностi програму без глибокого знання власне мови програмування. Це досягається приховуванням множини елементарних дiй з ресурсами комп'ютера на низькому рiвнi i видiленням їх в окремi змiстовнi блоки.

Виходячи з вищесказаного, зробимо ряд припущень про основнi вимоги, яким, на нашу думку, повинне задовольняти середовище вiзуального конструювання алгоритмiв:

1. Середовище повинно бути розроблене для функцiонування в найбiльш популярнiй з сучасних операцiйних систем, яка пiдтримує графiчний iнтерфейс з користувачем. Це дасть можливiсть вивчати основи алгоритмiзацiї, використовуючи значну кiлькiсть комп'ютерної технiки, якою укомплектованi середнi школи. На даний момент - це операцiйнi системи сiмейства Windows фiрми Microsoft.

2. Середовище повинне бути розроблене з дотриманням загальних стандартiв для сучасних програмних продуктiв. Це забезпечить зручнiсть та простоту роботи з елементами керування середовища: меню, панелями iнструментiв i т.п., i дасть змогу закрiпити основнi навички роботи користувача з програмними засобами.

3. Середовище повинно бути простим та потужним. Простота в освоєннi та користуваннi середовищем, потужнiсть у можливостях конструювання широкого класу алгоритмiв з використанням всiх доступних на сьогоднiшнiй момент ресурсiв мультимедiйних комп'ютерiв.

4. Для подання алгоритмiв необхiдно вибрати форму, яка задовольняє двом основним критерiям: бути наочною та зрозумiлою для користувача i бути зручною для реалiзацiї в графiчнiй оболонцi операцiйної системи. Крiм цього, форма подання, по можливостi, повинна якнайбiльше бути наближеною до змiсту алгоритму, а не до синтаксису алгоритмiчних структур, що використовується в цьому поданнi.

5. Методи, за допомогою яких конструюються алгоритми в середовищi, повиннi грунтуватися на методах створення програмного забезпечення за допомогою сучасних засобiв розробки, в основi яких лежить об'єктний пiдхiд та вiзуалiзацiя. Це, на нашу думку, дасть змогу учням при потребi, наприклад, при вивченнi основ сучасного програмування в класах з поглибленим вивченням iнформатики або факультативно, швидше освоїти технологiю вiзуального програмування.

6. Одним з головним завданням є створення середовища, орiєнтованого на видiлення змiсту задачi, що розв'язується, а не вивчення алгоритмiчних структур конкретного подання. "Не дивлячись на те, що розробка кожного нового алгоритму вимагає свого пiдходу, тим не менше iснують певнi загальнi прийоми та етапи цього роду дiяльностi" [4, с.33]. Тому в середовищi повинна бути реалiзована унiфiкацiя алгоритмiчних структур як конструкцiй з яких складаються будь-якi алгоритми, а не лише алгоритми певного класу. У ролi таких унiфiкованих структур доцiльно використати такi стандартнi алгоритмiчнi конструкцiї: слiдування, розгалуження, повторення та виклик пiдпрограми.

7. Дiї, якi вiдносяться до розв'язання певної задачi, повиннi бути визначеними по змiсту i органiзованi у виглядi окремого блоку (пiдпрограми). Наприклад, якщо необхiдно програти який-небудь звуковий файл, то i змiст цiєї конструкцiї повинен бути "програти звуковий файл з певним iменем".

8. У середовищi структура алгоритму повинна бути представлена в графiчнiй формi за допомогою певного "графiчного" синтаксису. Поряд з цим для позначення iдентифiкаторiв, назв методiв графiчно-вiзуальних об'єктiв можливе використання текстового синтаксису. Такого роду синтаксис не можна "вилучити" повнiстю, оскiльки вiн є зовнiшнiм по вiдношенню до алгоритмiчного представлення. Але такий "зовнiшнiй" синтаксис грунтується на поняттях, вiдомих учням з власного досвiду, набутого при вивченнi iнших шкiльних предметiв, i тому його застосування не повинно викликати значних труднощiв.

9. У середовищi користувачу повинна бути надана можливiсть вiльно змiнювати синтаксис текстово-символьних команд (там, де це доцiльно). Наприклад, змiнити символ арифметичного додавання '+' на якийсь iнший навряд чи варто з точки зору зрозумiлостi та унiфiкацiї, а ось вибрати назву для дiї вилучення в символьному рядку - "витерти" або "delete"- цiлком залежить вiд бажання користувача.

10. Як вiдомо, кожен алгоритм працює з певним набором даних, якi оброблюються за допомогою деяких методiв. Власне, алгоритм - це процес перетворення вхiдних даних у вихiднi. Тому потрiбно передбачити явне розмежування мiж даними та методами їх обробки. Це не суперечить парадигмi процедурного програмування. Досить лише згадати вiдому "формулу" Н. Вiрта "алгоритми + данi = програма". При цьому, данi логiчно зробити строго типiзованими, як того вимагають правила сучасних мов програмування, i розмiстити їх окремо, наприклад у виглядi таблицi, доступ до якої можна швидко одержати в будь-який момент конструювання алгоритму.

11. Середовище повинне пiдтримувати структурну та прототипну вiзуалiзацiю. Пiд структурною [ст.26]


вiзуалiзацiєю будемо розумiти представлення логiчної структури програми, що розробляється, у виглядi системи графiчних об'єктiв, а пiд прототипною - розробку певних прототипiв графiчного iнтерфейсу, оригiнали яких будуть взаємодiяти мiж собою пiд час виконання програми. Прототипом може бути форма, екран, вiкно i т. п. Цiлком слушно було б мати в середовищi пiдтримку прототипної вiзуалiзацiї, наприклад, екрану виведення iнформацiї. Це спростить роботу в середовищi (вся робота зведеться практично до перетаскування "мишкою" потрiбних об'єктiв) i буде сприяти формуванню умiнь та навичок роботи iз сучасними засобами програмування, де прототипний вид вiзуалiзацiї, як засiб розробки графiчного iнтерфейсу, є основним.

Вимоги, перелiченi вище, стосуються середовища вiзуального конструювання алгоритмiв, яке є основною складовою навчально-методичного забезпечення роздiлу "Основи алгоритмiзацiї". Крiм нього потрiбно розробити систему задач та вправ для середовища з урахуванням нового пiдходу, розробити методичний посiбник з основ алгоритмiзацiї, бажано розробити факультативний курс "Основи вiзуального програмування", який буде природнiм продовженням попереднього курсу. Цей курс можна запровадити в середнiх закладах освiти з поглибленим вивченням iнформатики, математики, а також в звичайних школах, якi мають вiдповiдну комп'ютерну технiку i в яких вчителi мають вiдповiдну квалiфiкацiю. В Черкаському державному унiверситетi розробляється навчально-методичний комплекс з основ алгоритмiзацiї на базi середовища, що задовольняє згаданим вимогам. Бiльш докладну iнформацiю про проект, що має робочу назву VisuAL (Visual Algorithm Language), можна знайти в роботi [8].

Потрiбно ще раз наголосити, що на нашу думку вивчення основ алгоритмiзацiї повинно бути орiєнтоване саме на розвиток алгоритмiчного мислення, а не на вивчення певної мови програмування. "... хоча роль програмiста змiнюється, як i все у цьому свiтi, сучаснi програмiстськi знання будуть потрiбнi ще досить довго. Деякi види робiт по програмуванню змiняться явно, але багато iнших по своїй сутi залишаться без змiн. Програмний iнструментарiй значно покращиться, але основне мистецтво розумiння логiки та принципiв конструювання програм i систем завжди буде мати велику цiннiсть"[3, с.272]. Програмування є i завжди залишиться мистецтвом, опанувати яким в повнiй мiрi зможе не кожний. Це, до речi, i не потрiбно. Але оволодiти основами програмування в межах вiзуального конструювання програм, що розв'язують задачi, якi вiдносяться до професiйної дiяльностi людини - це пiд силу кожному.

Литература

1. Державний стандарт загальної середньої освiти в Українi (проект) - Видавництво "Генеза", 1997.- С. 48-63.

2. Проект федерального компонента государственного образовательного стандарта начального общего, основного общего и среднего (полного) образования. Образовательная область "Информатика" //Информатика и образование. - 1997. - №1.- С.3-11.

3. Кинг Д. Создание эффективного программного обеспечения: Пер. с англ. - М.: Мир, 1991.-288с.

4. Власов В.К., Королев Л.Н., Сотников А.Н. Элементы информатики. - М.: Наука, 1988. - 320 с.

5. Успенский В. А., Семенов А.Л. Теория алгоритмов: основные открытия и приложения. - М.: Наука, 1987. - 288с.

6. Зайдельман Я.Н., Самовольнова Л.Е., Лебедев Г.В. Три кита школьной информатики // Информатика и образование, 1994. №4. - С. 13-17.

7. Вельбицкий И.В., Ковалев А.А., Лизенко С. Л. Графический интерфейс представления алгоритмов и программ // УСиМ, 1988. - №4.- С.42-47.

8. Копаєв О.В., Триус Ю.В. Використання технологiї вiзуального програмування для створення програмних педагогiчних засобiв. Матерiали Всеукраїнської конференцiї молодих науковцiв "Iнформацiйнi технологiї в науцi та освiтi", Черкаси, 1997,Ч.1, С. 15-20.


УДК 372.8:002.6
Копаєв О.В. Вплив сучасних iнформацiйних технологiй на вивчення основ алгоритмiзацiї в середнiй школi //Комп'ютер в сiм'ї та школi. - 2000. - №2. - С.24-27.


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


обсуждение статьи

вверх

главная

содержание раздела