Está en la página 1de 28

QUE ES LINUX?

Linux es un Sistema Operativo cuyo ncleo fue creado en 1991 por


el fins Linus Torvalds. Sin embargo antes y despus, muchsimos
programadores alrededor del mundo han contribuido en el
desarrollo de otros componentes. Algunos de ellos son:
Richard Stallman, de GNU
Los voluntarios de X Window System
Los voluntarios del proyecto KDE
Los voluntarios de proyecto GNOME
Patrick Volkerding de Slackware
Gal Duval de Mandrakelinux
Los voluntarios de Debian
Klaus Knopper de Knoppix

Qu es el Sistema X Window?
Es un conjunto de programas que proveen de interfaces grficas
basadas en ventanas a un Sistema Operativo. En los Sistemas Linux
se usa una implementacin libre de X. Una creencia popular pero
errnea es que Microsoft fue quien invent el entorno de ventanas.
Para aclarar el caso, aqu van algunos hitos histricos importantes:
1973: Xerox desarrolla Alto la primera la primera computadora
personal con interfaz grfica.
1983: Aparece Macintosh, que usaba ventanas.
1984: sale la primera versin del Sistema X Window.
1985: sale la primera versin de Microsoft Windows. Tambin
aparece la primera versin del Sistema X bajo una licencia libre.

Es ms seguro Linux que Microsoft Windows?


La respuesta que daran muchsimos expertos en seguridad
informtica es un "s". Hay diversas razones para argumentar en favor
de la mayor seguridad en Linux. No es un tema menor el hecho de que
los Sistemas Linux usan en su mayora software de cdigo abierto. Eso
trae aparejado dos consecuencias ventajosas:
Es poco probable que alguien se atreva a introducir cdigo malicioso, ya
que quedara expuesto fcilmente.
Miles de expertos alrededor del mundo pueden solucionar una
vulnerabilidad y no solamente los empleados de la nica empresa.
Por otro lado, Linux
es en general mucho menos susceptible a ser infectado por virus. En
Linux frecuentemente se trabaja con cuentas de usuario que poseen
menos privilegios que el administrador del sistema. Esto evita en cierta
medida que los problemas se propaguen a todos los usuarios de una
computadora y/o de una red.

Qu entorno grfico me conviene?


Hay que recordar que en Linux se puede elegir varios entornos grficos, los principales son:
KDE: Es un entorno de escritorio con un aspecto similar al de Windows con muchas
funcionalidades incorporadas. Ideal para PCs que cuentan con un mnimo de 128 Mb de memoria
RAM. Aqu se enumeran algunas caractersticas salientes de KDE:

GNOME: Es la principal alternativa existente a KDE para quienes estn acostumbrados a


Windows. Seguramente GNOME es una buena opcin para quienes prefieren un entorno
menos barroco que KDE, aunque quizs posea a primera vista una interfaz menos familiar
para los usuarios de Windows.

XFce: Este es un entorno de escritorio, bastante ms sencillo que KDE y que GNOME,
pero que es excelente para PCs que no poseen la memoria suficiente como para usar
KDE o GNOME.

FluxBox: Un entorno de ventanas (no posee un escritorio al estilo de los nombrados


anteriormente) austero y elegante a la vez. Usa estrictamente lo necesario. Se necesita
un tiempo de adaptacin para aquellos que emplearon el entorno grfico de Windows.
De todas maneras, si se ha usado DOS, o Windows 3.1 recientemente y se posee una
PC con poca RAM, FluxBox es quizs la mejor opcin.

Qu es una distribucin?

Una distribucin no es otra cosa que el ncleo Linux con un


conjunto de programas seleccionados, con herramientas
especficas de configuracin, empaquetamiento,
documentacin, etc. Algunas son comerciales, mientras que
otras son totalmente gratuitas o de muy bajo costo. Hay
muchsimas distribuciones alrededor del mundo, pero slo
unas pocas son usadas ampliamente. Aqu debajo estn los
principales aspectos de las distribuciones ms importantes
enfocadas en el escritorio, lo que aparece entre corchetes es
el entorno de escritorio predeterminado que usa.

COMANDOS BASICOS BAJO CONSOLA EN GNU/LINUX


pwd
Muestra el nombre del directorio actual/de trabajo.
whoami
Muestra el nombre del usuario actual.
file loquesea
Muestra el tipo de archivo de un archivo loquesea.
ls
Lista el contenido de un directorio (archivos comunes y directorios) 20
ls -a
Lista el contenido de un directorio (todos los archivos y directorios)
ls -A
Lista el contenido de un directorio (casi todos los archivos y directorios, es decir,
omite los .. y .)
ls -la
Lista todo el contenido de un directorio con informacin detallada. Vase El concepto de sistema de archivos en Debian en la pgina 68.
ls -d
Lista todos los directorios del directorio actual.

