Урок-дискуссия "Языки программирования" (подготовка к ОГЭ)

Разделы: Информатика


Тип урока: дискуссия.

Цели урока:

Образовательные:

  • познакомить учащихся с основными понятиями данной темы;
  • рассказать об основных языках программирования, используемых на ОГЭ: Pascal, Qbasic, КуМир (алгоритмический);
  • изучить преимущества и недостатки каждого из языков программирования.
  • выбрать для дальнейшего изучения один из языков, основываясь на особенностях каждого класса

Воспитательные:

  • развитие у учащихся стремления к активной познавательной деятельности;
  • умения работать самостоятельно;
  • сформировать навыки исследовательской деятельности;
  • активизировать формирование познавательной потребности, интереса к предмету.

Развивающие:

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

Предметные:

  • формирование представления о разнообразии языков программирования;
  • формирование умения анализировать полученные данные;
  • формирование знаний учащихся о языках программирования и их отличительных чертах.

Метапредметные:

  • развитие умения самостоятельного анализа материала из различных источников;
  • овладеть информационно-коммуникационными технологиями обработки информации;
  • овладение навыками использования различных электронных.

Личностные:

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

Методы: словесный (рассказ), наглядный, диалогический.

Наглядность: Интерактивная доска. Презентации PowerPoint (у автора). 

План урока

Содержание этапов урока Виды и формы работы Время, мин.
Организационный момент Приветствие 0,5
Мотивационное начало урока Фронтальный опрос по информатике. Постановка проблемных вопросов 5
Основная часть Дискуссия на тему «языки программирования», классификация рассматриваемых языков, создание опорного конспекта для дальнейшего обсуждения 25
Обобщение Анализ достоинств и недостатков каждого из рассмотренных языков 5
Подведение итогов Выбор языка программирования для дальнейшего изучения, выставление оценок 2
Рефлексия урока   1,5
Домашнее задание   1

Ход урока 

I. Организационный момент

Приветствие класса, контроль отсутствующих, пояснение плана урока.

Сегодня нас ждет дискуссия на одну из интереснейших тем: Программирование. В курсе 5-7 класса мы сталкивались с основами программирования. Изучали и строили самостоятельно алгоритмы, используя различные исполнители, такие как Кузнечик, Водолей, Черепашка, Чертёжник, Муравей и Робот.

II. Актуализация знаний

Сегодня мы поговорим об основных языках программирования, используемых на ОГЭ: Pascal, Qbasic, КуМир (алгоритмический). Об истории возникновения, преимуществах и недостатках каждого из языков, об их отличиях и сходствах. И в ходе дискуссии постараемся ответить на вопрос: «Какой же из языков программирования легче, удобней и понятней?».

И прежде чем рассмотреть самые известные языки программирования и поговорить о преимущества и недостатках каждого из них, нам нужно освежить некоторые знания, полученные нами на прошлых уроках, такие как понятия «алгоритм» и «исполнитель», «типы алгоритмов» и «алгоритмическая структура».

(Повтор предыдущего материала проводится через выбор правильного ответа (и при необходимости обсуждение каждого из вариантов ответа) на подготовленные заранее вопросы учителя, выводимые на интерактивной доске, например такие как):

Вопрос 1. Алгоритм – это...

  • запись действий;
  • конечная последовательность действий, приводящая от исходных данных к требуемому результату;
  • система команд исполнителя.

Вопрос 2. Исполнитель – это…

  • программа;
  • некоторый объект (человек, животное, техническое устройство), способный выполнить определенный набор команд;
  • робот, способный выполнить определенный набор команд;

Вопрос 3. Найдите соответствия основных алгоритмических конструкций:

Вопрос 4. Можно ли по способу записи алгоритма определить тип конструкции? Что общего присутствует в каждом типе алгоритмической конструкции?

Вопрос 5. Какие существуют способы записи алгоритмов? (Словесное описание, построчная запись, блок-схема, алгоритмический язык, формальный язык). Приведите примеры из жизни.

III. Дискуссия

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

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

Итак, приступим... На одном из предыдущих уроков вы разделились на три мини-группы, каждая из которых получила одну из трех тем, связанных с языками программирования. Задачами каждой из групп было найти информацию про язык программирования, изучить материал и подготовить аргументы в защиту «своего» языка и против остальных двух.

Наш план:

  1. Заслушаем краткие исторические справки (с использованием подготовленных заранее презентаций) по каждому из языков программирования, чтобы иметь представление о специфике каждого из предложенных для дискуссии языков.
  2. Выведем на экран простейшие примеры основных алгоритмических конструкций на каждом из языков, чтобы иметь наглядное представление об интерфейсе каждой из сред.
  3. Попробуем понять программу лишь на основании ранее изученных конструкций и правил их написания.
  4. Выслушаем аргументы в защиту каждого из языков программирования, а после приведем аргументы «против».
  5. В конце нашей дискуссии подведем итоги: выберем язык программирования, который будем изучать все вместе.

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

Pascal

История Pascal берёт своё начало в 1970 году, был разработан Никлаусом Виртом, назван в честь Блеза Паскаля. И вопреки расхожему мнению, не был исключительно учебным языком, а предназначался для практического применения. Прототипом его послужил Algol.

Pascal — это высокоуровневый язык программирования общего назначения (3GL) или иными словами процедурный язык программирования, часто использующийся для обучения структурному программированию.

Наиболее известной реализацией Паскаля являлась система Turbo Pascal (выросшая затем в Borland Pascal для DOS/Windows и далее в Delphi) фирмы Borland, в которой использовались значительные расширения языка

