Microsoft Small Basic (або Small Basic; скор. MSB або SB) — мова програмування і середовище розробки, розроблена відділом компанії Microsoft — Microsoft DevLabs. Є зменшеною і спрощеною версією Visual Basic, яка призначена для початківців-розробників, охочих осягнути основи програмування в простій формі.
Історія Microsoft Small Basic розроблювався Microsoft DevLabs і був опублікований 23 жовтня 2008 року. Для підтримки проекту було запущено офіційний сайт smallbasic.com і почато офіційний блог Small Basic, де опубліковуються новини і нові версії . 23 жовтня 2008 року — вперше анонсований Small Basic версії 0.1. Згодом успішно проведено перші випробування з декількома дітьми середньої школи, більшість з яких — діти співробітників Microsoft. В той же день Війай Раї почав вести офіційний блог Small Basic на сайті MSDN. 17 грудня 2008 року анонсовано версію 0.2. 10 лютого 2009 року анонсовано версію 0.3. 14 квітня 2009 року анонсовано версію 0.4.
16 червня 2009 року анонсовано версію 0.5. 19 серпня 2009 року анонсовано версію 0.6. 23 жовтня 2009 року під час першої річниці Small Basic анонсовано версію 0.7. 4 лютого 2010 року анонсовано версію 0.8. 11 червня 2010 року анонсовано версію 0.9.
4 липня 2011 року на блозі Small Basic користувач LitDev розпочав щомісячні змагання — Випробування Місяця. 12 липня 2011 року анонсовано версію 1.0. 25 вересня 2012 року Ной Бачер відновив офіційний блог Small Basic. 3 жовтня 2012 року Ед Прайс почав писати на блозі Small Basic. 16 жовтня 2012 року розпочато конкурс TechNet Wiki. 2 червня 2013 року розпочато щомісячне гуру-змагання TechNet. 26 березня 2014 року створено громадську раду Small Basic. 25 квітня 2014 року створено Small Basic акаунт в Twitter. 27 березня 2015 року анонсовано версію 1.1. 7 квітня 2015 року анонсовано офіційне доповнення Kinect.
Переваги і недоліки Переваги: Просте середовище розробки — текстовий редактор з багатофункціональною підказкою і кілька кнопок для редагування тексту і запуску програм. Простий синтаксис мови. Вбудована в середовище розробки контекстна документація по всіх елементах мови. Можливість розширення компонентів Small Basic для включення додаткового функціоналу.
Недоліки: Мала функціональність мови. Значна відмінність синтаксису мови від інших.
Мова програмування
Синтаксис
Оператори переходу
For — цикл із лічильником Цикл із лічильником — цикл, у якому деяка змінна змінює своє значення від заданого початкового значення до кінцевого значення з деяким кроком, і для кожного значення цієї змінної тіло циклу виконується один раз. У Small Basic використовується формула For — To — Step — EndFor.
Синтаксис: For i To e Step s 'Тіло циклу EndFor
В тілі циклу можна використовувати будь-які змінні інших частин програми і навпаки. Змінні: i — початкове значення лічильника, можливо задати в самій команді (For i = 0 ...); e — межове значення лічильника; s — крок, за замовчуванням дорівнює 1 (Функцію Step можна пропустити).
Функці:
Прочитавши команду For програма перевіряє чи істинне рівняння e > i. Якщо рівняння істинне, то програма виконує команди написані в тілі циклу і збільшує значення лічильника (i) на крок(s) — i = i + s, а після команди EndFor повертається до команди For даного циклу. Якщо не істинне, то переходить на рядок після команди EndFor.
Якщо надати змінній s нульове або від'ємне значення, то цикл виконується нескінчену кількість разів, що іноді використовується, хоча більш логічно використовувати оператор Goto.
Альтернативні варіанти: Оператор For можна замінити за допомогою If і Goto: Програма з For:
For i = 0 To 2 Step 1 TextWindow.WriteLine(i) EndFor TextWindow.WriteLine(i)
Та ж сама програма без оператора For:
i = 0 e = 2 s = 1 startfor: If e >= i Then TextWindow.WriteLine(i) i = i + s Goto startfor EndIf TextWindow.WriteLine(i)
Goto — безумовний перехід Безумовний перехід () — перехід у задану точку програми без перевірки виконання будь-яких умов. У Small Basic використовується формула мітка — Goto.
Синтаксис: label: 'Інші команди Goto label
label — мітка;
Функція: Основна стаття: Безумовний перехід
Прочитавши команду Goto label програма читає команди після мітки, яка складається з назви і двокрапки — label:. При цьому у переходу не може бути більше однієї мітки і ця мітка повинна стояти перед Goto.
У найпростішому вигляді Goto можна використовувати як нескінчений цикл замість команди For або While.
If — умовний перехід Умовний перехі́д () — зміна послідовності виконання операторів програми в залежності від результату перевірки деякої умови. В Small Basic використовується формула If — Then — EndIf.
Синтаксис: If рівняння Then 'Інші команди ElseIf рівняння Then 'Інші команди Else 'Інші команди EndIf
Функція:
Перша команда If рівняння Then задає умову. Якщо умова істина, то програма виконує команди починаючи з наступного рядка. Якщо ні — то переходить до наступного підблоку в блоку If (ElseIf або Else) або продовжує виконувати команди після блоку If, якщо це EndIf. Аналогічні ElseIf і Else можливо опустити.
Команда ElseIf рівняння Then використовується при необхідності перевірки двох чи більше умов і може повторюватися. Працює так-само як і If.
Команда Else використовується при необхідності виконання будь-яких команд при невиконані всіх умов в підблоках If і ElseIf.
Оператори порівняння: В рівняннях використовуються оператори порівняння для порівняння двох виразів. Оператор Умова Істина Брехня > a > b значення a більше значення b значення a менше значення b < a < b значення a менше значення b значення a більше значення b = a = b значення a дорівнює значенню b значення a не дорівнює значенню b <> a <> b значення a не дорівнює значенню b значення a дорівнює значенню b >= a >= b значення a більше або дорівнює значенню b значення a менше значення b <= a <= b значення a менше або дорівнює значенню b значення a більше значення b
Логічні оператори: Логічні оператори використовуються для маніпуляцій з одним або декількома операторами порівняння: And — логічне «і», потребує виконання обох умов, пишеться між двома умовами. Or — логічне «або», потребує виконання будь-якої умови, пишеться між двома умовами. Not — логічне «не», потребує невиконання даної умови, пишеться перед умовою.
Інші Sub — підпрограма. While — цикл з передумовою
Основні оператори Array — робота з масивами; Clock — час; Controls — елементи контролю; Desktop — робота з робочим столом; Dictionary — англійський і французький інтернет-словники; File — робота з файлами; Flickr — інтернет-сервіс Flickr; GraphicsWindow — графічне вікно; ImageList — робота з фотографіями; Math — математичні формули; Mouse — робота з курсором; Network — робота з Інтернетом; Program — особливі дії з програмою; Shapes — графічні фігури; Sound — робота з музичними файлами; Stack — стек; TextWindow — текстове вікно; Text — робота з текстом; Timer — таймер; Turtle — графічна черепашка.
Програма «Hello world!»
TextWindow.WriteLine("Hello world!")
Посилання Справка по API — Довідка по API smallbasic.ru — Російськомовне співтовариство, присвячене мови Small Basic http://social.technet.microsoft.com/wiki/contents/articles/14075.small-basic-control-statements.aspx Category:Microsoft Small Basic Завдання, реалізовані в Microsoft Small Basic на rosettacode.org
Джерела
Примітки