mkdir loquesea
Crea un directorio nuevo loquesea en el directorio actual.
rmdir loquesea
Borra el directorio loquesea del directorio actual.
cd loquesea
Cambia al directorio loquesea del directorio actual o del directorio que figura en
la variable CDPATH. Vase el comando cd de builtins(7).
cd /
Cambia al directorio raz.
cd
Cambia al directorio personal del usuario actual.

cp loquesea loquefuera
Copia el archivo loquesea en un nuevo archivo loquefuera.
rm loquesea
Borra el archivo loquesea.
mv loquesea loquefuera
Cambia el nombre un archivo existente loquesea en loquefuera.
mv loquesea loquefuera/cualquiera
Mueve el archivo loquesea a una nueva ubicacin con el nombre loquefuera
/cualquiera. El directorio loquefuera debe existir.
chmod 600 loquesea
Hace que el archivo loquesea no pueda ser ledo ni escrito por otros ni ejecutado
por nadie.
chmod 644 loquesea
Hace que el archivo loquesea pueda ser ledo pero no escrito por otros ni
ejecutado
por nadie.
chmod 755 loquesea
Hace que el archivo loquesea pueda ser ledo pero no escrito por otros pero
ejecutado por todos.

QUE ES GAMBAS?
Gambas no es solo un lenguaje de programacin, es tambin un entorno de
programacin visual para desarrollar aplicaciones grficas o de consola. Hace
posible el desarrollo de aplicaciones complicadas muy rpidamente. El programador
disea las ventanas de forma grfica, arrastra objetos desde la caja de herramientas
y escribe el cdigo en BASIC para cada objeto.

ES GAMBAS SOFTWARE LIBRE?


Si. Gambas se distribuye con la licencia GPL GNU (General Public Licence).
Significa que se distribuye con el cdigo fuente y respeta las cuatro libertades
definidas por la Free Software Fundation.

ELEMENTOS DE GAMBAS
Para poder desarrollar y ejecutar programas en Gambas, son necesarios los
siguientes elementos:
Un compilador, que se encargar de transformar el cdigo fuente
y
archivos
que formen parte de un proyecto hecho en gambas, es un
programa ejecutable.

Un interprete capaz de hacer que los programas hechos en Gambas sean


ejecutados por el sistema operativo.

Un entorno de desarrollo que facilite la programacin y diseo de


las interfaces grficas de los programas.

Componentes que aaden funcionalidad al lenguaje. La palabra


componente en Gambas tiene un significado especifico, ya que no alude a
partes genricas, sino a

libreras especificas que le dotan de mas posibilidades.

En la actualidad existen componentes para usar xml, conexiones de red,


opengl, ODBC, distintas bases de datos, escritorios basados en qt, en gtk, etc.

DESCARGAR E INSTALAR GAMBAS


Existen diferentes vas y mtodos para la instalacin de Gambas. En la actualidad
las versiones mas recientes son: Gambas 2.0.0 y Gambas 2.2.1. Por razones de
estabilidad muchos programadores utilizan la versin 2.0.0, colocada en los
repositorios de Debian y Ubuntu (K,X), en espera de la revisin por parte de los
administradores de estos proyectos de la nueva versin 2.2.1 con el fin de
minimizar los Bugs y tratar de aumentar la documentacin y soporte.
Para la instalacin va repositorios:
En Debian: en consola modo superusuario, ubicarse en: root:/etc/apt#, y
luego tipear:
nano source.list
Dentro de este archivo colocar la siguientes lineas:
deb http://apt.linex.org/linex/gambas/stable/ ./
deb http://apt.linex.org/linex/gtk2.10/ ./
Guardar los cambios y actualizar los repositorios de la siguiente manera.
Aptget update
aptget install gambas2

DECLARACIN DE VARIABLES
Hay dos lugares donde se pueden declarar las variables, dependiendo del mbito en el
que se vayan a usar. Si se declaran dentro de una subrutina o funcin, estn
disponibles para ser usadas solo dentro de esa subrutina o funcin. Si se declara al
principio del archivo de cdigo (un modulo o clase) estn disponibles para
todo el cdigo de ese archivo, en todas sus subrutinas.
Sintaxis de declaracin de una variable:
DIM nombre_variable as tipo_variable
tipo_variable: hace referencia al tipo de dato de la variable: numero
entero, cadena, decimal, boleano, etc.
Las variables que se declaren en un subrutina o funcin solo se usaran dentro de
ellas.
Cuando terminen se destruirn. Esto permite utilizar el mismo nombre de variable
dentro de distintas subrutinas y su valor nunca se confundir o mezclar.

