Все мы знаем, какой пиздец сейчас происходит с Украиной и одной известной вам страной-победительницей-фашизма. Если вы хотите почитать об этом, помочь актуализировать информацию или высказать свое мнение — можете сделать это в статье Война в Украине и в обсуждении.
BASIC: различия между версиями
KMB (обсуждение | вклад) Нет описания правки |
Drkenny (обсуждение | вклад) Нет описания правки |
||
| (не показано 7 промежуточных версий 4 участников) | |||
| Строка 1: | Строка 1: | ||
{{Навигация| | {{Навигация|Языки}} | ||
{{stub|help=yes|несколько подробней описать историю, привести примеры программ, дать описание классического Бейсика и современных релизов, напр. Visual Basic}} | {{stub|help=yes|несколько подробней описать историю, привести примеры программ, дать описание классического Бейсика и современных релизов, напр. Visual Basic}} | ||
{{Q|Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации.|[ | {{Q|w=70%|Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации.|[[:w:Дейкстра, Эдсгер Вибе|Дейкстра, Эдсгер Вибе]]}} | ||
[[Файл:Basic typical.gif|thumb|200px|Типичные программисты решают на Бейсике типичные для этого языка задачи]][[Файл:Liberty BASIC for Windows.jpg|thumb|250px|Танки в бой!]]'''BASIC, Бейсик, рус. Васик''' (от англ. Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих) — один из самых популярных высокоуровневых языков программирования. | [[Файл:Basic typical.gif|thumb|200px|Типичные программисты решают на Бейсике типичные для этого языка задачи]][[Файл:Liberty BASIC for Windows.jpg|thumb|250px|Танки в бой!]]'''BASIC, Бейсик, рус. Васик''' (от англ. Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих) — один из самых популярных высокоуровневых языков программирования. | ||
== История == | == История == | ||
Создан профессорами Дартмутского колледжа Томасом Курцем и Джоном Кемени в 1964 году как язык для обучения студентов программированию. Приобрёл популярность благодаря компании Некрософт, которая в 1975 году выпустила версию данного языка под Альтаир 8800 — один из первых персональных компов. Позднее | Создан профессорами Дартмутского колледжа Томасом Курцем и Джоном Кемени в 1964 году как язык для обучения студентов программированию. Приобрёл популярность благодаря компании [[Некрософт]], которая в 1975 году выпустила версию данного языка под Альтаир 8800 — один из первых персональных компов. С Бейсика начинал <del>Тот, кого нельзя называть</del> некто Билл Гейтс, ещё учась в школе. Возможно, именно его детские воспоминания о хакинге на Бейсике заставили Microsoft так долго насиловать сей труп. Позднее та же компания запиливает QBasic для своей MS-DOS, в которую он входит в качестве бесплатного приложения, после чего создаёт Visual Basic как стандартный язык написания макросов для MS Office и затем Visual Basic.NET. В целом же популярность языка такова, что не существует ни одной платформы, под которой не было бы реализации Бейсика: есть даже реализации для микрокалькуляторов! | ||
== Причины популярности == | == Причины популярности == | ||
Основная причина | Основная причина сегодня — привычка писать на Бейсике тех, для кого он стал первым и последним языком. Так сложилось из-за продвижения этого языка Компанией Зла и простоты написания на нём программ базового уровня. Как только не называют Бейсик: «язык для чукчей», «язык туземцев», предполагая, что написать прогу на нём способен даже полный кретин. Так, в Бейсике не нужно объявлять переменные, как в C или Pascal — переменная автоматически создаётся при первом обращении к ней (что роднит этот язычок с [[PHP]]); впрочем, в последних, продвинутых, версиях объявление переменных таки обязательно. | ||
== Описание == | == Описание == | ||
Ниже будет дано описание классического Бейсика, примерно в том виде, | Ниже будет дано описание классического Бейсика, примерно в том виде, в каком он был изначально придуман. Следует иметь в виду, что современные релизы от классической формы по своей структуре отличаются, как небо и земля. | ||
В языке используется всего два типа переменных: строки и числа. Имена переменных состоят из латинских букв, строковая переменная обозначается символом '''$''' в конце имени. Команды представляют собой слова английского языка по смыслу совпадающие с тем, что команда должна | В языке используется всего два типа переменных: строки и числа. Имена переменных состоят из латинских букв, строковая переменная обозначается символом '''$''' в конце имени. Команды представляют собой слова английского языка, по смыслу совпадающие с тем, что команда должна делать — например, '''PRINT''', как видно из самого слова, — это печать чего-либо (по умолчанию на экран). Каждая команда имеет свой номер, обычно кратный 10, хотя всё зависит от воли программиста. Рекомендуется нумеровать команды примерно так, как указано выше — на тот случай, если возникнет необходимость вставить между двумя командами дополнительные. Ввод программы осуществляется построчно с консоли. Процедуры и функции в языке отсутствуют как таковые и представляют собой обычные фрагменты кода, располагаемые где-то начиная с номера 5000. Вызов такой «функции» осуществляется командой '''GOSUB''' с указанием метки (номера команды), возврат — командой '''RETURN'''. В операторе условного перехода '''IF…THEN''' отсутствует ветвь '''ELSE''', что вынуждает программиста использовать оператор '''GOTO''' (безусловный переход) для перехода на нужную команду программы. Вообще, '''GOTO''' — основная головная боль языка: в больших по объёму программах этих операторов накапливается столько, что часто сам автор запутывается в том, что, откуда и куда у него передаеётся. | ||
Пример типичной программы: | Пример типичной программы: | ||
| Строка 22: | Строка 22: | ||
</source> | </source> | ||
Ввод и запуск этой программы с консоли языка может выглядеть примерно так: | Ввод и запуск этой программы с консоли языка может выглядеть примерно так: | ||
[[Файл:Basic hw.jpg]] | [[Файл:Basic hw.jpg]] | ||
Пример программы на мотив английской песенки про [[:w:Десять зелёных бутылок|Десять зелёных бутылок]], демонстрация работы цикла, ввода текста и оператора IF: | |||
<source lang="vb"> | |||
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 | |||
</source> | |||
Результат: | |||
<pre> | |||
9 бутылок пива было на столе. Одну бутылку выпили | |||
8 бутылок пива было на столе. Одну бутылку выпили | |||
7 бутылок пива было на столе. Одну бутылку выпили | |||
6 бутылок пива было на столе. Одну бутылку выпили | |||
5 бутылок пива было на столе. Одну бутылку выпили | |||
4 бутылок пива было на столе. Одну бутылку выпили | |||
3 бутылок пива было на столе. Одну бутылку выпили | |||
2 бутылок пива было на столе. Одну бутылку выпили | |||
1 бутылок пива было на столе. Одну бутылку выпили | |||
Нету больше пива | |||
Бухать ещё? | |||
</pre> | |||
== Достоинства языка == | == Достоинства языка == | ||
# Опять | # Опять же простота. Для его освоения не требуется особых усилий, изучить его может любая блондинка. | ||
# Удобен для написания коротких программ простыми людьми, то есть не программистами, что напрямую следует из 1-го пункта. | # Встроен в Windows и Microsoft Office (VBA). Хорошая среда программирования для <del>наркоманов</del> секретарей. [http://carywalkin.wordpress.com/2013/03/17/arena-xlsm-released/ Ролевая игра на Excel]. | ||
# Удобен для написания коротких программ простыми людьми, то есть не программистами, что напрямую следует из 1-го пункта. {{Spoiler|На самом деле, для этого подходят почти все скриптовые языки}} | |||
Текущая версия от 15:54, 3 октября 2015
Этой статье требуется доработка. Вы можете помочь, исправив и дополнив ее.
Сюда следует добавить: несколько подробней описать историю, привести примеры программ, дать описание классического Бейсика и современных релизов, напр. Visual Basic.
Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации.


BASIC, Бейсик, рус. Васик (от англ. Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих) — один из самых популярных высокоуровневых языков программирования.
История
[править]Создан профессорами Дартмутского колледжа Томасом Курцем и Джоном Кемени в 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-го пункта. (спойлер: На самом деле, для этого подходят почти все скриптовые языки)