Qbasic

Бейсик (Basic) – диалоговый учебный язык программирования для персональных компьютеров.

Язык QBASIC (Beginner's All-purpose Instruction Code) разработан Джоном Кимини и Томасом Куртцем в Дартмутском колледже, США, в середине 1960 г. и занимает особое место среди всех языков высокого уровня.

С самого начала он задумывался как универсальный язык для начинающих программистов. Это язык структурного программирования, поддерживающий подпрограммы и условные циклы.

КуМир (алгоритмический)

«КуМир (Комплект Учебных МИРов) – система программирования, предназначенная для поддержки начальных курсов информатики и программирования в средней и высшей школе.

В системе КуМир используется придуманный А. П. Ершовым школьный алгоритмический язык — простой алголоподобный язык с русской лексикой и встроенными командами управления программными исполнителями (Робот, Чертёжник).

После выступления учащихся с докладами, пробуем разобраться, какая же из сред программирования более удобна большинству пользователей и почему. Во время дискуссии определяем, какие же есть существенные недостатки и преимущества у каждого языка программирования, а также попытаемся найти сходства и различия между ними.

В итоге дискуссии делаем вывод и подводим результат:

Преимущества:

1. Pascal

  • Паскаль, в его первоначальном виде, представляет собою чисто процедурный язык;
  • включает в себя множество алголоподобных структур и конструкций с зарезервированными словами наподобие if, then, else, while, for, и т. д.;
  • содержит большое количество возможностей для структурирования информации и абстракций;
  • большое число встроенных команд и функций, позволяющих без труда выполнять такие операции, как управление текстовым и графическим экраном, обработка символьных строк и т.п.
  • Паскаль позволяет создавать достаточно большие и сложные программы;
  • наличие форматного вывода на консоль и в файл;
  • возможность прямой работы с памятью практически полностью приближает Pascal к С/C++
  • Благодаря полной поддержке ООП в паскале, в некоторых потомках паскаля можно соединять Модульное Программирование и Объектно-Ориентированое
  • в структуре записи все очень строго, а именно, все типы переменных должны полностью соответствовать их содержимому.

2. QBasic

  • простота синтаксиса;
  • простота организации данных и управляющих структур;
  • большое число встроенных команд и функций, позволяющих без труда выполнять такие операции, как управление текстовым и графическим экраном, обработка символьных строк и т.п.
  • возможность работы в режиме интерпретации, который резко упрощает процесс отладки программ: исполнение почти каждой команды можно проверить сразу после написания (Shift +F5).
  • нумерация строк программы упразднена и поддерживается только для совместимости.

3. Алгоритмический язык

  • Кумир является учебной системой. Ученик, никогда ранее не программировавший, может начать писать и выполнять алгоритмически относительно несложные программы через небольшое время после знакомства с системой;
  • большое число встроенных команд и функций, позволяющих без труда выполнять такие операции, как управление текстовым и графическим экраном, обработка символьных строк и т.п.
  • ученик, плохо владеющий английским языком или не владеющий им вовсе, может совершенно спокойно программировать
  • среда легко устанавливается на компьютерах с любой ОС.
  • система Кумир позволяет создавать достаточно большие и сложные программы.
  • во время редактирования программы система Кумир автоматически производит синтаксический разбор и сообщает о найденных ошибках.

Недостатки:

1. Pascal

  • уже устарел для использования в промышленном программировании;
  • устанавливается на компьютерах с 32-битной и в виде аналога PascalАВС на 64-битной ОС Windows;
  • использование длинных английских слов begin и end (как в BASIC) вместо фигурных скобок;
  • отсутствие нормальной современной среды, окромя поделки Борланда;
  • громоздкие конструкции языка;
  • требует постоянного внимания и знания логических структур.

2. QBasic

  • имеет ограниченную поддержку определяемых типов пользователя (структур) и нескольких простых типов.
  • большинство задач невозможно решить с помощью данного языка или время, отводимое на их решение, слишком велико.
  • устанавливается на компьютерах с 32-битной ОС Windows, на 64-битной ОС запускается, но со сбоями в работе;
  • в 2001 году Microsoft отказалась от дальнейшей поддержки среды.

3. Алгоритмический язык

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

Поскольку ребята достаточно долго работали на уроках в среде КуМир с различными исполнителями (Кузнечки, Водолей, Черепашка, Чертежник, Робот), им предлагается самостоятельно найти общие и отличительные черты рассматриваемых языков программирования путем сравнения с известной им средой КуМир. Также, на основе прослушанных докладов и результатов дискуссии – найти общие черты между всеми тремя языками.

Отыскать основные различия трех языков программирования предлагается дома в качестве закрепления изученного материала.

IV. Домашнее задание

По результатам сегодняшнего урока в тетради заполните следующую таблицу:

ОС

Преимущества

Недостатки

Сходства

Различия

Pascal

 

 

 

 

Qbasic

 

 

КуМир

 

 

V. Подведение итогов урока

Итак, мы выяснили, что самыми распространенными языками программирования для подготовки к экзаменам в 9-м классе являются Pascal, Qbasic и КуМир. Разобрались, каковы их особенности, преимущества и недостатки. Заметили, что все языки программирования имеют схожую структуру, определили ее причину, постарались понять ее, основываясь лишь на знаниях об основных алгоритмических конструкциях.

Мы выбрали для себя язык программирования, который будем изучать все вместе. И еще на шаг стали ближе к такой интересной теме как программирование.

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

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