Con las Fiestas Patrias ya quedando atrás, y luego de una tonelada algunos tutoriales de cocina que les dejamos en estos días, volvemos un poco más a la normalidad en Como Lo Hago, y que mejor que trayéndoles la segunda parte de esta saga de tutoriales que hemos estado preparando para aquellos que quieren adentrarse en el mundo de la programación.
Bueno sin más preambulo les digo, que como siempre, todo el detalle está después del salto.
Nota: Si por alguna razón se perdieron la primera parte de esta saga, pueden leerla en este enlace.
Tenemos harto que aprender hoy, y un recuento de lo pasado sería solo acumular líneas, así que vamos, manos a la obra:
Tal como lo prometimos en el tutorial anterior, hoy veremos los siguientes temas:
¿Listos?, ¿Fueron a buscar bebida?, yo no he ido, así que espérenme -> !.
Quizás para gente más experimentada en el tema de la programación, pueda parecer algo repentino entrar a esto tan luego, pero hay una razón de fondo que es empezar a relacionarnos con el concepto de las variables de cierta forma.
Pero bueno, ¿Qué son las áreas de memoria?. Para contestar esta pregunta, nos haremos otra, ¿Cómo almacena la información una máquina/equipo/computador?.
Básicamente lo hace de 2 formas, o mediante el uso de 2 tipos de memoria: la volátil y la no volátil.
La memoria volátil es toda aquella que una vez que apagamos el computador se vacía (Ej: Memoria RAM). Tiene la ventaja de ser de mayor acceso (lectura/escritura) y obviamente la desventaja de que su almacenamiento no es “permanente”.
Por su lado la memoria no volátil es justamente lo contrario a la anterior, ya que una vez que almacenamos información ahí, quedará hasta que decidamos borrarla o “alguien” lo decida por nosotros. Ejemplos de memoria no volátil son los almacenamientos magnéticos (discos duros) o los ópticos (CD, DVD, etc).
En la programación se utilizan ambos tipos de memoria. Por un lado se utiliza la memoria volátil para el trabajo con variables (explicaremos eso en detalle) y por otro lado la memoria no volátil cuando estamos trabajando con archivos o en otras situaciones que iremos viendo a medida que ocurran.
En una representación gráfica, la memoria volátil que utiliza la programación (RAM), sería algo como esto, guardando las proporciones:
Cada cuadradito representa un área de memoria, el cual posee una dirección expresada en valores hexadecimales (algo por ejemplo como FA2246) la cual se llama dirección de memoria, y es utilizada cuando se quiere acceder a los datos almacenados en ese “cuadradito”.
¿Se acuerdan esa vez que les dijimos que explicaríamos las variables en detalle?, que tiempos aquellos ¿no?, bueno el momento es ahora.
Esta definición no intenta ser técnica ni mucho menos. Solo pretendemos que el concepto quede claro para que lo intentamos lograr.
Una variable es un “enlace contenedor” de y a un dato. ¿Por qué enlace contenedor?, porque una variable esta relacionada a una dirección de memoria, por ende enlace, y contiene un valor correspondiente a un dato que podemos recibir o tomar de otro lado (usuario, otra variable, el resultado de una operación, etc), ergo contenedor. Esta definición se irá haciendo más clara a medida que vayamos avanzando.
Las variables tienen ciertas características, como son:
Nombre: Corresponde al identificador de la variable. Los nombres de variables dentro de un programa deben ser únicos, no empezar con un número, no contener símbolos y respetar las palabras reservadas dentro de un lenguaje de programación (Por ej: En Java, la palabra new es reservada, por lo que no se puede nombrar una variable así).
Tipo: Corresponde al tipo de datos que podrán almacenarse en la variable. Si bien en lenguajes como PHP no es necesario definir el tipo, la mayoría de los otros lenguajes lo piden. Los tipos más comunes son:
Además debemos tener presente que las variables pueden cambiar su valor a lo largo del programa (a no ser que sean definidas como constantes, ya veremos eso más adelante) y existen observaciones sobre las operaciones que ejecutamos sobre ellas. Estos puntos los detallaremos más adelante.
Dejando esa definición un poco más clara, volvemos al tema de las áreas de memoria.
Cuando creamos una variable, o bien la definimos, el equipo le asigna automáticamente un área de memoria en la cual almacenará su valor. En caso de sobrepasar el área asignada, se le asignará una nueva área de memoria, y así sucesivamente.
Esta sección de las áreas de memoria irá quedando cada vez más clara según vayamos avanzando.
El Pseudo-Código, como su nombre lo indica, es una especie de “lenguaje de programación” utilizado para introducir a los futuros programadores a la estructura de la realización de programas.
En él, se utilizan todos los recursos de un lenguaje de programación normal, a pesar de que los nombres y conceptos puedan variar dependiendo de quien lo enseñe, y se busca principalmente practicar un poco la lógica que posteriormente debemos implementar.
Lo principal que se debe entender, es que a pesar de establecer algunas reglas sobre como se operará con el pseudo-código, los únicos errores que se pueden cometer son de lógica y no como expresamos las distintas funcionalidades del programa, así que hay que irse sintiendo lo suficientemente libres para experimentar.
Antes de entrar de lleno a este tema, es bueno detenernos y explicar un poco el tema de los paradigmas de programación.
En la programación existen una serie de paradigmas que se refieren principalmente al enfoque que le daremos a un problema para solucionarlo o bien “la forma en que veremos las cosas”. Los paradigmas más comunes son:
Para las primeras etapas de estas guías nos enfocaremos en el paradigma estructurado. A medida que vayamos avanzando nos interiorizaremos más en esto.
Volviendo al tema del Pseudo-código, y habiendo establecido el punto de los paradigmas, veamos el formato clásico y básico de un programa:
Inicio
Definición/declaración de variables
Cuerpo del programa
Fin
A medida que vayamos haciendo programas más complejos veremos como este formato se va a ampliando. Una explicación de las partes:
Cumpliendo esos pasos básicos, podemos empezar a hacer nuestros primeros programas. Así que a tomar una hoja de papel, un lápiz y una goma, porque de seguro deberemos borrar más de alguna cosa por ahí.
Para hacer nuestro “bautizo oficial” en el mundo de la programación, partiremos por realizar el ejercicio más clásico que aparece en todos los libros de programación de aquí a la eternidad, el famoso “Hola mundo”.
En este programa lo que haremos será simplemente mostrar un mensaje en pantalla que diga “Hola Mundo”. El código a continuación, y los comentarios van en negritas, cursiva y entremedio de /* y */.
Ejercicio 1: Hola Mundo
Inicio /* Establecemos el inicio del programa */ Principal() /* Definimos la función "Principal" que es donde irá el cuerpo del programa. Ya adentraremos el tema de las funciones */ mostrar "Hola Mundo"; /* Utilizamos la sentencia "mostrar" para enviar un mensaje que se despliegue en pantalla y entre comillas la frase que mostraremos, en este caso "Hola Mundo". Luego de la sentencia ponemos un punto y coma para indicar el fin de esta, algo que utilizaremos mucho cuando estemos programando en algún lenguaje, ya que eso le indica al entorno de programación que es el fin de la sentencia */ Fin /* Finalizamos el programa */
Y así de simple. Hemos hecho nuestro primer programa enviando un mensaje “Hola Mundo” que se mostrará en la pantalla. Para este programa, como solo mostramos un mensaje, podrán ver que no hicimos uso de variables, por eso nos saltamos la parte de la definición de ellas. En posteriores ejercicios haremos uso de eso.
Por hoy ya hemos visto bastante, así que es momento de asimilar la información y descansar un poco. Para recapitular, hoy hemos aprendido sobre:
¿Bastante, no?, pues bueno, en la próxima guía nos enfocaremos principalmente en más sobre Pseudo-código:
En una próxima edición, a la misma batihora y en el mismo baticanal.
Por ahora es mi deber recordar que como siempre, este tutorial ha sido desarrollado, probado y documentado por el equipo de Como Lo Hago por lo que cuenta con nuestro infalible y a veces programable Sello de garantía. Cualquier comentario, problema o duda que puedan tener, siéntanse libre de dejarnos unas líneas en el área habilitada a continuación.
Esperamos que este tutorial haya sido de utilidad para Uds.
Muchas gracias por leer y será hasta una próxima oportunidad.
5:31:58 pm
Estoy cursando la carrera de sistema y este tutorial me sirve para reafirmar algunas cosas, les comento que hay algunos entornos para escribir en la pseudocodigo, si le interesa a alguien, hagan un comentario. Los felicito!!.
10:22:27 pm
buenas noches me dejan sin palabras que buena pedagogia tiene para enseñar, q tanvacano a lo bn …..
9:29:46 pm
Exelente muchachos, me ha interesado el mundo de la programaciòn y bueno quize no comenzar con las manos vacìas, he llegado a leer el primer tutorial y ahora el segundo y los dos estàn muy claros, de verdad muchas gracias, tengo 29 años y estaba pensando en volver a estudiar otra carrera y como he estado ligado a las tontas computadoras de hace mucho tiempo, me decidì por programaciòn y veo que lo que ustedes hacen me esta ayudando mucho.
“GRACIAS MUCHACHOS” ;
7:34:16 pm
barbaro tengo 16 y me ancanta la programacion y estaba buscando tutos para programacion y este es el primero q explica de una forma barbara……
good trabajo…
5:38:12 pm
muii buenoo excelente mil graciiasz!!!
7:51:35 pm
[…] Fuente […]
2:54:38 am
No saben cuanto agradesco este tutorial…. en 1mer semestre me raje por que no entendia al profe, pero ustedes explicaron tan claramente que mi mente se abrio por completo……..mis respetos
12:19:38 am
hola estan buenas las guias, espero que esten alistando la 3ra parte gracias equipo de como lo hago.
sigan para lante okey…
11:09:58 pm
man mira pero q utilizo para hacer la primera prueba de hola mundo es algun programa? o algo por el estilo?
12:04:05 am
hola staff clh, en el mejor dia, gracias por la informacion, estoy siguiendo el curso a pie de letra, esta muy educativo, te comento que yo no se nada de computacion, pero quiero aprender, y con su explicacion recivo aprender algo mas.