Para declarar una variable al principio del Modulo o Clase se usa la sintaxis:
[STATIC] (PUBLIC | PRIVATE) nombre_variable AS tipo_variable
Si Define PRIVATE: estar disponible dentro de todo el fichero, pero no ser
accesible desde otros ficheros del mismo proyecto.
Si Define PUBLIC: se podr acceder a la variable desde un fichero del proyecto
distinto a donde se declar.
Si define STATIC: Se usa en los archivos de clase, no en los Mdulos. Sirve para
definir un comportamiento especial en todos los objetos de una misma clase.

TIPOS DE DATOS
Los tipos de datos soportados por Gambas, son los siguientes:
Boolean: Solo acepta valores True o False.

Byte: Representa un numero entero positivo entre 0 y 255.

Short: Representa un numero entero con valores posibles entre 32.768 y +32.767

Integer: Representa un numero entero con valores posibles entre 2.147.483.648 y


+2.147.483.647.

Long: Representa un numero entero con valores posibles entre:

9.223.372.036.854.775.808 y +9.223.372.036.854.775.807

Single: Representa un numero real, con decimales, con valors posibles


entre 1.7014118E+38 y +1,7014118E+38.

Float: Representa un numero real, con decimales, con valores posibles


entre 8,98846567431105E+307 y + 8,98846567431105E+307.

Date: Almacena valores de fecha y hora. Internamente la fecha y la hora


se almacenan en formato UTC.

String: Se usa para almacenar una cadena de texto.

Variant: Significa cualquier tipo de dato, es decir, se puede almacenar integer, single,
boolean, etc.

Object: representa cualquier objeto creado en Gambas.

CONVERSIN DE TIPOS DE DATOS


Se realizan mediante unas funciones que estn Gambas.
Cbool(expresin): Convierte la expresin a un valor booleano.
Cshort(expresin), Cint(expresin) o Cinteger(expresin), y Clong(expresin):
convierte respectivamente, la expresin en un numero de tipo Short, Integer y Long.
Cdate(expresin): convierte la expresin en una fecha. Debe tener cuidado porque
solo admite formato de fecha en ingles mes/dia/ao hora:minutos:segundos. Ejemplo:
Cdate(09/06/1972) 01:45:12), donde 06 sera el dia 06 y no el mes 06.
CStr (expresin): Convierte la expresin en una cadena de texto sin tener en cuenta la
configuracin local.
Str$(expresin): convierte la expresin en una cadena de texto, teniendo en cuenta la
configuracin local. ejemplo. Str$(CDate(09/06/1972 01:45:12)) devuelve: 06/09/1972
01:45:12
Val(expresin): Convierte una cadena de texto en un tipo Boolean, Date o alguno de
los tipos numricos, dependiendo del contenido de la expresin.

OPERADORES MATEMTICOS
Adicional a los operadores matemticos ya conocidos en casi todos
los lenguajes de programacin, citamos los siguientes:
^ es el operador de potencia. Ejemplo: 4^3=64
Para la divisin hay dos operadores adicionales, DIV y MOD, que
revuelven respectivamente, la parte entera del resultado de la divisin y
el resto. Ejemplo:
9DIV2=4,9 y 9 MOD 4 = 1P.
Existen tambin funciones matemticas para realizar clculos mas complejos:

Abs(numero): calcula el valor absoluto de un numero.

Dec(numero): decrementa un numero.

Frac(numero): devuelve la parte decimal de un numero.

Inc(numero): Incrementa un numero.

Int(numero): devuelve la parte entera de un numero.

Max(numero1, numero2, ...): devuelve el numero mayor.

Min(numero1, numero2, ...): devuelve el numero menor.

Round(numero,decimales): redondea un numero con los decimales deseados.

Rnd([mnimo],[mximo]): devuelve un numero aleatorio comprendido entre


mnimo y mximo.

MANEJO DE CADENAS
Existe un manejador de cadenas de texto que permite concatenar directamente, se
trata del smbolo &. Ejemplo:
Dim nombre AS String
Dim Apellidos AS String
Nombre=Manuel
Apellidos=Alvarez Gomez
PRINT Apellidos & , & Nombre
La salida en consola sera:
Alvarez Gomez, Manuel

