programacion-estructura-de-un-programa

Estructura de un programa

Comenzamos a hablar de la programación mediante lenguajes de programación de alto nivel (¡bieeeen!🎉) Para empezar, lo primero que tenemos que hablar es de la estructura de un programa.

Con estructura de un programa me refiero a la forma en que el código está organizado y estructurado. Es la manera en que dividimos nuestro código en partes, y en cómo se relacionan e interactúan entre ellas para llevar a cabo una tarea específica.

Una estructura de programa bien definida hace que el código sea fácil de leer, entender y mantener. Además, una buena estructura de programa también hace que el código sea más fácil de escribir, depurar y mejorar su rendimiento (lo que se traduce en perricas perricas 💸).

Ejemplos de código

La mejor forma de ver qué es eso de la estructura de un programa metiéndonos en harina, y poner un programa de “Hola Mundo” en distintos lenguajes de programación

Un “Hola mundo” es un programa que simplemente muestra el mensaje “Hola mundo” por consola. Tradicionalmente es el programa que se emplea de ejemplo para enseñar un lenguaje de programación por ser sencillo y básico.

Bien, ¡vamos a ello!.

Así luce un programa “Hola mundo” en C++

#include <iostream>

int main() {
    std::cout << "Hola, mundo!" << std::endl;
    return 0;
}

Mientras que en C# podríamos hacerlo así:

using System;

class Program {
    static void Main() {
        Console.WriteLine("Hola, mundo!");
    }
}

En JavaScript sería simplemente:

console.log("Hola, mundo!");

Finalmente en Python sería:

print("Hola, mundo!")

Similitudes y diferencias

Empecemos con lo más obvio. Un programa en un lenguaje de programación de alto nivel estará constituido por líneas de texto, que es lo que llamamos código.

Estas líneas son compiladas o interpretadas por el ordenador para realizar las acciones que queremos.

Hasta en un ejemplo tan sencillo, ya vemos que tienen muchas cosas en común. Por ejemplo,

  • Los programas se componen de líneas (o sentencias)
  • Las sentencias se pueden agrupar en funciones o bloques
  • El lenguaje proporciona ciertas funcionalidades ya definidas (en nuestro ejemplo, mostrar un texto por consola de comando)

Sin embargo, también hay diferencias evidentes. Las líneas son diferentes, las palabras son diferentes. En general el mismo programa, en distintos lenguajes, tiene diferente forma.

Tampoco algo que deba parecer muy extraño. Al final, es como si hablas castellano, francés, o inglés. Lo que quieres decir es lo mismo, pero las palabras y frases que usas sin diferentes.

Además, como también pasa en los idiomas, algunos lenguajes son más concisos, y otros más “largos”. Es decir, algunos lenguajes necesitan más palabras que otros para expresar lo mismo.

Así que no os dejéis abrumar por las diferencias de sintaxis. Lo importante es que, más o menos, todos los lenguajes funcionan igual. Yo no sé como se dice “tengo una bicicleta amarilla” en chino. Pero casi seguro que tienen el concepto “tener”, “bicicleta” y “amarillo”.

Pues en los lenguajes de programación parecido. Solo en raras ocasiones, y aspectos muy complejos de los lenguajes, encontramos realmente diferencias. Que, por cierto, es lo más interesante de comparar, y que veremos en este curso 😉.

Por supuesto es sólo un ejemplo muy sencillo, para una primera toma de contacto. En un programa “de verdad”, la cantidad de líneas puede llegar a enorme ¡hasta millones de líneas!

Lógicamente, mantener la estructura de tu programa limpia y fácil de mantener va a ser uno de los puntos más importantes a medida que tu programa crezca.