Estás empezando a dar tus primeros pasos en el mundo de la Programación y no acabas de entender lo que es un Compilador o en qué consiste exactamente el Proceso de Compilación.
Pues bien, ahora que comienzas desde cero, es el momento que establezcas unas bases sólidas sobre las que cimentar todos los conocimientos que te van a permitir convertirte en Programador de Apps para iPhone. Es por ello que te comparto un nuevo contenido dedicado a los fundamentos de las Ciencias de la Computación.
Lenguajes de Programación
Ya te he hablado en otros contenidos de los Lenguajes de Programación, y viste que en esencia, un Lenguaje de Programación es el Idioma con el que nos comunicamos con un ordenador para indicarle las tareas que queremos que realice.
Los Lenguajes de Programación se caracterizan por tener una sintaxis parecida a un Idioma Humano (principalmente en Inglés) junto con unas reglas bien definidas que te permiten dar órdenes a un ordenador en forma de algoritmos.
Lenguajes de Programación de Alto Nivel
En base a lo que te he contado, podemos concluir que un Lenguaje de Programación es un sistema estructurado de comunicación entre los humanos y los ordenadores. Y como este sistema de comunicación se aproxima en gran medida a la forma en que lo hacen los humanos entre sí, diremos que estos Lenguajes de Programación son de Alto Nivel.
Lenguajes de Programación de Bajo Nivel
Hasta aquí todo parece sencillo ¿verdad?, pero hay que tener en cuenta que el lenguaje nativo que realmente entiende un ordenador o cualquier dispositivo electrónico, es el llamado Lenguaje Binario, el cual consiste en cadenas de 0 y 1 agrupadas de diversas formas, las cuales representan las tareas que puede llevar a cabo el ordenador. En este caso diríamos que el Lenguaje Binario es un Lenguaje de Bajo Nivel ya que está más cercano al Hardware de nuestro dispositivo electrónico.
El Compilador
Entonces, ¿Cómo conseguimos que el código que hemos escrito con nuestro Lenguaje de Alto Nivel se transforme en el Lenguaje de Bajo Nivel del dispositivo para el que estamos programando?
Pues bien, aquí es donde entra en juego el Compilador, una de las herramientas que incluye tu Entorno de Desarrollo Integrado, en nuestro caso Xcode, el cual se encargará de procesar el código fuente que escribes con un determinado Lenguaje de Programación, en tu caso Swift, y lo traduce al lenguaje nativo del dispositivo para el que estás programando, de manera que finalmente se ejecute tu App en el iPhone u otro dispositivo.
Si no existieran los Compiladores, tendrías que escribir tu Programa directamente en Lenguaje Binario utilizando únicamente ceros y unos. ¿Te imaginas tener que programar de esa manera? Te puedo asegurar que además de causarte un gran dolor de cabeza, sería prácticamente imposible hacerlo. Es por ello que la invención de los Lenguajes de Programación y los Compiladores supuso uno de los hitos más importantes en la historia de la computación.
El Compilador procesa el Código Fuente que hemos escrito con nuestro Lenguaje de Alto Nivel y lo traduce al Lenguaje de Bajo Nivel del dispositivo para el que estamos programando
Ejemplo práctico
Te propongo ver un ejemplo práctico para ayudarte a entender mejor el funcionamiento de un Compilador. Para ello te voy a compartir el Código Fuente de una Aplicación muy sencilla que ya he utilizado en otras ocasiones, la cual presenta tres botones en la pantalla con el objetivo de mostrar un mensaje distinto dependiendo del botón que pulsemos.
El objetivo ahora no es que entiendas la sintaxis ni el funcionamiento de este Código Fuente. Lo que pretendo es que veas que un Lenguaje de Programación utiliza palabras en inglés o sus abreviaturas, y que se pueden dar instrucciones de manera similar a un idioma humano. A esto me refería antes cuando te he dicho que se trata de un Lenguaje de Programación de Alto Nivel.
Por ejemplo, puedo indicar que quiero un color de fondo rojo con tan solo asignar el valor red en la instrucción adecuada.
En este momento es cuando tu Entorno de Desarrollo Integrado compilará la Aplicación para que puedas ver el resultado final en tu dispositivo. Para ello, en Xcode, basta con seleccionar el dispositivo y pulsar el botón Start.
Tras lo cual tu IDE se encarga procesar el Código Fuente que has escrito y traducirlo al Lenguaje Nativo de tu dispositivo, obteniendo como resultado final la Aplicación que se muestra en pantalla.
Siguiendo el mismo procedimiento, puedes indicar mediante Código el texto que se mostrará cuando se pulse cualquiera de los botones.
Con todo lo que te he contado, espero haber resuelto tus dudas sobre lo que hace un Compilador y la necesidad de los mismos. Si no es así, no dudes en hacerme llegar cualquier comentario con las cuestiones que te hayan surgido, estaré encantado de leerte y contestar tus preguntas.