Microsoft Small Basic
Microsoft Small Basic | ||
---|---|---|
Desarrollador(es) | ||
Microsoft http://www.smallbasic.com/ | ||
Información general | ||
Paradigma | Estructurado, imperativo, orientado a objetos | |
Apareció en | 2008 | |
Diseñado por | Microsoft, Vijaye Raji | |
Última versión estable | 1.2 (01 de octubre de 2015 (9 años, 8 meses y 27 días)) | |
Implementaciones | Small Basic Desktop, Small Basic Online | |
Influido por | QBasic, Visual Basic .NET, Logo | |
Licencia | Licencia MIT | |

Microsoft Small Basic es un lenguaje de programación, un intérprete y un IDE asociado. Se trata de una variante simplificada del BASIC de Microsoft, diseñada para ayudar a los estudiantes que han aprendido lenguajes de programación visuales como Scratch a aprender la programación basada en texto.[1] El IDE ofrece un entorno de programación simplificado con funciones como resaltado de sintaxis, completado inteligente de código y acceso a la documentación en el editor. [2] El lenguaje tiene sólo 14 palabras clave.[3]
Historia
[editar]Microsoft anunció Small Basic en octubre de 2008, [4] y lanzó la primera versión estable para su distribución el 12 de julio de 2011, [5] en un sitio web de Microsoft Developer Network (MSDN), junto con un programa de enseñanza [6] y una guía introductoria. [7] Entre el anuncio y la versión estable, se realizaron varias versiones de la Community Technology Preview (CTP).
El 27 de marzo de 2015, Microsoft lanzó Small Basic versión 1.1,[8] que corregía un error y actualizaba la versión prevista del Framework .NET de la versión 3.5 a la 4.5, convirtiéndola en la primera versión incompatible con Windows XP.
Microsoft lanzó la versión 1.2 de Small Basic el 1 de octubre de 2015. [9] La versión 1.2 fue la primera actualización tras un paréntesis de cuatro años para introducir nuevas funciones en Small Basic. La actualización añadía clases para trabajar con los sensores de movimiento Kinect de Microsoft,[9] se ha ampliado el número de idiomas admitidos por el objeto Diccionario incluido y se han corregido algunos errores.
El 19 de febrero de 2019, Microsoft anunció Small Basic Online (SBO). Se trata de un software de código abierto publicado bajo licencia MIT en GitHub. [10] [11]
Lenguaje
[editar]En Small Basic, se escribe el programa de ejemplo "¡Hola mundo! de la siguiente manera:[12]
TextWindow.WriteLine("¡Hola Mundo!")
Admite bifurcaciones condicionales, estructuras de bucle y subrutinas para la gestión de eventos. Las variables están débilmente tipadas y son dinámicas, sin reglas de alcance.
Ejemplo ecuación de segundo grado
[editar]Programa para resolver una ecuación de segundo grado:
TextWindow.WriteLine("Resolver una ecuación de segundo grado (ax^2 + bx + c = 0)")
TextWindow.WriteLine("--------------------------------------------------")
' Pedir al usuario los coeficientes a, b y c
TextWindow.Write("Ingresa el valor de a: ")
a = TextWindow.ReadNumber()
TextWindow.Write("Ingresa el valor de b: ")
b = TextWindow.ReadNumber()
TextWindow.Write("Ingresa el valor de c: ")
c = TextWindow.ReadNumber()
TextWindow.WriteLine("")
' Calcular el discriminante (delta)
delta = ( Math.Power(b,2) ) - (4 * a * c)
' Analizar el valor del discriminante para determinar las soluciones
If delta > 0 Then
' Dos soluciones reales y diferentes
x1 = (-b + Math.SquareRoot(delta)) / (2 * a)
x2 = (-b - Math.SquareRoot(delta)) / (2 * a)
TextWindow.WriteLine("El discriminante (delta) es mayor que 0.")
TextWindow.WriteLine("La ecuación tiene dos soluciones reales y diferentes:")
TextWindow.WriteLine("x1 = " + x1)
TextWindow.WriteLine("x2 = " + x2)
ElseIf delta = 0 Then
' Una solución real (raíces iguales)
x = -b / (2 * a)
TextWindow.WriteLine("El discriminante (delta) es igual a 0.")
TextWindow.WriteLine("La ecuación tiene una solución real (raíces iguales):")
TextWindow.WriteLine("x = " + x)
Else
' No hay soluciones reales (soluciones complejas)
TextWindow.WriteLine("El discriminante (delta) es menor que 0.")
TextWindow.WriteLine("La ecuación no tiene soluciones reales (tiene soluciones complejas).")
EndIf
Librerías
[editar]Librería estándar
[editar]La biblioteca estándar Small Basic incluye clases básicas para matemáticas, manejo de cadenas y entrada/salida, así como clases más exóticas que tienen como objetivo hacer que el uso del lenguaje sea más divertido para los estudiantes. Algunos ejemplos de esto incluyen una clase de gráficos Turtle, una clase para recuperar fotos de Flickr y clases para interactuar con los sensores Microsoft Kinect. [13]
Para que las clases sean más fáciles de usar para los estudiantes, se han simplificado. Esta simplificación se demuestra a través del código utilizado para recuperar una imagen aleatoria con temática de montaña de Flickr:
For i = 1 To 10
pic = Flickr.GetRandomPicture("montañas")
Desktop.SetWallPaper(pic)
Program.Delay(10000)
EndFor
Bibliotecas de terceros
[editar]Small Basic permite el uso de bibliotecas de terceros. Estas bibliotecas deben estar escritas en un lenguaje compatible con CLR y los binarios compilados deben apuntar a un lenguaje compatible. Versión de .NET Framework. Las clases proporcionadas por la biblioteca deben ser estáticas, estar marcadas con un atributo específico y deben utilizar un tipo de datos específico.
A continuación se proporciona un ejemplo de una clase que se utilizará en Small Basic, escrita en C# .
[SmallBasicType]
public static class ClaseEjemplo
{
public static Primitive Add(Primitive A, Primitive B) => A + B;
public static Primitive SomeProperty
{
get;
set;
}
public static Primitive Pi => (Primitive)3.14159;
}
Si está disponible, el entorno de desarrollo Small Basic mostrará la documentación de las bibliotecas de terceros. El entorno de desarrollo acepta documentación en forma de archivo XML, que puede generarse automáticamente a partir de comentarios del código fuente mediante herramientas como Microsoft Visual Studio y MonoDevelop . [14]
Referencias
[editar]- ↑ «Small Basic» (en inglés). Consultado el 6 de septiembre de 2020.
- ↑ Price, Ed (22 de octubre de 2012). «The Unique Features of Small Basic». Small Basic. TechNet (en inglés). Microsoft. Consultado el 22 de abril de 2015.
- ↑ Price, Ed (8 de octubre de 2012). «What are the 14 Keywords of Small Basic?». Small Basic. MSDN Blogs (en inglés). Microsoft. Consultado el 9 de febrero de 2014.
- ↑ Raji, Vijaye (23 October 2008). «Hello World». Small Basic. MSDN Blogs (en inglés). Microsoft. Consultado el 9 de febrero de 2014.
- ↑ Aldana, Sandra (12 de julio de 2011). «Small Basic 1.0 is here!». Small Basic. MSDN Blogs (en inglés). Microsoft. Consultado el 27 de septiembre de 2015.
- ↑ Price, Ed (29 de abril de 2014). «Small Basic Curriculum». TechNet (en inglés). Microsoft. Consultado el 9 de febrero de 2014.
- ↑ Price, Ed (25 de febrero de 2014). «Small Basic Getting Started Guide». TechNet (en inglés). Microsoft. Consultado el 12 de febrero de 2015.
- ↑ Price, Ed (27 de marzo de 2015). «Small Basic 1.1 is here!». Small Basic. MSDN Blogs (en inglés). Microsoft. Consultado el 27 de septiembre de 2015.
- ↑ a b Scherotter, Michael (1 de octubre de 2015). «Small Basic 1.2 Released with Kinect Support and Bug Fixes». Small Basic. MSDN Blogs (en inglés). Microsoft. Consultado el 2 de octubre de 2015.
- ↑ «Announcing Small Basic Online 1.0 – Public Preview» (en inglés). 20 de febrero de 2019.
- ↑ «TechNet Wiki» (en inglés). 17 de enero de 2024.
- ↑ «Small Basic». smallbasic-publicwebsite.azurewebsites.net (en inglés). Consultado el 27 de junio de 2025.
- ↑ «System Requirements Kinect for Small Basic». ininet.org (en inglés).
- ↑ Protalinski, Emil (17 de noviembre de 2008). «Yet another programming language from Microsoft: Small Basic». Ars Technica (en inglés estadounidense).