**Small Basic**, Microsoft'un geliştirdiği ve yayımladığı bir programlama dilidir.

Small Basic, normalde çocukların programlamayı eğlenceli bir şekilde öğrenmesi için kurulmuştur. Ancak Small Basic'i herkes kullanabilir. Small Basic, kod bloklarıyla değil de; Java, Python, C vb. programlama dilleri gibi yazı tabanlıdır. Small Basic kodları ayrıca Visual Basic komutuna gönderebilir.

Small Basic ile programlar ve oyunlar yapılabilir. Oyun motoru gibi değildir ancak yine de oyun yapılması mümkündür.

Web
---

Small Basic yaptığımız programları kütüphanesinde yayınlamamıza olanak tanır. Bu kütüphaneye **Small Basic Program Listing** adı verilir. Small Basic ile hem program yayınlayabilir, hem de program yükleyebiliriz. Uygulamadaki üst panelde, ***Web*** kısmında bu özellikler görülebilir. Özellikleri sıralayacak olursak:

* *Al*
* *Yayımla*

### Al

Bu özellik, Small Basic Program Listing içindeki uygulamanın ID bilgisini girerek kendi projenize yazdırmanıza olanak sağlar. Yazılmış bir projeniz varsa onun üstüne yazabilir.

### Yayımla

Bu özellik, Small Basic Program Listing'e programınızı yüklemenizi sağlar. Eğer projeniz boş veya çok büyük ise, hata verir.

Kullanım
--------

Small Basic'i ister çevrimiçi,ister indirerek yapabilirsiniz. Çevrimiçi indirmenin farkı, web sitede kod yazmanız ve sizin verilerinize erişilebilmesidir.

### Teknik

Small Basic,Nesne yönelimli programlama dilidir.Small Basic'te nesne yönelimli programlama (genellikle diğer programlama dillerinde de böyle) şunlardır:

#### Nesne

Small Basic'in olmazsa olmaz metodudur. **Nesne**, kütüphanelerin kapısını açar. Anlamadıysanız bir örnek verelim:

***TextWindow***, metinsel girdi ve çıktı fonksiyonları sağlar.

#### İşlev

Bir nesne yazdıktan sonra kullanılabilecek metottur. İşlevler, girdiğimiz eylemin yapılmasını sağlar. Örnek olarak:

***WriteLine***, TextWindow nesnesinden sonra kullanılır. İçine yazılan **string** değeri TextWindow penceresine yazdırır.

#### Özellik

Aslında bu metotlara ek diyebiliriz. Genellikle kütüphanedeki şeyleri özelleştirmek için kullanılır.

Söz Dizimi
----------

Small Basic, Python gibi örneğin küme parantezleri yerine girintileme işlemi kullanır. Ayrıca bazı durumlarda girintileme işlemine gerek bile kalmaz. İşte bu yüzden kodlarınızı en az çabayla hızlı bir şekilde yazabilirsiniz. Small Basic'in sade bir sözdizimi vardır. Bu özelliği aynı Python'a benzer.

### İşleçler

+ işleci, toplama ve birleştirme işlemidir

- işleçi, çıkarma işlemidir

\* işleci,çarpma işlemidir.String ifadeler için de kullanılabilir.

/ işleci, bölme işlemidir

% işleci, mod alma işlemidir

`<` işleci, küçüktür anlamına gelir

`>` işleci, büyüktür anlamına gelir

`=` işleci, eşittir ve atama anlamına gelir

`<=` işleci, küçük eşittir anlamına gelir

`>=` işleci, büyük eşittir anlamına gelir

`!=` işleci, eşit değil anlamına gelir

`**` işleci, üs alma anlamına gelir

`True` işleci, doğru anlamına gelir

`False` işleci, yanlış anlamına gelir

`and` işleci ve anlamına gelir

`or` işleci, veya anlamına gelir

`not` işleci, değil anlamına gelir.

### İfadeler

if ifadesi, içine yazdığımız belirli koşul geçerli olursa çalışır. Ayrıca "else" ve "else if" de beraber kullanılabilir

while ifadesi, arzu edilen sonuca ulaşılana kadar bir şeyi defalarca tekrar edebilmenize olanak verir

for ifadesi, bir dizi işlemin birden çok kez çalıştırılabilmesine olanak verir

