Iniciación a la Programación (I). Algoritmos

Iniciación a la Programación (I). Algoritmos

Conceptos básicos de algoritmos de Programación

A la hora de crear un programa, no podemos ir directamente a nuestro entorno de programación. Lo primero que tenemos que hacer es Algoritmo de programación (llamado también notas de programador), esto consiste en hacer una estructura que consiste en lo siguiente:

  1. Idea global de las funciones del programa.
  2. Replantear la realización de funciones o procesos del programa.
  3. Escribir el código del programa en lenguaje normal como nosotros hablamos, (ejemplo: "Inicio aplicación" por "Begin" usado en C).
  4. Pasar a código maquina, para ello usaremos comandos y ordenes en lenguaje que vamos hacer el programa.
  5. Depuración del algoritmo mediante el código maquina insertado, si hay modificaciones o no realiza bien las funciones que hemos indicado, tendremos que volver al punto 3 y escribir esa función o proceso con los cambios realizados en el lenguaje maquina.
  6. Análisis del programa y ver su rendimiento.

Una vez estructurado esto no es complicado realizar una aplicación en un lenguaje, e incluso pasarlo a otro lenguaje por que solo empezamos desde el paso 4, lo cual a las compañías les muy ventajoso realizar versiones para varias plataformas, como pasa con los video juegos, sale para todas las consolas e incluso para PC.

Arriba

Descripción de varios formas de expresión

Antes de escribir el código en nuestro idioma hay tener varios conceptos, siempre buscar la definición mas acertada a la expresión que se utiliza en código maquina y tener conocimientos de la estructuración que usa el lenguaje de programación que vamos a usar. Esto es unos de los problemas mas habituales en los programadores inexpertos o los programadores que usan varios lenguajes de programación.

A continuación expongo algunos ejemplos de como debe de realizarse en un algoritmo:

Expresión en Algoritmo Lenguaje máquina (usaremos por ejemplo Basic)
Iniciar aplicación Begin
Finalizar aplicación End Begin
Si ... es igual a ...
   y si... es igual a ...
Estructura If... Then con subcondiciones Else y Elseif
Desde que ... sea hasta que sea... salto... Estructura For ... To ... Step
Cuando... sea verdad Estructura While ... EndWhile 
Incluir Dll Include
Escribir frase Text frase
Leer texto Input texto
Retardo X (X segundos de retardo) Delay X
Presionar tecla Keycode
Llamar proceso Call proceso

Tras haber visto estos ejemplos de expresiones en algoritmo y su significado en el lenguaje a tratar, (en este ejemplo he usado Basic, por que todos los lenguajes parten de la estructura de Basic y así se puede aplicara a varios lenguajes). Esto no tiene por que ser de esta manera simplemente tenemos que entender lo que significa en expresión en algoritmo y su variable en código maquina, generalmente se sus en los lenguajes de programación se usa el Ingles por lo cual nosotros usaremos las expresiones de algoritmo en español, para que sea mas fácil de entender y no solo por nosotros mismo, ya que si trabajas para una empresa o grupo de programación, el supervisor de código (generalmente el director del proyecto) tiene que entender lo perfectamente, sino no llegas al próximo telediario en esa empresa o grupo de programación.

Arriba

Ejemplos básicos

Lo mejor de tutoría son los ejemplos, para ello expondré un ejemplo:

Algoritmo

Iniciar aplicacion
    Escribir " Hola Mundo"
Finalizar aplicacion

Basic

Begin
    Text 0,0,"Hola Mundo"
End Begin

El programa realiza una función muy básica el cual se inicia la aplicación y después escribe en pantalla Hola Mundo, las comilla son identificadores de texto que no forma parte del código, sino lo que se visualiza en pantalla.

Algoritmo

Iniciar aplicacion 
    Escribir " Hola Mundo"
    Retardo 20
Finalizar aplicacion

Basic

Begin
    Text 0,0,"Hola Mundo"
    Delay 20
End Begin

Este programa es igual que el anterior pero que muestra el mensaje de Hola Mundo durante 20 segundos después finaliza la aplicación, en la anterior mostraba el mensaje y finalizaba la aplicación inmediatamente.

Algoritmo

Iniciar aplicacion
    Escribir "Hola Mundo"
    Si Presionar tecla = Escape
        Finalizar aplicacion
    Fin Si
Finalizar aplicacion

Basic

Begin
    Text 0,0,"Hola Mundo"
    If Keycode = Esc Then
        End
    End IF
End Begin

Este programas es un poco mas avanzado, este muestra el mensaje en pantalla, hasta que pulsamos Escape.

Arriba

Conceptos avanzados

