Все мы знаем, какой пиздец сейчас происходит с Украиной и одной известной вам страной-победительницей-фашизма. Если вы хотите почитать об этом, помочь актуализировать информацию или высказать свое мнение — можете сделать это в статье Война в Украине и в обсуждении.
BASIC
Этой статье требуется доработка. Вы можете помочь, исправив и дополнив ее.
Сюда следует добавить: несколько подробней описать историю, привести примеры программ, дать описание классического Бейсика и современных релизов, напр. Visual Basic.
Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации.
История[править]
Создан профессорами Дартмутского колледжа Томасом Курцем и Джоном Кемени в 1964 году как язык для обучения студентов программированию. Приобрёл популярность благодаря компании Некрософт, которая в 1975 году выпустила версию данного языка под Альтаир 8800 — один из первых персональных компов. С Бейсика начинал Тот, кого нельзя называть некто Билл Гейтс, ещё учась в школе. Возможно, именно его детские воспоминания о хакинге на Бейсике заставили Microsoft так долго насиловать сей труп. Позднее та же компания запиливает QBasic для своей MS-DOS, в которую он входит в качестве бесплатного приложения, после чего создаёт Visual Basic как стандартный язык написания макросов для MS Office и затем Visual Basic.NET. В целом же популярность языка такова, что не существует ни одной платформы, под которой не было бы реализации Бейсика: есть даже реализации для микрокалькуляторов!
Причины популярности[править]
Основная причина сегодня — привычка писать на Бейсике тех, для кого он стал первым и последним языком. Так сложилось из-за продвижения этого языка Компанией Зла и простоты написания на нём программ базового уровня. Как только не называют Бейсик: «язык для чукчей», «язык туземцев», предполагая, что написать прогу на нём способен даже полный кретин. Так, в Бейсике не нужно объявлять переменные, как в C или Pascal — переменная автоматически создаётся при первом обращении к ней (что роднит этот язычок с PHP); впрочем, в последних, продвинутых, версиях объявление переменных таки обязательно.
Описание[править]
Ниже будет дано описание классического Бейсика, примерно в том виде, в каком он был изначально придуман. Следует иметь в виду, что современные релизы от классической формы по своей структуре отличаются, как небо и земля.
В языке используется всего два типа переменных: строки и числа. Имена переменных состоят из латинских букв, строковая переменная обозначается символом $ в конце имени. Команды представляют собой слова английского языка, по смыслу совпадающие с тем, что команда должна делать — например, PRINT, как видно из самого слова, — это печать чего-либо (по умолчанию на экран). Каждая команда имеет свой номер, обычно кратный 10, хотя всё зависит от воли программиста. Рекомендуется нумеровать команды примерно так, как указано выше — на тот случай, если возникнет необходимость вставить между двумя командами дополнительные. Ввод программы осуществляется построчно с консоли. Процедуры и функции в языке отсутствуют как таковые и представляют собой обычные фрагменты кода, располагаемые где-то начиная с номера 5000. Вызов такой «функции» осуществляется командой GOSUB с указанием метки (номера команды), возврат — командой RETURN. В операторе условного перехода IF…THEN отсутствует ветвь ELSE, что вынуждает программиста использовать оператор GOTO (безусловный переход) для перехода на нужную команду программы. Вообще, GOTO — основная головная боль языка: в больших по объёму программах этих операторов накапливается столько, что часто сам автор запутывается в том, что, откуда и куда у него передаеётся.
Пример типичной программы:
10 PRINT "Hello world" 20 END
Ввод и запуск этой программы с консоли языка может выглядеть примерно так:
Пример программы на мотив английской песенки про Десять зелёных бутылок, демонстрация работы цикла, ввода текста и оператора IF:
10 CLS 20 FOR x = 1 TO 9 30 PRINT 10-x;"бутылок пива было на столе. Одну бутылку выпили" 40 NEXT 50 PRINT "Нету больше пива" 60 INPUT "Бухать ещё? ";k$ 70 IF k$ = "y" OR k$ = "Y" THEN GOTO 10 80 END
Результат:
9 бутылок пива было на столе. Одну бутылку выпили 8 бутылок пива было на столе. Одну бутылку выпили 7 бутылок пива было на столе. Одну бутылку выпили 6 бутылок пива было на столе. Одну бутылку выпили 5 бутылок пива было на столе. Одну бутылку выпили 4 бутылок пива было на столе. Одну бутылку выпили 3 бутылок пива было на столе. Одну бутылку выпили 2 бутылок пива было на столе. Одну бутылку выпили 1 бутылок пива было на столе. Одну бутылку выпили Нету больше пива Бухать ещё?
Достоинства языка[править]
- Опять же простота. Для его освоения не требуется особых усилий, изучить его может любая блондинка.
- Встроен в Windows и Microsoft Office (VBA). Хорошая среда программирования для
наркомановсекретарей. Ролевая игра на Excel. - Удобен для написания коротких программ простыми людьми, то есть не программистами, что напрямую следует из 1-го пункта. (спойлер: На самом деле, для этого подходят почти все скриптовые языки)