sub ifadesi, gruplar halindeki kod satırlarını tek bir çağrı ile yapabilmenize olanak verir

goto ifadesi, program içerisinde yeni bir konuma gidebilmenize olanak verir

Small Basic'te veri tipleri yoktur. Bunun kötü olmasının nedeni, veri tipleri olsaydı belleğin daha az güç tüketeceğidir.

Kütüphane
---------

Small Basic'in pek büyük bir kütüphanesi yoktur. Hatta bu kadar az olması şaşılacak bir durumdur. Bu eksi bir yanıdır.

Kaynakça
--------

1. ↑  "Small Basic Al - Microsoft Store tr-TR". *Microsoft Store*. 10 Ekim 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 10 Ekim 2021.
2. ↑  "Microsoft Small Basic Program Listing". *smallbasic.com*. 31 Ekim 2010 tarihinde kaynağından arşivlendi. Erişim tarihi: 10 Ekim 2021.
3. ↑  "Microsoft Small Basic Every Kid Can Code". *superbasic-v2.azurewebsites.net*. 21 Kasım 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 10 Ekim 2021.

| * g
* t
* d
BASIC programlama dilleri |
| --- |
| Klasik | Atari BASIC **·**  Atari ST BASIC **·**  BasiEgaXorz **·**  Dartmouth BASIC **·**  GW-BASIC **·**  HP BASIC for OpenVMS **·**  IBM BASICA **·**  IBM Cassette BASIC **·**  IBM Disk BASIC **·**  Locomotive BASIC **·**  MSX BASIC **·**  ScriptBasic **·**  Sinclair BASIC **·**  TI BASIC (TI 99/4A) **·**  Turbo-Basic XL **·**  UBasic **·**  Vilnius BASIC |
| İşlem-odaklı | BBC BASIC **·**  Beta BASIC **·**  FreeBASIC **·**  GFA BASIC **·**  Liberty BASIC **·**  Microsoft Small Basic **·**  PureBasic **·**  QBasic **·**  QuickBASIC **·**  SuperBasic **·**  True BASIC **·**  Turbo Basic **·**  XBasic **·**  Xblite **·**  Basic4ppc |
| Nesne uzantılı | BlitzMax **·**  FreeBASIC **·**  Gambas **·**  GLBasic **·**  PowerBasic **·**  ProvideX **·**  RapidQ **·**  REALbasic **·**  Run\_BASIC **·**  StarOffice Basic **·**  Visual Basic **·**  Visual Basic .NET |
| Mobil cihazlar için | NS Basic **·**  Basic4ppc |

| * g
* t
* d
Microsoft geliştirme araçları |
| --- |
| Geliştirmeortamları |  Visual Studio (Team System **·**  Express) **·**  Visual Studio Tools for Office **·**  Visual Studio Tools for Applications **·**  Expression Web **·**  Expression Blend  **·** Microsoft SharePoint Designer |
| Diller vederleyiciler |  Visual Basic (VB.NET) **·**  Visual C++ **·**  Visual C# **·**  Visual J# **·**  Visual FoxPro **·**  IronPython **·**  IronRuby **·**  PowerShell **·**  XAML **·**  F#  |
| Büyük API'ler veçerçeveler |  Windows API / SDK **·**  .NET Framework **·**  Managed code frameworks (Presentation **·**  Communication **·**  Workflow **·**  CardSpace) **·**  Silverlight **·**  XNA **·**  ASP.NET (ASP.NET AJAX) **·**  LINQ **·**  ADO.NET **·**  DirectX **·**  Robotics Developer Studio  |
| Veritabanı araçlarıve diller | 

|  |  |
| --- | --- |
| SQL Server |  Express **·**  Compact **·**  Management Studio **·**  Business Intelligence Development Studio **·**  MSDE  |
| SQL hizmetleri |  Analysis **·**  Reporting **·**  Integration **·**  Notification  |
| Diğer |  Visual FoxPro **·**  Microsoft Access **·**  Extensible Storage Engine  |

 |
| Kaynak kontrolü |  Team Foundation Server **·**  Visual SourceSafe  |
| Sürücü geliştirme |  Windows Driver Model **·**  Windows Driver Foundation (KMDF **·**  UMDF) **·**  Windows Driver Kit **·**  Windows Logo Kit  |