Una vez entendido esto, vamos a poner las cosas un poco mas avanzados, como manejo del sistema en cuestión, si programamos en PC, tenemos que conocer los componentes instalados y sus funciones y el sistema operativo que vamos a usar, en cambio si vamos programar para terminales móviles (como Teléfonos Móviles, PDA's, PowerPC, etc...), en este caso tenemos que ver las limitaciones del terminal y la versión del sistema operativo, ya que cada modelo de terminal no es igual que de su misma rama, por ejemplo si queremos programar un teléfono móvil el Nokia 3650, no es lo mismo que programar el Nokia 9200. Esto es por que el terminal en cuestión siendo del mismo fabricantes utiliza sistemas operativos de diferentes versiones. Al igual que ocurre en el mismo fabricante, sucede entre otros. Si quieres hacer un programa estándar tienes que diseñarlo para tal y programarlo en JAVA, es un sistema que la mayoría de los teléfonos móvil actuales del mercado lo soportan (léase, especificaciones del teléfono).

Arriba

Ejemplo avanzado

Unas estudiado el soporte de cada componente de la plataforma a programar, vamos a aplicarla a la practica.

Si queremos hacer un programa en C que responde a los eventos producidos por el ratón ( el Ratón es un periférico, no es componente obligatorio en un PC, aun que con los sistemas operativos actuales es prescindidle), veamos este ejemplo:

Algoritmo

Iniciar aplicacion
    Incluir Dll "Mouse.dll"

    Bucle infinito
        Si Presionas tecla = Escape
            Salir aplicacion
        Fin Si

        %variable = Raton coordenadas X + Raton coordenadas Y

        Borrar pantalla

        Escribir %variable
    Fin Bucle infinito

Finalizar aplicacion

Basic

Begin
    Include "Mouse.dll"

    Do 
        If Keycode = Esc Then
            End
        End IF

        %variable = MouseX + "," + MouseY

        CLS

        text 0,0, %variable
    Loop

End Begin

En este ejemplo hemos introducido el manejo de variables, que un bloque de la memoria del sistema para guardar un dato en concreto, para después usarlo. La forma de expresar una variable y su tipos de datos varia según el lenguaje de programación. También hemos introducido una Dll, un subprograma creado para ese lenguaje de programación, para el manejo de periférico. Creamos también un bucle infinito, es decir todo lo que esta dentro del bucle se va ejecutar continuamente hasta la finalización de programa o que finalice el bucle. En este caso el Bucle finaliza al pulsar Escape, pero también finaliza el programa no hay mas código que ejecutar. En la variable hemos guardado las coordenadas del ratón que se expresa con X e Y, X son los puntos de la pantalla en Horizontal e Y son los puntos de la pantalla en Vertical, esto también se le llama API, generalmente usadas en Windows, pero ya se usa en mas sistemas por su sencillez. Y para finalizar usamos comandos para borrar la pantalla y después mostramos el contenido de la variable que tenemos guardada.

Arriba

Conclusiones

Como hemos aprendido, en este tutorial básico de algoritmos de programación, a la hora de crear un programa tenemos que tener en cuenta que Plataforma vamos a usar el programa, la versión del sistema operativo y las limitaciones de la maquina. Hemos introducido un poco en las variable, Aun que no se estaba hablando de métodos ni de estructuras de programación, hemos conducido un poco para así el lector va cogiendo hilo sobre métodos de programación.

En conclusión, para programar uno tiene que hacer lo con nuestro lenguaje y después pasarlo a código. Se puede hacer el proyecto directamente sobre el código, lo cual lo ralentizaría y además puede agobiar al programador de tener tanta información e ideas del proyecto en su cabeza, esto sucede a la mayoría de los programadores autodidactas. Al aprender por si solos un lenguaje de programación. Aun que parezca una tontería no lo es, tu piensa si es lo mismo, escribes el algoritmo en papel y después lo pasas a código maquina en el PC, esto tiene sus ventajas. No estas delante del PC muchas horas seguidas y facilita el celebro a pensar ya que si lo preparas para hacer algoritmos, las ideas te fluyen con mas intensidad. Ya que si estas escribiendo en código maquina, generalmente pruebas lo que has echo ( esto lo suelen hacer los principiantes y solo se recomienda para aprender los conceptos básicos de ese lenguaje) y esto hace que el celebro pierda su hilo de ideas y tendrías que volverlo a preparar. Esto puede bloquear la mente del programador y al final suelen dejar el proyecto o no salen los resultados esperados.

Espero que con este tutotial de algoritmos de programación aprendáis a programar en todos los lenguaje que pongáis empeño en aprenderlo.

Arriba

Autor: Adán Camacho
Lanthi

Si has encontrado algo incorrecto o con lo que no estás de acuerdo puedes ponerte en contacto con el autor o con Todo Symbian. Tu contribución será bienvenida.

Opina en el foro sobre este reportaje.

¿Te ha sido de utilidad? Vota por Todo Symbian en GSMspain TOPSites, tan sólo te tomará un minuto.





Este artículo proviene de Todo Symbian. El Sitio de los SmartPhones.
http://www.todosymbian.com

La dirección de esta noticia es:
http://www.todosymbian.com/modules.php?name=Sections&op=viewarticle&artid=31