LXF108:Python
|
|
|
Содержание |
Python: мой первый язык
- Многие из нас начинали изучать программирование с Pascal или Basic – но действительно ли это оптимальный выбор? Светлана Шапошникова представляет нового претендента на роль первого языка программирования.
Большинство российских школьников и студентов начинают изучать основы программирования, используя язык Pascal. Возможно, когда-то это был действительно разумный выбор, но в настоящее время он, скорее, дань привычке и комплексу старой методической литературы. Сегодня, когда учебным заведениям предстоит миграция на Linux, разработчики большинства «школьных» дистрибутивов включают в состав своих продуктов компилятор Free Pascal (http://www.freepascal.org) и среду Lazarus (http://www.lazarus.freepascal.org). Понятно, что это скорее необходимость, делающая переход на новую систему более спокойным. Но насколько она уместна, если исходить из позиции, что методические разработки – дело наживное? Нет ли языка, более родного для Linux и в то же время не уступающего Pascal’ю по своим образовательным возможностям (а ведь Pascal был создан для обучения программированию)?
Если вам доводилось работать с детьми и обучать их основам программирования (да, в принципе, неважно чему), то вы могли заметить следующее: детская психология при изучении нового материала весьма требовательна к наглядности, концентрации на главном и сведению к минимуму иных «раздражающих» факторов. Кроме того, сегодняшние дети начинают изучать программирование несколько раньше, чем десять лет назад. Зачастую предмет «Информатика» уже присутствует в третьем-четвертом классах, а следовательно, к программированию можно подойти уже к пятому-шестому. 11-12-летние дети могут быть психологически не готовы воспринимать то, что вполне приемлемо для 15-летних. Например, обилие числовых типов данных в Pascal, «громоздкий» синтаксис языка. Хочется, чтобы первый язык программи- рования был достаточно прост и ясен. Конечно, для средней школы может подойти Лого, однако он более ориентирован на младшеклассников, а также чаще используется при изучении темы «Алгоритмика», а не «Программирование». Лого – хороший заменитель алгоритмического языка А.П. Ершова (широко используемого на уроках информатики в 80-90-х годах) для детей младшего школьного возраста. Если же говорить о первом настоящем языке программирования, то, возможно, следует обратить внимание на язык Python (http://python.org). В русском языке это имя часто читают как «Питон», но вообще-то правильное произношение – английское, «Пайтон».
Почему Python?
Python был создан Гвидо ван Россумом [Guido van Rossum] примерно в 1991 г. Его отличительной особенностью является простой и ясный синтаксис. С одной стороны, вспомогательные элементы языка сведены к минимуму: это позволяет делать меньше ошибок на начальном этапе обучения программированию и быстрее писать программы. С другой стороны, Python жестко регламентирует «правила отступов», поэтому воспитание аккуратности и внимательности не пострадает. Учащиеся привыкнут к хорошему стилю программирования. Чтобы преимущества Python стали очевидными, достаточно сравнить код небольшой программы, написанной на нем и на Pascal (рис. 1). Большое количество «begin-end» в сочетании с необязательностью соблюдения отступов делают проверку программы, написанной на Pascal, мукой. Кроме того, приучив ученика к строгости стиля Python, мы вынуждаем его видеть и понимать управляющие структуры (рис. 2).
Если при написании программы с использованием языка Pascal каждая переменная должна быть обязательно объявлена перед своим использованием, то в Python ей можно просто присвоить значение, которое и определит ее тип. Хорошо это или плохо – вопрос неоднозначный. Предположим, что для профессионального программиста и даже для старшеклассника это недостаток. В первом случае может проявиться непредвиденный результат или ошибка, а во втором – недостаточное понимание обработки компьютером различных типов данных. Однако при изучении начал программирования, отсутствие необходимости отслеживать многообразие числовых типов позволит уделить больше внимания логике программирования и управляющим структурам.
В пользу Python как первого языка программирования говорит и то, что он является интерпретируемым. На начальных этапах изучения языка рассматриваются отдельные небольшие конструкции, осваивается синтаксис; а значит, не обязательно создавать файл и сохранять код – это только отвлекает. В режиме интерпретатора можно, набрав команду, тут же получить ответ. Ученик сразу видит результат работы или допущенную ошибку, а следовательно, быстрее и легче приходит к пониманию происходящего.
А где удобства?
В качестве одного из достоинств Pascal некоторые авторы отмечают наличие у него интегрированной среды программирования, включающей редактор, компилятор, компоновщик, отладчик и др. С Python не все так однозначно. Чтобы начать работать в интерактивном режиме, следует набрать команду python в консоли. Кроме этого, существует специальная интегрированная среда разработки IDLE (в дистрибутиве для Windows она присутствует по умолчанию, в Linux требуется доустановить пакет). Преимущество консоли – в возможности прокручивать историю команд, а IDLE – в подсветке синтаксиса. Но поскольку в режиме интерпретатора более-менее длинных программ все равно не напишешь, то первое преимущество, думается, значительнее. Для создания же скриптов [так часто называют программы на Python, второй вариант – «сценарии». Скрипты Python обычно имеют расширение .py, хотя это совершенно не обязательно, – прим. ред.] пригодно большинство текстовых редакторов Linux (не считая IDLE, в которой тоже можно набирать и сохранять файлы). Чтобы выполнить скрипт, достаточно дать команду python путь/имя_программы. И, наконец, для Python существуют специальные (содержащие большее количество инструментов, чем IDLE) среды разработки: например, DrPython (http://drpython.sourceforge.net) и Eric (http://www.die-offenbachs.de/eric) – см. рис. 3. И если первая ориентирована на школьников, то вторая больше подходит для серьезных задач. Помимо прочего, синтаксис Python поддерживает и KDevelop, так что каждый может выбрать «на свой вкус и цвет».
А дальше?
Наконец, нельзя не сказать о том, что Python – это полноценный универсальный язык программирования. Освоите азы – всегда будет, куда двигаться дальше. Python поддерживает функциональное и объектно-ориентированное программирование, для него существует большое количество библиотек, в том числе – для создания графического пользовательского интерфейса.
Каждый язык программирования имеет свои особенности и области наиболее частого применения. В качестве первого можно выбрать почти любой, однако не каждый из них будет эффективным. Также при выборе следует учитывать возраст обучаемых и род задач. Так, если цель – познакомить учащихся среднего школьного возраста с современным и используемым настоящими (вроде как бывают и игрушечные?) программистами языком, то на эту роль может прекрасно подойти Python.
Содержание образования меняется, должны меняться и его «инструменты». Следует, конечно, учитывать и человеческий фактор: многим учителям с большим стажем и энным количеством методических разработок по Pascal или Basic трудно перейти на что-то новое (да и приемные комиссии некоторых ВУЗов еще требуют от абитуриента знания именно Pascal). Поэтому включение в «школьные» дистрибутивы компилятора FreePascal сегодня является необходимостью. Однако начинающие учителя информатики, не обремененные опытом, возможно, найдут Python весьма подходящим языком для обучения основам программирования.
- Метамодернизм в позднем творчестве В.Г. Сорокина
- ЛитРПГ - последняя отрыжка постмодерна
- "Ричард III и семиотика"
- 3D-визуализация обложки Ridero создаем обложку книги при работе над самиздатом.
- Архитектура метамодерна - говоря о современном искусстве, невозможно не поговорить об архитектуре. В данной статье будет отмечено несколько интересных принципов, характерных для построек "новой волны", столь притягательных и скандальных.
- Литература
- Метамодерн
- Рокер-Прометей против изначального зла в «Песне про советскую милицию» Вени Дркина, Автор: Нина Ищенко, к.ф.н, член Союза Писателей ЛНР - перепубликация из журнала "Топос".
- Как избавиться от комаров? Лучшие типы ловушек.
- Что делать если роблокс вылетает на windows
- Что делать, если ребенок смотрит порно?
- Почему собака прыгает на людей при встрече?
- Какое масло лить в Задний дифференциал (мост) Visco diff 38434AA050
- О чем может рассказать хвост вашей кошки?
- Верветки
- Отчетность бюджетных учреждений при закупках по Закону № 223-ФЗ
- Срок исковой давности как правильно рассчитать
- Дмитрий Патрушев минсельхоз будет ли преемником Путина
- Кто такой Владислав Поздняков? Что такое "Мужское Государство" и почему его признали экстремистским в России?
- Как правильно выбрать машинное масло в Димитровграде?
- Как стать богатым и знаменитым в России?
- Почему фильм "Пипец" (Kick-Ass) стал популярен по всему миру?
- Как стать мудрецом?
- Как правильно установить FreeBSD
- Как стать таким как Путин?
- Где лучше жить - в Димитровграде или в Ульяновске?
- Почему город Димитровград так называется?
- Что такое метамодерн?
- ВАЖНО! Временное ограничение движения автотранспортных средств в Димитровграде
- Тарифы на электроэнергию для майнеров предложено повысить