1. EXPLORACIÓN Lenguajes de programación Básicamente, un lenguaje de programación es un grupo de palabras y reglas para establecer comunicación con la computadora e indicarle claramente qué debe hacer. El lenguaje permite controlar las tareas elementales que la computadora es capaz de efectuar (mover datos, realizar operaciones aritméticas, hacer operaciones lógicas y comparaciones) y que, enlazadas adecuadamente, pueden ejecutar el procedimiento de solución a un problema. Así, programar consiste en lograr que la computadora funcione como queremos, aplicando las facilidades de un lenguaje. Las virtudes de un programador 1. Ser capaz de analizar un problema hasta comprenderlo completamente. 2. Ser capaz de diseñar una estrategia que describa los pasos requeridos para obtener la solución del problema. 3. Conocer el funcionamiento, capacidades y limitaciones de las computadoras. 4. Dominar un lenguaje de programación en particular, y además conocer algún lenguaje adecuado a la solución del problema. 5. Ser capaz de evitar el perfeccionismo y equilibrar entre lo ideal y lo real. Fuente: Manual de Construcción de Programas, Vasconcelos, J. ESTRUCTURACIÓN ¿Qué es un lenguaje de programación? Los programas de computadora están en todas partes: desde máquinas de café y reproductores MP3, satélites, robots, teléfonos celulares, relojes, etc. Pero así como la astronomía es más que usar telescopios, la ciencia de la computación es más que usar computadoras, es programarlas para decirles exactamente qué deben hacer. Un lenguaje de programación es un sistema estructurado bajo un lenguaje formal (código) y diseñado principalmente para que las máquinas y computadoras puedan entender los algoritmos computacionales escritos por programadores. Los computadores solo entienden el lenguaje binario (cadenas interminables de números 1 y 0), para el hombre es complejo programar computadores mediante el sistema binario y es por eso que se crearon los lenguajes de programación, el lenguaje de programación se encarga entonces de convertir las instrucciones de los programadores de un lenguaje formal a unos (1) y ceros (0) para que las computadoras y las máquinas las puedan entender e interpretar. Clasificación de los lenguajes Los lenguajes se suelen clasificar principalmente por su nivel de cercanía e interacción con el hardware de la computadora Clasificación por el nivel Esta clasificación divide a los lenguajes de programación en tres niveles los cuales son bajo nivel, medio nivel y alto nivel. • lenguajes de bajo nivel: Es aquel en el que sus instrucciones ejercen un control directo sobre el hardware y están condicionados por la estructura física de las computadoras que lo soportan. El uso de la palabra bajo no implica que el lenguaje sea menos potente que un lenguaje de alto nivel, sino que se refiere a la reducida utilización de un lenguaje entendible por el ser humano y más enfocado a el hardware o máquina. Por ejemplo, este tipo de lenguajes se utiliza para programar tareas críticas de los sistemas operativos, como los controladores de dispositivos (mouse, teclados, bluetooth entre otros). Ejemplo de programa en lenguaje de maquina (ensamblador) • lenguajes de alto nivel: Tienen como objetivo facilitar el trabajo del programador, ya que utilizan unas instrucciones más fáciles de entender. Además, el lenguaje de alto nivel permite escribir códigos mediante idiomas que conocemos (español, inglés, etc.) y luego, para ser ejecutados, se traduce al lenguaje de máquina mediante traductores o compiladores. Traductor o interprete Traducen programas escritos en un lenguaje de programación al lenguaje máquina de la computadora y a medida que va siendo traducida, se ejecuta. Compilador Permite traducir todo un programa de una sola vez, haciendo una ejecución má almacenarse para usarse luego sin volver a hacer la traducción. s rápida y puede Ejemplo de código de alto nivel lenguaje de medio nivel: Es un lenguaje, que se encuentran entre los lenguajes de alto nivel y los lenguajes de bajo nivel. Suelen ser clasificados muchas veces de alto nivel, pero permiten ciertos manejos de bajo nivel. Son precisos para ciertas aplicaciones como la creación de sistemas operativos, ya que permiten un manejo abstracto (independiente de la máquina, a diferencia del ensambl ador), pero sin perder mucho del poder y eficiencia que tienen los lenguajes de bajo nivel. Un ejemplo de este lenguaje es lenguaje C, código de ejemplo de lenguaje C Lenguajes de programación de alto nivel: los más conocidos Existen numerosos lenguajes de programación, los más utilizados o estandarizado son los siguientes. • • • • • • • • • • Java: se trata de un lenguaje de programación creado en 1995 por Sun Microsystems. Muchas webs y aplicaciones no funcionarán sin tener instalado el Java. Java se utiliza para crear elementos interactivos en páginas web. Funciona en compañía de otros códigos de programación como el HTML y el CSS. Go: es un lenguaje de programación desarrollado por Google. Está pensado para implementar tareas con poca interacción con los usuarios. Ruby on Rails: este lenguaje de programación es de código abierto que se ha utilizado para la creación de grandes aplicaciones como Twitter, Basecamp o Hulu, entre otras. Python: se utiliza principalmente para el desarrollo de Inteligencia Artificial y aplicaciones centradas en el análisis masivo de datos. C: es el segundo lenguaje de programación más usado en todo el mundo. Es muy útil ya que permite su utilización en la mayoría de sistemas operativos. C++: este lenguaje de programación permite programar tanto a nivel alto como a nivel bajo. Perfecto al adaptarse a diferentes proyectos. C#: también se conoce como C Sharp y se trata de una evolución del código C y C++. Se utiliza principalmente para la programación de objetos. SQL: permite interactuar con una base de datos. PHP: se trata de un lenguaje de programación interpretado utilizado para la generación de páginas web de forma dinámica. Para funcionar se incrusta dentro del código HTML. Swift: dentro de la clasificación de los lenguajes de programación, Swift está enfocado al desarrollo para aplicaciones iOs y MacOS. Es decir, para el universo Apple. Herramientas que se utilizan para programar o hacer uso de lenguajes de programación Las herramientas de programación, son aquellas que permiten realizar aplicativos, programas, rutinas, utilitarios y sistemas para que la parte física del computador u ordenador, funcione y pueda producir resultados. Hoy día existen múltiples herramientas de programación en el mercado, tanto para analistas expertos como para analistas inexpertos. Veamos qué clases hay: • Editores de código. Se trata de programas donde podrás redactar el código de programación. Suelen autocompletarse para ahorrar errores sintácticos y facilitar la redacción. Ejemplos (GNU Emacs, Brackets, Atom, Notepad++, Araneae) • Compiladores. Se encargarán de traducir el texto al lenguaje de máquina, de forma que la computadora entienda las órdenes enviadas. • Depuradores. Software encargado de revisar y corregir errores en la redacción del código fuente de una web o una aplicación.