CONTROL DE FLUJO
If ... Then ... Else: Es la sentencia mas comn para tomar una decisin:
Sintaxis Bsica:
IF expresin THEN
....
ENDIF
Si se ejecuta una sola instruccin: IF expresin THEN sentencia_a_ejecutar.
Ejemplo:
DIM edad AS Integer
.....
IF Edad > 20 THEN
PRINT Adulto
ENDIF
IF edad > 20 THEN PRINT Adulto
IF Edad < 2 AND edad > 0 THEN
PRINT Bebe
ELSE IF Edad < 12 THEN
PRINT Nio
ELSE IF edad < 18 THEN
PRINT Joven
ELSE
PRINT Adulto
ENDIF

Control SELECT CASE.


Esta sentencia produce un cdigo limpio y cmodo de leer. Su sintaxis:
SELECT [CASE] Expresin
[CASE expresin [TO expresin #2] [, ...]
... ]
[CASE expresin [TO expresin #2] [, ...]
... ]
[ {CASE ELSE | DEFAULT}
... }
END SELECT
Ejemplo:
DIM edad AS Integer
...
SELECT CASE edad
CASE 0 TO 2
PRINT Bebe
CASE 2 TO 12
PRINT Nio
CASE 18
PRINT Bingo, ya puedes votar
CASE 13 TO 17
PRINT Joven
CASE ELSE
PRINT Adulto
END SELECT

Control FOR
Generalmente usado cuando se necesita contar o realizar una accin
un numero determinado de veces.
Sintaxis:
FOR variable = Expresin TO Expresin [ STEP expresin ]
...
NEXT
Ejemplo:
DIM n AS Integer
FOR n = 10 TO 1 STEP 1
PRINT n
NEXT

Control WHILE y REPEAT


Cuando se requiere repetir la ejecucin de una porcin del cdigo en varias
ocasiones dependiendo de una condicin, tenemos dos instrucciones distintas:
WHILE y REPEAT.
La sintaxis de ambas es:
WHILE Condicin
... instrucciones
WEND
y
REPEAT
... instrucciones
UNTIL Condicin

GALERA DE CONTROLES
Label: Es una etiqueta simple que contiene una linea de texto de poca longitud. Su
funcin es mostrar un texto en una posicin dentro de un formulario.
TextLabel: Similar al Label, pero puede mostrar texto formateado con HTML.
Ejemplo:
TextLabel1.Text=<b>Texto con HTML</b><br>Dentro de una<i>etiqueta.
TextBox: Es una caja de texto, de una sola linea, en la cual el usuario puede modificar,
copiar, cortar o borrar texto.
TextArea: Se trata de una caja de texto que es capaz de contener mltiples lineas.
PictureBox: Tiene la funcin de mostrar una imagen. Responde a eventos del ratn,
por lo que puede ser empleado como como botn personalizado.
ListBox: Es una lista simple. Se aaden o eliminan elementos que se
representan como una linea de texto cada uno. La propiedad Mode determina si el
usuario puede no puede seleccionar ninguno, solo uno o varios.
ListView: Similar al ListBox. Puede representar un icono junto con cada elemento de la
lista, y cada uno de ellos est identificado por una clave nica de texto,
que nos permite hacer bsquedas de los elementos por su cable.
ComboBox: Es una lista desplegable. El usuario solo ve el elemento seleccionado en
cada momento y puede desplegar la lista para seleccionar uno u otro.

DILOGOS (Mensajes)
La clase Message se encarga de mostrar una ventana modal al usuario,
en la cual podemos definir un texto, que ser una informacin o una
pregunta, y una serie de botones para elegir una opcin.
Message.Info: se utiliza para mostrar un mensaje meramente informativo. Solo permite
definir un botn que normalmente tendr un texto como OK o Aceptar.
Ejemplo:
Messaje.info (esto es un mensaje)
Message.Delete: se utiliza para indicar que se va a proceder a eliminar algo (archivos,
registros de una tabla, etc,), y se solicita al usuario su confirmacin.
Message.Error: Se emplea para indicar un mensaje de error.
Message.Question: es una pregunta al usuario, generalmente para confirmar
una accin o una opcin de configuracin.
Message.Warning: advierte al usuario de que la accin que va a realizar supone un
cierto peligro, por ejemplo, perdida de datos de una tabla que podran ser tiles aun.

MENSAJES PERSONALIZADOS
Los mtodos de la clase Message devuelven un numero entero que denota el
botn que el usuario puls. En este sentido, podemos personalizar los
mensajes, con la cantidad de botones que queramos y el mensaje que
deseemos.
Ejemplo:
Dim Respuesta as Integer
Respuesta=Message.Warning(Desea Cerrar el Programa?, Si, No,
De repente)
IF Respuesta=1 THEN
Message.Info(Gracias por usar el Programa)
Me.close
ELSE
Message.Info(A ver si te decides...)
ENDIF

También podría gustarte