Microsoft Small Basic
![]() | |
Парадигма | Структурированный , императивный , объектно-ориентированный |
---|---|
Разработано | Microsoft , Виджай Раджи [1] [2] |
Разработчик | Майкрософт |
Впервые появился | 23 октября 2008 г [3] [4] |
Стабильная версия | v1.2
/ 1 октября 2015 г [5] |
Дисциплина набора текста | Динамичный , слабый |
Платформа | .NET Framework 4.5 [5] |
ТЫ | Небольшой базовый рабочий стол: Windows XP (до версии 1.0), Windows Vista , Windows 7 , Windows 8 , Windows 8.1 , Windows 10 , Windows Server 2008 R2. [6] Small Basic Online: веб-браузер |
Лицензия | МОЯ лицензия [7] |
Расширения имен файлов | .sb, .smallbasic |
Веб-сайт | smallbasic-publicвеб-сайт |
Под влиянием | |
Логотип , QBasic , Visual Basic .NET |
Microsoft Small Basic — это язык программирования , интерпретатор и связанная с ним среда разработки . от Microsoft Упрощенный вариант BASIC . Он разработан, чтобы помочь студентам, которые изучили языки визуального программирования, такие как Scratch, изучить текстовое программирование. [8] Соответствующая IDE обеспечивает упрощенную среду программирования с такими функциями, как подсветка синтаксиса , интеллектуальное завершение кода и доступ к документации в редакторе. [9] В языке всего 14 ключевых слов. [10]
История [ править ]
Версия | Дата выпуска | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
v0.1. | 23 октября 2008 г. [3] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.2. | 17 декабря 2008 г. [11] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.3. | 10 февраля 2009 г. [12] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.4. | 14 апреля 2009 г. [13] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.5. | 16 июня 2009 г. [14] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.6. | 19 августа 2009 г. [15] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.7. | 23 октября 2009 г. [4] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.8. | 4 февраля 2010 г. [16] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.9 . | 11 июня 2010 г. [17] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.91. | 17 ноября 2010 г. [18] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v0.95. | 8 февраля 2011 г. [19] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v1.0 . | 12 июля 2011 г. [20] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v1.1. | 27 марта 2015 г. [21] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
v1.2. | 1 октября 2015 г. [5] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Старая версия Старая версия, все еще поддерживается Последняя версия Будущий выпуск |
Microsoft анонсировала Small Basic в октябре 2008 года. [3] и выпустил первую стабильную версию для распространения 12 июля 2011 г. [20] на веб-сайте Microsoft Developer Network (MSDN) вместе с учебной программой. [22] и вводное руководство. [23] Между анонсом и выпуском стабильной версии было выпущено несколько выпусков Community Technology Preview (CTP).
27 марта 2015 г. Microsoft выпустила Small Basic версии 1.1. [21] который исправил ошибку и обновил целевую версию .NET Framework с версии 3.5 до версии 4.5, что сделало ее первой версией, несовместимой с Windows XP .
Microsoft выпустила Small Basic версии 1.2 1 октября 2015 г. [5] Версия 1.2 была первым обновлением после четырехлетнего перерыва, в котором были представлены новые функции Small Basic. Microsoft Kinect , В обновлении добавлены классы для работы с датчиками движения [5] увеличено количество языков, поддерживаемых включенным объектом Dictionary, и исправлен ряд ошибок. [6]
19 февраля 2019 г. Microsoft анонсировала Small Basic Online (SBO). Это программное обеспечение с открытым исходным кодом , выпущенное под лицензией MIT на GitHub . [24] [25]
Язык [ править ]
В Small Basic пишут иллюстративную фразу «Hello, World!» программа следующим образом:
Текстовое окно . WriteLine ( «Привет, мир!» )
Microsoft Small Basic является полным по Тьюрингу . Он поддерживает условное ветвление , структуры циклов и подпрограммы для обработки событий . Переменные и слабо типизированы динамические , без правил области видимости.
Условное ветвление [ править ]
Следующий пример демонстрирует условное ветвление. Он запрашивает у пользователя градусы Цельсия или Фаренгейта , а затем комментирует ответ в соответствующей единице измерения температуры.
' Программа, дающая советы при заданной температуре.
Текстовое окно . WriteLine ( "Используете ли вы температуру в градусах Цельсия или Фаренгейта?" )
TextWindow . WriteLine ( "Введите C для Цельсия и F для Фаренгейта:" )
вопрос_темп : 'Метка для возврата к вводу, если был введен неправильный ввод
tempunit = TextWindow . Read ()
' Определения температуры в градусах Цельсия:
tempArray [ "hot" ] = 30 ' 30 °C равно 86 ° F
tempArray [ "pretty" ] = 20 ' 20 ° C равно 68 ° F
tempArray [ "cold" ] = 15 ' 15 °C равно 59 °F.
Если tempunit = «C» ИЛИ tempunit = «c», то
TextWindow . WriteLine ( "Выбрано значение Цельсия!" )
tempunit = "C" ' Может быть в нижнем регистре, поэтому сделайте его прописным
ElseIf tempunit = "F" ИЛИ tempunit = "f" Тогда
TextWindow . WriteLine ( "Выбран Фаренгейт!" )
'Мы вычисляем значения температуры по Фаренгейту на основе значений Цельсия
tempArray [ "hot" ] = (( tempArray [ "hot" ] * 9 ) / 5 ) + 32
tempArray [ "pretty" ] = (( tempArray [ "pretty" ] * 9 ) / 5 ) + 32
tempArray [ "cold" ] = (( tempArray [ "cold" ] * 9 ) / 5 ) + 32
tempunit = "F" ' Может быть в нижнем регистре, таким образом, сделайте его прописным.
Else
GOTO questions_temp ' Неправильный ввод, вернитесь к метке «question_temp»
EndIf
TextWindow . Напишите ( "Введите температуру сегодня (в формате " + tempunit + ")): "
temp = TextWindow . ReadNumber ()
Если temp >= tempArray [ «горячий» ] Тогда
TextWindow . WriteLine ( "Очень жарко." )
ElseIf temp >= tempArray [ "довольно" ] Тогда
TextWindow . WriteLine ( "Это очень красиво." )
ElseIf temp >= tempArray [ "cold" ] Тогда
TextWindow . WriteLine ( "Не забудьте пальто." )
Else
TextWindow . WriteLine ( "Оставайся дома." )
EndIf
Small Basic не поддерживает встроенные If
оператор, как и Visual Basic , например:
Если temp > 50 , то TextWindow . WriteLine ( "Это очень мило." )
Цикл [ править ]
Этот пример демонстрирует цикл. Начиная с единицы и заканчивая десятью, он умножает каждое число на четыре и отображает результат умножения.
Текстовое окно . WriteLine ( «Таблица умножения» )
Для i = от 1 до 10
TextWindow . Напишите ( i * 4 )
EndFor
While
циклы также поддерживаются, и продемонстрированный For
Цикл может быть расширен за счет использования Step
ключевое слово. Step
Ключевое слово используется для установки значения, по которому переменная счетчика, i
, увеличивается на каждой итерации.
Типы данных [ править ]
Small Basic поддерживает основные типы данных , такие как строки , целые и десятичные числа , и легко преобразует один тип в другой в зависимости от ситуации. В примере оба Read
и ReadNumber
методы читают строку из командной строки, но ReadNumber
отклоняет любые нечисловые символы. Это позволяет преобразовать строку в числовой тип и рассматривать ее как число, а не как строку. +
оператор.
Текстовое окно . WriteLine ( "Введите свое имя:" )
name = TextWindow . Чтение ()
TextWindow . Напишите ( «Введите свой возраст:» )
age = TextWindow . ReadNumber ()
TextWindow . WriteLine ( "Привет, " + имя + "!" )
TextWindow . WriteLine ( "Через 5 лет тебе будет " + ( age + 5 ) + " лет!" )
Поскольку Small Basic легко преобразует типы данных, числами можно манипулировать как строками, а числовыми строками — как числами. Это демонстрируется на втором примере.
Текстовое окно . WriteLine ( Math . log ( "100" ) 'Печатает 2
TextWindow . WriteLine ( "100" + "3000" ) ' Печатает 3100
TextWindow . WriteLine ( "Windows" + 8 ) Windows 8
' Печатает текстовое окно . WriteLine ( Text . GetLength ( 1023.42 )) ' Печатает 7 (длина десятичного представления, включая десятичную точку)
Во втором примере обе строки обрабатываются как числа и складываются вместе, давая выходной результат 3100. Чтобы объединить два значения и получить выходной результат 1003000, необходимо использовать Text.Append(text1, text2)
метод.
Библиотеки [ править ]
Стандартная библиотека [ править ]
Small Basic Стандартная библиотека включает базовые классы по математике, обработке строк и вводу/выводу , а также более экзотические классы, призванные сделать использование языка более увлекательным для учащихся. К ним относятся графический класс Turtle, класс для получения фотографий с Flickr и классы для взаимодействия с датчиками Microsoft Kinect. [26]
Чтобы сделать занятия более удобными для учащихся, они были упрощены. Это упрощение демонстрируется с помощью кода, используемого для получения случайного изображения горной тематики с Flickr:
Для i = от 1 до 10
картинка = Flickr . GetRandomPicture ( «горы» )
Рабочий стол . SetWallPaper ( pic )
Программа . Задержка ( 10000 )
EndFor
Графика черепахи [ править ]
Small Basic включает графическую библиотеку «Черепаха», заимствованную из Logo семейства языков программирования . Например, чтобы нарисовать квадрат с помощью черепахи, черепаху перемещают вперед на заданное количество пикселей и поворачивают на 90 градусов в заданном направлении. Затем это действие повторяется четыре раза, чтобы нарисовать четыре стороны квадрата.
Для i = от 1 до 4
Черепаха . Move ( 100 ) вперед на 100 пикселей
' Черепаха . Turn ( 90 ) ' Поворот на 90 градусов вправо
EndFor
Более сложные рисунки возможны за счет изменения угла поворота черепахи и количества итераций цикла. Например, можно нарисовать шестиугольник , установив угол поворота 60 градусов и количество итераций — шесть.
Сторонние библиотеки [ править ]
Small Basic позволяет использовать сторонние библиотеки. Эти библиотеки должны быть написаны на языке, совместимом с CLR , а скомпилированные двоичные файлы должны быть ориентированы на совместимую версию .NET Framework. Классы, предоставляемые библиотекой, должны быть статическими , помечены определенным атрибутом и должны использовать определенный тип данных.
Ниже приведен пример класса, который будет использоваться в Small Basic, написанного на C# .
[SmallBasicType]
public static class exampleClass
{
public static Primitive Add ( Primitive A , Primitive B ) => A + B ;
общественный статический примитив SomeProperty
{
get ;
набор ;
}
public static Primitive Pi => ( Primitive ) 3.14159 ;
}
Если доступно, среда разработки Small Basic отобразит документацию для сторонних библиотек. Среда разработки принимает документацию в виде XML- файла, который может автоматически генерироваться из комментариев исходного кода с помощью таких инструментов, как Microsoft Visual Studio и MonoDevelop . [27]
Ссылки [ править ]
- ^ Конрод, Филип; Тайли, Лу (февраль 2013 г.). Программирование игр с помощью Microsoft Small Basic . Кидваре Программное обеспечение, ООО. ISBN 978-1-937161-56-9 .
- ^ «Рекомендуемая статья: Интервью с Виджае Раджи, создателем Small Basic» . TECHCOMMUNITY.MICROSOFT.COM . 13 февраля 2019 г.
- ^ Перейти обратно: а б с Раджи, Виджайе (23 октября 2008 г.). "Привет, мир" . Малый базовый . Блоги MSDN. Майкрософт . Проверено 9 февраля 2014 г.
- ^ Перейти обратно: а б Раджи, Виджайе (23 октября 2009 г.). «С Днем Рождения, Малый Базовый» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Перейти обратно: а б с д Это Шероттер, Майкл (1 октября 2015 г.). «Выпущена версия Small Basic 1.2 с поддержкой Kinect и исправлениями ошибок» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 2 октября 2015 г.
- ^ Перейти обратно: а б «Загрузите Microsoft Small Basic 1.2 из официального центра загрузки Microsoft» . Малый базовый . Майкрософт. 1 октября 2015 года . Проверено 2 октября 2015 г.
- ^ «СмоллБазик» . Гитхаб . 17 октября 2021 г.
- ^ «Маленький базовый» . Проверено 6 сентября 2020 г.
- ^ Прайс, Эд (22 октября 2012 г.). «Уникальные особенности Small Basic» . Малый базовый . ТехНет. Майкрософт . Проверено 22 апреля 2015 г.
- ^ Прайс, Эд (8 октября 2012 г.). «Каковы 14 ключевых слов Small Basic?» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 9 февраля 2014 г.
- ^ Раджи, Виджайе (17 декабря 2008 г.). «Анонсируем Small Basic v0_2!» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Раджи, Виджайе (10 февраля 2009 г.). «Microsoft Small Basic v0.3 уже здесь» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Раджи, Виджайе (14 апреля 2009 г.). "В версии 0.4 Small Basic написано "Bonjour" " . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Раджи, Виджайе (16 июня 2009 г.). «Самое новое, самое тощее и самое подлое здесь!» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Раджи, Виджайе (19 августа 2009 г.). «Теперь доступно: Small Basic v0.6» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Раджи, Виджайе (10 февраля 2010 г.). «Маленький базовый v0.8» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Раджи, Виджайе (11 июня 2010 г.). «Small Basic V0.9 уже здесь!» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Алдана, Сандра (17 ноября 2010 г.). «Small Basic V0.91 более интернационален, чем когда-либо!» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Алдана, Сандра (8 февраля 2011 г.). «Small Basic v0.95 говорит на другом языке!» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Перейти обратно: а б Алдана, Сандра (12 июля 2011 г.). «Small Basic 1.0 уже здесь!» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Перейти обратно: а б Прайс, Эд (27 марта 2015 г.). «Small Basic 1.1 уже здесь!» . Малый базовый . Блоги MSDN. Майкрософт . Проверено 27 сентября 2015 г.
- ^ Прайс, Эд (29 апреля 2014 г.). «Малый базовый учебный план» . ТехНет . Майкрософт . Проверено 9 февраля 2014 г.
- ^ Прайс, Эд; Такахаси, Нонки (25 февраля 2014 г.). «Небольшое базовое руководство по началу работы» . ТехНет . Майкрософт . Проверено 12 февраля 2015 г.
- ^ «Анонсируем Small Basic Online 1.0 — общедоступная предварительная версия» . 20 февраля 2019 г.
- ^ «ТехНет Вики» .
- ^ «Системные требования Kinect для Small Basic» . ininet.org .
- ^ Проталински, Эмиль (17 ноября 2008 г.). «Еще один язык программирования от Microsoft: Small Basic» . Арс Техника .
Дальнейшее чтение [ править ]
- Марджи, Маджед; Прайс, Эд (2016). Научитесь программировать с помощью Small Basic: введение в программирование с использованием игр, искусства, науки и математики . Пресс без крахмала . ISBN 978-1593277024 .
- Карлсон, Эдвард Х; Филип Конрод, Филип; Тайли Конрод, Лу (2013). Small Basic для детей: учебник по компьютерному программированию . Детское программное обеспечение. ISBN 978-1937161828 .
- Обсуждение основ Small Basic с Виджае Раджи и Эриком Мейером на SmallBasic
- Введение в Small Basic. Архивировано 11 июля 2010 г. на обсуждении Wayback Machine с Виджаем Раджи и Робертом Хессом на SmallBasic.
- Microsoft Small Basic для .NET. Архивировано 13 апреля 2016 г. в Wayback Machine , с примером приложения. обзоре Microsoft Small Basic на
- Категория: Задачи Microsoft Small Basic, реализованные в Microsoft Small Basic на сайтеrosettacode.org
Внешние ссылки [ править ]
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/df/Wikibooks-logo-en-noslogan.svg/40px-Wikibooks-logo-en-noslogan.svg.png)
- Майкрософт БЕЙСИК
- Семейство языков программирования BASIC
- Образовательные языки программирования
- Языки программирования .NET
- программное обеспечение 2008 года
- бесплатное программное обеспечение Майкрософт
- Языки программирования Майкрософт
- Языки программирования, созданные в 2008 году.
- Программное обеспечение, использующее лицензию MIT
- Педагогическая интегрированная среда развития
- Бесплатное программное обеспечение только для Windows
- Бесплатные интегрированные среды разработки