Баллада о Turbo Pascal или 20 лет без перемен
Тихо и незаметно прошла первая неделя нового учебного года. Хоть я уже и давно закончил школу, а своих детей школьного возраста пока нет, я все равно волей-неволей задумываюсь о начале учебного года. И вызвано это отнюдь не засильем детей в школьной форме на улицах: я очень редко выхожу из дома.
Причина, из-за которой я вспоминаю, что началась осень довольно необычна — я замечаю на форуме моей локальной сети свежую тему, кочующую из года в год, всплывающую порой в самых неожиданных разделах этого форума. Если сформулировать эту тему, то получится всего 4 слова, отражающих всю безысходность ситуации с компьютерным образованием на просторах бывшего СССР, звучит она так: «Где взять Turbo Pascal?»
То, что я решил наконец написать об этом явлении далеко не случайно — не знаю точного числа и месяца, но именно в 2012 году среде Turbo Pascal 7, которая широко используется во всех учебных заведениях на постсоветском пространстве, стукнуло 20 лет. Именно в 1992 году вышла версия 7.0, которая на два десятилетия вперед определила начало пути для тысяч будущих программистов, а скриншот ниже запечатлелся в памяти, наверное, миллионов людей.
Спустя еще 2 года вышла версия 7.1, содержавшая некоторые исправления, но на этом развитие среды разработки остановилось. Вот уже 18 лет по одной шестой части суши кочует архив с файлами, который помещается на пару дискет — этот тот самый злополучный TP7.zip (с небольшими вариациями в имени файла). Мне неизвестен другой программный продукт, обладающий такой же переносимостью — наверняка даже сами разработчики не представляли, что их детище будет работать на чем-то старше Windows 95. Даже Java, появившаяся несколькими годами позже и исповедующая принцип «скомпилировано однажды работает везде» выглядит уже не так оригинально на фоне этой скромной IDE.
В начале Turbo Pascal шустро работал под Dos, Win 3.11 и Win95, спокойно перешел на Windows 98 и Me. Затем появились первые проблемы с запуском под Windows XP, но TP было уже не остановить — он стал образовательным мейнстримом, он работал под всем, под Windows Vista, Windows 7. Я не удивлюсь, если в следующем году тысячи людей буду запускать bp.exe уже под Windows 8. А может быть под Linux, используя DosBox(радостно обнаруживая, что сочетание Ctrl-F9 закрывает эмулятор).
Еще 15 лет назад Turbo Pascal был хорошей средой для обучения, но теперь это скорее показатель того, насколько сильно может быть нежелание изучать что-то новое. И дело тут даже не в паскале: существуют современные среды для обучения программированию на этом языке, вроде FreePascal и PascalABC. Дело не в политике: в России и Украине ситуация практически одна и та же. Дело даже не в строгости школьной программы — мне попадались классы, где обучение велось на С или Python. И, в конечном счете, дело даже не в классе учебного заведения — до их пор существуют ВУЗы, напрямую связанные с ИТ, где Turbo Pascal используется как основной рабочий инструмент.
Завершая этот краткий обзор, хочу представить альтернативы для Turbo Pascal, которые можно использовать в учебном процессе.
1) FreePascal — бесплатный компилятор паскаля, отвечающий современным требованиям и обладающий средой разработки 1 в 1 похожей на Turbo Pascal, что делает возможным использования большей части методической литературы, написанной для последнего. Работает под Windows и Linux.
Рекомендуется как самый простой способ замены Turbo Pascal. Отсутствуют проблемы с лицензией.
Сайт русскоязычного сообщества http://www.freepascal.ru/
2) PascalABC — удобная среда разработки, работающая под Windows. С 2007 года разрабатывается версия PascalABC.net — та же среда, но написанная с использованием технологии .NET. Для старых компьютеров рекомендуется использовать версию без .NET. На мой взгляд, это самая удачная система для обучения программированию, которую можно найти.
Система создавалась на факультете математики, механики и компьютерных наук ЮФУ как учебная среда программирования. С лицензией проблем нет.
Сайт разработчика: http://sunschool.math.rsu.ru/pabc/
3) Lazarus — среда разработки, использующая компилятор FreePascal, но при этом поддерживающая разработку современных оконных приложений. Позиционируется как совместимая с Delphi, но учебный материал, написанный для последней, применим не всегда. Интерфейс более сложен по сравнению с IDE FreePascal. Рекомендуется использовать при достаточной квалификации преподавателя и понимании им того, чему именно он хочет научить своих учеников.
Проблем с лицензией нет.
Вот пожалуй и все. Остается только пожелать недавним абитуриентам, чтобы описанная здесь проблема их не затронула.