BASIC

Материал из Ролевая энциклопедии
Версия от 22:49, 10 октября 2015; EvilCat (обсуждение | вклад) (+выжимка из Википедии)
Перейти к: навигация, поиск
Контекст:

BASIC (Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих) — семейство высокоуровневых языков программирования. Был распространён на персональных микрокомпьютерах, таких как Commodore 64 и Sinclair ZX81, и часто запускался вместе со средой. Например, клавиши Sinclair ZX Spectrum были подписаны командами Бейсика для облегчения ввода. Бейсик позволял домашним пользователям и другим не-специалистам самим писать программы для микрокомпьютеров, в отличие от использовавшихся ранее языков программирования, предназначенных для математиков и учёных.

На Бейсике того времени было написано много видеоигр, работавших в текстовом режиме. В компьютерных журналах публиковался исходный код игр (и просто полезных программ), который читатели могли вбить в свой компьютер и запустить игру. Программа такого формата занимала обычно до 150 строчек, так как должна была уместиться в ограниченную оперативную память (в некоторых конфигурациях — всего килобайт). Каждая марка компьютеров имела свой диалект Бейсика и свои особенности (отличия были даже между такими моделями как ZX80 и ZX81), поэтому при вводе программ для других моделей требовалась некоторая адаптация. Само изложение программ в журналах также рекомендовало различные модификации, например, для увеличения или уменьшения сложности — как с конкретными инструкциями, так и в виде идей, реализацию которых пользователь волен проработать сам. Таким образом многие видеоигр на Бейсике ходили в различных версиях как подлинно народное творчество. В ту эпоху обзоры компьютерных игр часто указывали язык программирования, на котором создавалась игра, что обычно было «Бейсик» или «машинный код». Некоторые игры, такие как «3D Monster Maze», пополам состояли из того и другого.

Множество популярных видеоигр на Бейсике было собрано Дэвидом Алем и издано в книге «BASIC Computer Games». Одной из самых популярных игр на Бейсике была «Star Trekсм.», известности которой способствовала популярность «Звёздного пути» среди компьютерщиков. Из-за этого игра ходила во многих модифицированных версиях, самая распространённая из которых называлась «Super Star Trek».

История

Бейсик был придуман в 1964 году преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Курцем, и под их руководством был реализован командой студентов колледжа. Язык был основан частично на Фортране II и частично на Алголе 60. Со временем, когда стали появляться другие диалекты, изначальную реализацию стали называть Dartmouth BASIC.

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

При проектировании языка использовались следующие восемь принципов. Новый язык должен был:

  1. быть простым в использовании для начинающих;
  2. быть языком программирования общего назначения;
  3. предоставлять возможность расширения функциональности, доступную опытным программистам;
  4. быть интерактивным;
  5. предоставлять ясные сообщения об ошибках;
  6. быстро работать на небольших программах;
  7. не требовать понимания работы аппаратного обеспечения;
  8. защищать пользователя от операционной системы.

Критика

В пору своего расцвета (1970—1980 годы) Бейсик подвергся жёсткой критике. Помимо констатации очевидных недостатков языка, связанных с синтаксической бедностью ранних вариантов и отсутствием многих признанных и удобных конструкций и механизмов, Бейсик критиковали за то, что его простота и бесструктурность поощряют применение порочных методик разработки и способствуют выработке опасных привычек программирования, которые иногда могут быть уместны при быстром создании малых программ для текущих нужд, но способны привести к краху крупных проектов.

Резко критиковалось повсеместно распространённое начальное обучение программированию, базирующееся на Бейсике. Одной из «визитных карточек» Эдсгера Дейкстры стало высказывание: «It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration». («Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они умственно изувечены без надежды на восстановление».)[1]

В ответ на критику адепты Бейсика замечают, что критики приписывают языку те негативные стороны, которые следовало бы отнести к его неправильному применению. Недостатки Бейсика (если иметь в виду ранние диалекты) проявляются при попытке профессиональной разработки на нём сложных и крупных программ и при использовании его как базового языка для обучения программистов, но ни для одного их этих применений данный язык не предназначался; его основной задачей было предоставить студентам-непрограммистам возможность после минимального обучения самостоятельно писать простейшие программы для собственных нужд, чтобы не отвлекать на эту работу специалистов. Этой задаче язык вполне соответствует.

Примечания

Ссылки