Gambas/Conceptos básicos de programación

El Ambiente Integrado de Desarrollo
Tema anterior

Conceptos básicos de programación
Índice

Diseño de Aplicaciones con Gambas
Siguiente tema



Tipos de Datos

editar

Los datos son abstracciones del mundo real que son necesarias para la resolución de una tarea y están representadas de forma que puedan ser procesadas por la computadora. Un dato puede ser único elemento o un conjunto de ellos que aporte información sobre el problema.

Si el dato está formado exclusivamente por números, será de tipo numérico. Si está formado por letras será de tipo alfanumérico, ya que puede contener datos numéricos, caracteres especiales y letras. los datos lógicos o “booleanos”, únicamente pueden tomas dos valores: Cierto (True) o Falso (False).

Los datos pueden ser variables y constantes.


Tipo Rango de Valores
Boolean Verdadero o Falso
Byte 0 a 255
Short -32.768 a +32.767
Integer -2.147.483.648 a +2.147.483.647
Long -9.223.372.036.854.775.808 a +9.223.372.036.854.775.807
Single Igual que el tipo float en C
Float Igual que el tipo double en C
Date Fecha y Hora, cada uno almacenado como un entero
String Una cadena de caracteres de longitud variable
Variant Cualquier tipo de dato
Object Referencia anónima a cualquier objeto
Pointer Una dirección de memoria

Variables

editar

Una variable es un dato que se almacena en la memoria de la computadora, del que su valor puede variar a lo largo de la ejecución del programa. Una variable, en general, consta de: un identificador o nombre, que es una cadena de caracteres que sirve para referenciarla, y un valor.

Declaración

editar
  • Sintaxis

[STATIC] {PUBLIC|PRIVATE} Identifier [Static array declaration] AS Datatype [=Expression]

STATIC PUBLIC GridX AS Integer
STATIC PRIVATE bGrid AS Boolean
PUBLIC Name AS String
PRIVATE Control AS Object
PRIVATE Languages AS String[] = [ "fr", "it", "es", "de", "ja" ]
PRIVATE DefaultLanguage AS String = Languages[1]
'Todas las declaraciones DIM debe estar en FUNCTION o SUB antes de cualquier comando ejecutable
DIM fTimeDiff2 AS Float
DIM iTest AS Integer
DIM iK[9] AS Integer 'ik[0] to ik[8]
DIM shX[3,3] AS Short
DIM date1 AS Date
  • Sintaxis

[STATIC] {PUBLIC|PRIVATE} Identifier AS NEW Native Datatype [Array dimensions...]

PUBLIC CONST WORD_MAX AS Integer = 12
PRIVATE Words AS NEW String[WORD_MAX * 2]
PUBLIC Matrix AS NEW Float[3, 3]

Asignación

editar
Destination = Expression
iVal = 1972
Name = "Gambas"
hObject.Property = iVal
cCollection[sKey] = Name 

Constantes

editar

Una Constante es un dato almacenado en la computadora del que su valor se mantiene fijo o constante durante la ejecución del programa. Las constantes pueden representarse:

  1. Indicando su valor (por ejemplo, 3.14, 13033 o "Este texto" son datos constantes de distinto tipo, o
  2. Empleando un identificador o nombre que permita hacer referencia a su valor en el programa. Imagina que asignamos al identificador “pi” el valor constante 3.14159. El identificador es más fácil de recordar que el valor y hace que el programa sea más sencillo de modificar si el valor de la constante variase, ya que bastará con actualizar el valor asignado al identificador.
  • Sintaxis

{PUBLIC|PRIVATE} CONST Identifier AS Datatype = Constant value

'Los tipos de datos de las Constantes pueden ser: Boolean, Integer, Long, Float o String
PUBLIC CONST MAX_FILE AS Integer = 30
PRIVATE CONST DEBUG AS Boolean = TRUE
PRIVATE CONST MAGIC_HEADER AS String = "# Gambas form file"

Operadores

editar

Aritméticos

editar
A = Numero1 + Numero2   'Suma dos números
A =- Numero             'Calcula el signo opuesto de un numero. El cero es el opuesto de él mismo
A = Numero1 – Numero2   'Resta dos números
A = Numero1 * Numero2   'Multiplica dos números
A = Numero1 / Numero2   'Divide dos números. Una división sobre cero causará un error [A Division By Zero (#26) error]
A = Numero ^ Potencia   'Eleva un numero a una potencia
A = Numero1 \ Numero2
A = Number1 DIV Number2 'Calcula el cociente de dos números enteros, truncando el resultado. Una división sobre cero causará un error (#26)
A = Numero1 MOD Numero2 'Calcula el remanente de un cociente de dos números. Una división sobre cero causará un error (#26)

De comparación

editar
Numero1 = Numero2  'Retorna TRUE si dos números son iguales
Numero1 <> Numero2 'Retorna TRUE si dos números son diferentes
Numero1 < Numero2  'Retorna TRUE si Numero1 es estrictamente menor que Numero2
Numero1 > Numero2  'Retorna TRUE si Numero1 es estrictamente mayor que Numero2
Numero1 <= Numero2 'Retorna TRUE si Numero1 es menor o igual que Numero2
Numero1 >= Numero2 'Retorna TRUE si Numero1 es mayor o igual que Numero2
' Si el resultado de una comparación es asignado a una variable entera, entonces el resultado sera -1 (True) o 0 (False) 

De asignación

editar
Variable = Expresión   'Asignación directa
Variable += Expresión  'Asignación con suma. Es sinónimo de Variable = Variable + Expresión
Variable -= Expresión  'Asignación con resta. Es sinónimo de Variable = Variable - Expresión
Variable *= Expresión  'Asignación con multiplicación. Es sinónimo de Variable = Variable * Expresión
Variable /= Expresión  'Asignación con división. Es sinónimo de Variable = Variable / Expresión
Variable \= Expresión  'Asignación con división de enteros. Es sinónimo de Variable = Variable \ Expresión
Variable &= Expresión  'Asignación con concatenación de texto. Es sinónimo de Variable = Variable & Expresión
Variable &/= Expresión 'Asignación con concatenación de ruta. Es sinónimo de Variable = Variable &/ Expresión

Comentar el código

editar

Es una buena práctica agregar comentarios al código que escribes, independientemente si es un programa en Gambas o en cualquier otro lenguaje. En los ejemplos anteriores hacemos uso de los comentarios para proporcionar detalles del significado de los operadores. Todos los comentarios inician con un apostrofe (') y todo lo que se escriba después de él, sera ignorado por el compilador.

'Esta línea es ignorada por el compilador de Gambas
PRINT "Hola Mundo"   'Esta línea imprime Hola Mundo en la consola

Uno de los peores vicios de los programadores es no comentar su código, y después cuando tratan de darle mantenimiento a una sección de código que escribieron unos cuantos meses antes, son incapaces de recordar para que usaron ciertas variables o que función tiene una parte especifica de su código. Ahora imagina que estas trabajando en un proyecto de programación en equipo, donde cada desarrollador se encarga de escribir una parte del código, o una clase que sera usada por alguna otra parte del código. Muchos desarrolladores dicen que sólo los tontos comentan su código, pero creo que es al revés.

El Ambiente Integrado de Desarrollo
Tema anterior

Conceptos básicos de programación
Índice

Diseño de Aplicaciones con Gambas
Siguiente tema