INSTITUTO JOHN KENNEDY El presente material forma parte de los contenidos digitales del Inst. John Kennedy. Se prohíbe su uso o distribución sin consentimiento de su autor o de la institución misma. [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa Índice: Los lenguajes de programación ………………………………………………. 3 Un poquito de historia …………………………………………….… 3 Los primeros con nombre …………………………………………….… 3 1951. El lenguaje de máquina …………………………………………….… 3 1953. Lenguaje Ensamblador (assembler) …………………………………………….… 5 1954. Lenguaje Fortran …………………………………………….… 5 1959. Lenguaje Cobol …………………………………………….… 6 1964. Lenguaje Basic …………………………………………….… 7 1968. Lenguaje Pascal …………………………………….………… 7 1972. Lenguaje C ………………………………………….…… 8 1991. Lenguaje JAVA …………………………………………….… 8 Los lenguajes híbridos ……………………………..…………..…… 9 Lenguajes de programación más importantes ………………………………………..…… 10 Material pedagógico digital del INSTITUTO JOHN KENNEDY Las Piedras 152 - Tel. 4226717 San Miguel de Tucumán – CP. 4000 - República Argentina 2 [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa LOS LENGUAJES DE PROGRAMACIÓN En nuestros apuntes de Software, habíamos dicho que los lenguajes de programación son programas que a la vez nos permiten crear nuevos programas y están dentro de la categoría “SOFTWARE DE DESARROLLO”. UN POQUITO DE HISTORIA Los lenguajes de programación existen desde que las computadoras existen, esto es así por una razón muy simple, hombre y computadora necesitan comunicarse y para ello fue necesario crear un lenguaje con el cual entenderse. ¿Cómo pedirle algo a una computadora si ella no me entiende? ¿Cómo entender el resultado de su procesamiento si me aparecen símbolo inentendibles? Es por ello que, desde aquella antigua máquina de Turing, el Z1 o el Z3 (primera programable –en foto-) del alemán Zuse, las computadoras siempre tuvieron un lenguaje y éste, aunque en las primeras computadoras no tenía un nombre determinado, ya existía. Entonces, si hablamos de los primeros lenguajes, debemos referirnos necesariamente a las primeras computadoras cuyos registros datan de 1935 a la fecha. ¡Desde esa fecha al presente han pasado 80 años!. ¡LOS LENGUAJES DE PROGRAMACIÓN LLEVAN 80 AÑOS ENTRE NOSOTROS!. LOS PRIMEROS LENGUAJES CON NOMBRE Un detalle tenemos que considerar, las primeras computadoras no eran para el hogar, eran de uso militar. Luego, con los años, pasaron a servir a los gobiernos y a las empresas (grandes negocios), razón por la cual en algunos casos no nos será extraño que sus nombres tengan que ver con proyectos militares o negocios. Comencemos por un histórico que trascendió todos los tiempos: 1951. EL LENGUAJE DE MÁQUINA. Denominado de esa manera, cobró notoriedad con la llegada de la primera computadora binaria llamada EDVAC ese año. Es un lenguaje muy complejo, muy técnico, para el hombre casi inentendible que requiere gran conocimiento de hardware y de uso de la memoria, que ese mismo año con la creación el Sistema A-0 (un programa compilador que facilitaba un poco la tarea), comenzó a hacerse conocido. Más adelante veremos que es un compilador. 3 [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa Concluyendo, el LENGUAJE DE MÁQUINA es un lenguaje fácilmente interpretable por las computadoras, pero muy muy difícil de interpretar por el hombre. Cuando esto sucede, hablamos de lenguajes de BAJO NIVEL. Para que sea simple comprender, un lenguaje de BAJO NIVEL es un lenguaje muy difícil pero a la vez muy poderoso, ya que la computadora no necesita hacer grandes tareas para interpretarlo y esto hará mucho más veloz y peligroso su funcionamiento. Es por esa razón de ser tan poderoso, que el lenguaje de máquina se utiliza hasta hoy. Podemos comprobarlo haciendo lo siguiente, en el Menú Inicio hacemos clic en Buscar, escribimos CMD y presionamos ENTER. Luego, escribimos lo siguiente (después de cada línea presionaremos Enter): cd \windows type explorer.exe Ok, esos símbolos que aparecen a continuación, no son otra cosa que el programa Explorador de Windows en código máquina. ¿INENTENDIBLE?, ¡POR SUPUESTO!. Hacía falta ser un terrible experto para poder programar en este lenguaje y es por esa razón que programar en él llevaba mucho tiempo. Ops! Por cierto, tipea EXIT en tu ventana CMD para salir de esa modalidad. 4 [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa 1953. LENGUAJE ENSAMBLADOR (ASSEMBLER). En realidad su creación es anterior a 1953 pero se hizo conocido ese año con el lanzamiento de la computadora IBM 650. Es un lenguaje un poco más entendible para el hombre pero que la computadora debía convertir a código máquina (nuestro lenguaje anterior) para poder interpretar. El aspecto de este lenguaje es el que vemos en imagen. Esa operación de convertir lo que programamos a código máquina (los códigos que ella entiende), se denomina COMPILACIÓN. PROGRAMAMOS -> SE COMPILA -> LA COMPUTADORA LO EJECUTA (HACE FUNCIONAR) Así funciona y es por esa razón que muchos lenguajes de programación traen incluido un programa compilador (un programa que convierte lo que hacemos a código máquina para que la computadora pueda entenderlo). A pesar de ser necesaria una compilación, este lenguaje también es de bajo nivel (veloz y muy potente!). Grandes sistemas operativos en la historia se han programado en Assembler. 1954. LENGUAJE FORTRAN. Es el primer lenguaje de ALTO NIVEL, es decir, mucho más sencillo de interpretar para el hombre, pero a la vez muy difícil de interpretar para las computadoras. También era un lenguaje compilado, es decir, necesitaba ser convertido a código máquina tras programar, para que el computador pudiera ejecutarlo (hacerlo funcionar). El aspecto de su código es más o menos el siguiente, que sabiendo un poquito de Inglés interpretaremos todos: Define una variable entera I con el valor 2, luego comprueba si I es igual a 2, si es así llama a la impresora para imprimir lo que sigue, la subrutina en la cual aparece el mensaje “HOLA MUNDO”. Fácil de entender para el hombre, muy difícil de interpretar para las máquinas, razón por la cual este programita debía ser luego compilado y recién allí la computadora lo haría funcionar. 5 [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa NO QUEREMOS QUE DEJES PASAR POR ALTO COMO LOS LENGUAJES VAN CAMBIANDO Y HACIÉNDOSE MÁS ENTENDIBLES PARA EL HOMBRE. A LA VEZ, COMO A MEDIDA QUE SE HACEN MAS “FÁCILES DE ENTENDER”, SE VUELVEN MENOS INTERPRETABLES PARA LAS COMPUTADORAS, HACIÉNDOSE NECESARIO USAR UN PROGRAMA COMPILADOR PARA QUE LOS CONVIERTA A CÓDIGO MÁQUINA. Un lenguaje es de BAJO NIVEL cuando es fácil de interpretar para la computadora pero difícil para el hombre. Un lenguaje es de ALTO NIVEL cuando es difícil de interpretar para la computadora, pero más fácil para el hombre. Cuando compilamos un lenguaje, el programa compilador lo convierte en códigos. Esos códigos por lo general se hacen muy grandes (muchos) y es esta la razón por la cual los programas hechos en lenguajes de ALTO NIVEL son más lentos y menos poderosos que los de BAJO NIVEL. Demasiado código para hacer lo que en código máquina harías en muy poco y se leería más rápido. 1959. COBOL (Common Business-Oriented Language, Lenguaje Común Orientado a Negocios). Recordemos que no fue sino hasta 1976 que aparecieron las PCs y hasta el 75 las computadoras eran de uso militar, gubernamental, empresarial o bancario. ¡No es extraño entonces que el lenguaje COBOL haga referencia desde su propio nombre al mundo de los negocios!. Es un lenguaje de alto nivel, que tuvo como característica ser el primer lenguaje de alto nivel universal, es decir, orientado a todo tipo de computadoras. 6 [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa Recordemos que antes de COBOL cada computadora tenía su propio lenguaje según fabricante. 1964. LENGUAJE BASIC. Un lenguaje histórico sin dudas, porque con el correr de los años se convertiría en el lenguaje por excelencia en el que se programarían la gran mayoría de los microcomputadores ni bien uno los encendía. ¡Un estándar!, aunque no lo era del todo la versión y el tipo de Basic en cada computador, ya que tras su lanzamiento fue modificado según las características físicas de cada computadora y es por esa razón que si bien es cierto básicamente el código corría en todos los equipos, algunos comandos, referencias de memoria y parámetros eran diferentes según el equipo. Es por esa razón que con el tiempo surgieron diferentes versiones. Otro detalle, era un lenguaje muy fácil de aprender (BÁSICO), que te permitía programar casi desde la primera clase que tomaras. Quizás esto también tuvo mucho que ver en que fuera el lenguaje que todos los microcomputadores e incluso algunas consolas de juego traían incorporado en memoria. En este ejemplo, el Basic de la consola de juegos ATARI. 1968. LENGUAJE PASCAL. En realidad finalmente se da a conocer al mundo en 1970. Es un lenguaje desarrollado por un profesor suizo, Niklaus Wirth, que tenía como objetivo crear un lenguaje que les facilitara a sus alumnos aprender programación de computadoras. Este lenguaje, de alto nivel, sería muy utilizado y muy enseñado en todo el mundo, influyendo con los años en lenguajes posteriores como C y JAVA por citar ejemplos. 7 [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa El aspecto que lucía el código en PASCAL era más o menos el de la foto. 1972. LENGUAJE C. El lenguaje C como describimos anteriormente es muy parecido a PASCAL, de hecho su forma de programación, sus reglas (programación estructurada, declaración de variables, etc), es muy similar, pero es muchísimo más potente. Tan potente que con la aparición del procesador 8088 se hace mundialmente conocido por ser el lenguaje de programación en el cual se programarían con el tiempo poderosos sistemas operativos como una parte de D.O.S. y el propio WINDOWS cuando C creció y pasó a denominarse C++ (C más más o C plus plus) en 1983. 1991. JAVA. Es un lenguaje que destacamos porque gran parte del mundo de las apps que tenemos en el celular están programadas en este lenguaje. Surgió con otro nombre en la década del 50 y con el correr de los años fue incorporando elementos de lenguajes similares, uno de ellos y quizás el que más se parece es el lenguaje C. En la década del 90 se hizo muy conocido por ser un lenguaje muy liviano, de mucho poder, que permitía incluso crear sistemas operativos y con el “boom” de internet ejecutar juegos y utilidades desde una página web. Al ser estos juegos y utilidades muy pequeños, eran rápidos de cargar y ejecutar. Cuando Jobs introdujo internet en los celulares, JAVA dio otro golpe, se convirtió en el lenguaje favorito para crear apps para dispositivos móviles. ¡Si!, ¡la mayoría de las aplicaciones que bajamos a nuestro celular o a nuestra tablet están originalmente programadas en lenguaje JAVA!. 8 [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa LOS LENGUAJES HÍBRIDOS En la década del 90 fueron muy populares los lenguajes híbridos. ¿Qué son?, ¡lenguajes de programación creados en otros lenguajes!. Por dar ejemplos, FOX PRO era un software programado en Lenguaje C, que nos permitía crear programas para administrar bases de datos (grandes cantidades de datos), integrando nociones de otro lenguaje denominado SQL (1986) y la programación estructurada. ¡Crear programas con un lenguaje hecho en otro lenguaje! ¿Suena tonto hacer algo así?, pues NO!, era una gran idea, porque hacía mucho más simple crear aplicaciones ya que mucho de lo que habitualmente nos costaba hacer programando ya venía incluido en el lenguaje y nosotros implemente debíamos utilizar un comando. Por ejemplo, antes para buscar datos en un listado de muchas personas debíamos escribir no menos de 10 líneas de código, ahora con FOX PRO y otros lenguajes híbridos poníamos SEEK, FIND, SEARCH o LOCATE y lo encontrábamos. FOX PRO (con compilador o sin él), CLIPPER (venía con un compilador) y otros lenguajes híbridos se hicieron muy famosos en la década del 90. Con el tiempo, estos y otros lenguajes crearían mejores versiones, con más comandos, más amplios, más poderosos y algunos de ellos sus versiones VISUALES, es decir, versiones del lenguaje que permitían trabajar el código fuente con objetos visuales como ventanas, tablas de datos, etc, potenciándose mucho más. Es así como surgirían VISUAL FOX PRO, VISUAL BASIC, VISUAL C++ e inclusive VISUAL FORTRAN y VISUAL COBOL. Con los años la empresa MICROSOFT desarrollaría todo un paquete para ellos al que denominaría MICROSOFT VISUAL STUDIO. Algo importante a tener siempre en cuenta, en realidad nosotros no estamos viendo todos los lenguajes de programación, solo los más importantes y trascendentes, encontrarás una lista más detallada que incluso no contiene todos, en la siguiente página. 9 [LENGUAJES DE PROGRAMACIÓN] Prof. Mariano Correa LISTADO DE LENGUAJES DE PROGRAMACIÓN MÁS IMPORTANTES A-0 System Java ActionScript JavaScript APL Logo AppleScript Pascal ASP.NET Perl Assembler PHP BASIC PostScript Batch (Windows/Dos) PowerBuilder C++ Python COBOL QBasic Código máquina mIRC scripting CoffeeScript Script.NET ColdFusion VBScript DASL Visual Basic dBase Visual Basic .NET Delphi Visual C# Fortran Visual Fortran FoxBase Visual FoxPro FoxPro Visual Objects Game Maker Language (GML) Xml Html ¿TE ANIMAS A DESCUBRIR MÁS? Utilizando internet investiga y comenta cuantos encontraste en total y haz una síntesis de lo mejor de cada lenguaje que hemos visto. 10