LEGUAJE DE
PROGRAMACIÓN
STYVEN BARRIONUEVO
DEFINICIÓN
• Un lenguaje de programación es un conjunto de símbolos y códigos usados para orientar la
programación de estructuras en el desarrollo web.
• Es un lenguaje formal que, mediante una serie de instrucciones, le permite a un programador escribir
un conjunto de órdenes, acciones consecutivas, datos y algoritmos para, de esa forma, crear programas
que controlen el comportamiento físico y lógico de una máquina.
• Se clasifican en dos tipos principales: lenguaje de bajo nivel y de alto nivel.
LENGUAJE DE BAJO NIVEL
• Son lenguajes totalmente orientados a la máquina.
• Este lenguaje sirve de interfaz y crea un vínculo inseparable entre el hardware y
el software.
• Éste se subdivide en dos tipos:
• Lenguaje máquina
• Es el más primitivo de los lenguajes y es una colección de dígitos binarios o bits (0 y 1) que
la computadora lee e interpreta y son los únicos idiomas que las computadoras entienden.
• Ejemplo: 10110000 01100001
• Lenguaje ensamblador
• El lenguaje ensamblador es el primer intento de sustitución del lenguaje de máquina por
uno más cercano al utilizado por los humanos.
• Ejemplo: MOV AL, 61h (asigna el valor hexadecimal 61 al registro "AL")
LENGUAJE 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
• 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ás rápida y puede almacenarse
para usarse luego sin volver a hacer la traducción.
LENGUAJE DE PROGRAMACIÓN PHP
• PHP es de código abierto muy usado en el desarrollo web, ya que puede incrustarse en HTML. El código
se ejecuta en el servidor, genera HTML y se lo envía al cliente.
VENTAJAS
• Muy fácil de emplear si estás empezando en esto de la programación, pero muy completo para los
programadores profesionales.
• Se orienta al desarrollo de aplicaciones web dinámicas.
• Es un código seguro y confiable, por el hecho de que el código fuente está oculto para el navegador y
cliente.
• Licencia abierta de uso.
• Las últimas versiones hacen que PHP sea un lenguaje orientado a objetos muy potente y con un
rendimiento muy mejorado.
DESVENTAJAS
• Necesitas un servidor web para ejecutar una aplicación, aunque las últimas versiones traen un servidor
incorporado.
• Debes tener un conocimiento genérico de HTML para trabajar con PHP o con JSON.
• No es tan seguro debido a su código abierto, ya que los archivos de texto ASCII suelen estar fácilmente
disponibles.
• No es adecuado para aplicaciones web gigantes basadas en contenido.
• Tiene un tipo débil, que puede causar datos y conocimientos incorrectos al usuario.
• Los frameworks PHP aprendieron a usar las funcionalidades integradas de PHP para evitar escribir código
adicional.
• El uso de más funciones del marco y las herramientas de PHP provoca un rendimiento deficiente de las
aplicaciones en línea.
• PHP no permite cambios o modificaciones en el comportamiento principal de las aplicaciones en línea.
LENGUAJE PERL
• El lenguaje Perl tiene licencia GPL, por lo tanto es gratuito y se puede descargar sin coste alguno. Como
hemos dicho, puede funcionar en varios sistemas operativos, así que puedes decidir.
• Perl se utiliza sobretodo para crear aplicaciones CGI para entornos web. Si en nuestro servidor vemos
una carpeta llamada cgi-bin, es que allí se encuentra el intérprete Perl, y podemos llamarlo para
ejecutar nuestro código.
• Es un lenguaje interpretado, como la mayoría de lenguajes de programación web , como PHP o
JavaScript. Eso significa que el código fuente no se compila, para transformarlo a lenguaje máquina, sino
que se va leyendo el código y se interpreta en cada línea de ejecución.
VENTAJAS
• Es un lenguaje de alto nivel, así que su curva de aprendizaje es suave.
• Es eficiente a la hora de tratar un gran volumen de datos. Un ejemplo es que se usa en el mercado de
finanzas y bioinformática.
• Es de propósito general: puede usarse en desarrollo web, pero también en otros entornos como la
administración de sistemas.
• Es multiplataforma, además, viene con la propia instalación de cualquier sistema operativo Linux/Unix.
• Es una buena alternativa a C, ya que no tienes que trabajar con punteros.
DESVENTAJAS
• Aunque es un lenguaje interpretado, un programa hecho en Perl se compila al principio de su ejecución,
por lo que puede ser lento comparado con otros lenguajes similares (esto se soluciona si después
trabajas con muchos datos).
• Su código no es muy legible, comparado con otros lenguajes como Python (que también puede usarse
para ejecutar scripts en servidores).
• No tiene control de excepciones, y los posibles errores suelen tener una dificultad media encontrarlos.
LENGUAJE JAVA
• Se trata de un lenguaje de programación simple y legible que cuenta con más de 9 millones de usuarios
en todo el mundo, según la página oficial de Java. De hecho, a lo largo del siglo XXI, se ha mantenido
constante en las primeras posiciones de la lista de lenguajes de programación y su presencia en más de
7 mil millones de dispositivos es constante.
VENTAJAS
• La multiplataforma. Tal vez sí que el precio por tenerla sea la lentitud, pero es que su principal
orientación sea el rendimiento en sí sino la facilidad para desarrollar aplicaciones para distintas
tecnológias (de escritorio, móbil, web...)
• Una vez aprendas su sintaxis, son muy fáciles de alternar.
• Es el JDK, una librería de clases bastante completa que se puede aprovechar gracias a un lenguaje
perfectamente orientado a objetos que corriendo sobre la máquina virtual, te permite olvidarte de algo
tan engorroso como es la gestión de memoria (ya sabéis, punteros, reserva y liberación de memoria...).
• Algo verbose pero eso también puede ser bueno, deja las cosas 'claras'
• Gran cantidad de recursos disponibles, tanto en librerías como en documentación y comunidad
• Más rápido que lenguajes interpretados y no mucho más lento que lenguajes compilados como siempre
hay opción, no estás atado a ningún ide, librería o modo de hacer las cosas.
DESVENTAJAS
• Es su sintaxis, si la comparamos con C# o Python la veo bastante engorrosa y al contrario que su
semejante en .NET, C#, es un lenguaje que evoluciona muy lentamente.
• Su principal objetivo no es el rendimiento y esto aunque aporta una ventaja también un inconveniente.
• Está ES para la creación de aplicaciones multimedia o que impliquen funcionalidad mínimamente
avanzada (de visión por computador).
• Es que sí que creo que es difícil de aprender, tomándolo como el primer lenguaje que se pretende
conocer; para poder empezar a desarrollar aplicaciones con en él son necesarias unas nociones de
orientación a objetos mínimas que para otros lenguajes (Python o C, por ejemplO) no te serían
necesárias y con los que los conocimientos podrían ir escalándose poco a poco.
• No sé, al fin y al cabo es una herramienta que como profesional hay que saber dominar y donde
aplicarla. :)
• La implementación de generics es bastante burd, no es completamente orientado a objetos; tiene tipos
nativos, el tener tantas opciones de donde elegir puede resultar en decisiones complicadas cuando no
conoces bien las opciones.
LENGUAJE C++
• C++ permite la manipulación de objetos y tiene como base el lenguaje C. Se le reconoce como uno de
los lenguajes de programación multiparadigma (programación orientada a objetos y estructurada). Es
una de las herramientas más populares por su versatilidad y potencia.
VENTAJAS
• Lenguaje muy didáctico, y a través del mismo puedes aprender otros como C#, Java, PHP.
• Muy utilizado en la creación de sistemas operativos, utilidades, bibliotecas…
• Permite programar con múltiples estilos, como los estructurados.
• Admite la compilación de nuestro código en múltiples plataformas.
DESVENTAJAS
• El uso de librerías dinámicas se hace muy complicado, ya que la carga y la liberación de memoria de la
librería corre a cargo de los programadores.
• No es muy usable para desarrollar páginas web.
• Complejo programar bases de datos.
• Más pesado que otros programas similares.
LENGUAJE C#
• C# es un lenguaje creado por Microsoft con seguridad de tipos y orientado a objetos. Se diseñó para
ejecutarse en la plataforma .NET. C# se usa para el desarrollo de juegos, servicios web XML,
componentes distribuidos, aplicaciones cliente-servidor, etc. La sintaxis de C# es muy reconocida, por lo
que si estás familiarizado con Java o C++ no te será difícil aprenderlo.
VENTAJAS
• Lenguaje muy potente y flexible.
• Soporta la mayoría de paradigmas.
DESVENTAJAS
• Es complicado hacer portabilidades.
• Tiene una curva de aprendizaje bastante elevada.
• No existe una correcta documentación de la herramienta.
LENGUAJE PYTHOM
• Python se origina a finales de los 80 y principios de los 90. Su programación se orienta a objetos y se
emplea para hacer aplicaciones genéricas (juegos, web o de escritorio), en la informática científica y big
data, que ahora está muy de moda. Su código es de distribución libre, por lo que no tendrás que pagar
licencias para utilizarlo.
VENTAJAS
• Es escalable y flexible.
• Funciona en múltiples plataformas (Windows, Mac, Linux).
• Soporte de programación de interfaces gráficas de usuario.
• Conexión con las bases de datos más usadas.
• Se integra fácilmente con lenguajes como C, C++, y Java entre otros.
DESVENTAJAS
• No dispone de una buena documentación.
• Es más lento comparado con otros lenguajes como Java o C.
• Difícil de ejecutar múltiples hilos.
LENGUAJE SWIFT
• Es uno de los lenguajes de programación más recientes y de más futuro y se lanza en 2014 para los
sistemas iOS y macOS. Es open source y puedes encontrar toda la información necesaria para usarlo en
su web o en su github.
VENTAJAS
• No es un lenguaje exclusivo de iOS y puedes usarlo en Linux también.
• Es más fácil de aprender y programar con él que otros lenguajes.
• Ofrece un código muy seguro, ya que evita ciertas estructuras o condiciones.
• Tareas como la encriptación se ejecutan más rápidamente.
DESVENTAJAS
• Cada vez que salga una nueva versión, tendrás que reprogramar tu app.
• Impone muchas reglas a hora de programar.