lenguaje de programacion
TRANSCRIPT
PROGRAMACIÓN III
ING. JOSAEL ANDINO
INTEGRANTES
ANDY FABRICIO CARDENAS GIRONANTHONY ALDAIR TORREZELDER ARMANDO GIRON VALLADARESMARIA DEL CARMEN LAGOSKITMAN ARIADNE REYES
FECHA DE ENTREGA: 2015/26/07
INTRODUCCIÓN AL TEMA
Los primeros lenguajes de programación surgieron de la idea de Charles Babagge, la cual se le ocurrió a este hombre a mediados del siglo XIX.
Era un profesor matemático de la universidad de Cambridge e inventor inglés, que al principio del siglo XIX predijo muchas de las teorías en que se basan los actuales ordenadores. Consistía en lo que él denominaba la maquina analítica, pero que por motivos técnicos no pudo construirse hasta mediados del siglo XX. Con él colaboro Ada Lovedby, la cual es considerada como la primera programadora de la historia, pues realizo programas para aquélla supuesta maquina de Babagge, en tarjetas perforadas.
Lenguajes de Programación
Definicion Son todos los símbolos, caracteres y reglas de uso que permiten a las personas "comunicarse" con las computadoras.
Existen varios cientos de lenguajes y dialectos de programación diferentes. Algunos se crean para una aplicación especial, mientras que otros son herramientas de uso general más flexibles que son apropiadas para muchos tipos de aplicaciones. En todo caso los lenguajes de programación deben tener instrucciones que pertenecen a las categorías ya familiares de entrada/salida, cálculo/manipulación de textos, lógica/comparación y almacenamiento / recuperación.
Tipos de Lenguajes de Programación
Tipos de lenguaje de
Programación
SEGÚN EL NIVEL DE ABSTRACCIÓN DEL PROCESADOR
SEGÚN EL PARADIGMA DE PROGRAMACIÓN
SEGÚN LA FORMA DE EJECUCIÓN
Tipos de Lenguajes de Programación SEGÚN EL NIVEL DE ABSTRACCIÓN
DEL PROCESADOR
Los lenguajes de bajo nivel
Los lenguajes de medio
nivelLos lenguajes de alto nivel
La abstracción es un principio por el cual se aísla toda aquella
información que no se resulta relevante a un determinado nivel
de conocimiento
Los lenguajes de bajo
nivelEs el que proporciona poca o ninguna abstracción del microprocesador de un ordenador. Consecuentemente es fácilmente trasladado a lenguaje de máquina. En general se utiliza este tipo de lenguaje para programar controladores (drivers). Utiliza básicamente ceros, unos y abreviaturas de letras. Estos lenguajes también se llaman de código máquina.
Ventajas Mayor adaptación al equipo. Posibilidad de obtener la máxima velocidad con mínimo uso de
memoria.
Desventajas Imposibilidad de escribir código independiente de la máquina. Mayor dificultad en la programación y en la comprensión de los
programas. El programador debe conocer más de un centenar de
instrucciones. Es necesario conocer en detalle la arquitectura de la máquina.
Los lenguajes de medio nivel
Es un lenguaje de programación informática como el lenguaje C, 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 ensamblador), pero sin perder mucho del poder y eficiencia que tienen los lenguajes de bajo nivel.
Una característica distintiva, por ejemplo, que convierte a C en un lenguaje de medio nivel es que es posible manejar las letras como si fueran números.
Una de las características más peculiares del lenguaje de programación C; es el uso de "apuntadores", los cuales son muy útiles en la implementación de algoritmos como Listas ligadas, Tablas Hash y algoritmos de búsqueda y ordenamiento.
Los lenguajes de alto nivel
Se caracterizan por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las máquinas.
Estos lenguajes son más parecidos al lenguaje natural humano y no dependen de la máquina y sirven fundamentalmente para crear programas informáticos que solucionan diferentes problemas. Son los más usados por los programadores y por todo del mundo que realiza programas informáticos.
Los lenguajes de muy alto nivel se crearon para que el usuario común pudiese solucionar tal problema de procesamiento de datos de una manera más fácil y rápida.
DIFERENCIA ENTRE ESTOS LENGUAJES
En un lenguaje de alto nivel sólo tengo que poner sqt(x),
Que sería una función predeterminada, calcular el cuadrado de x.
Si fuera de bajo nivel, yo mismo tendría que crear la función sabiendo cómo funciona el cuadrado de un número:
cuadrado(x) = x * x
Tipos de Lenguajes de Programación
SEGÚN EL PARADIGMA
DE PROGRAMACIO
N
Paradigma imperativo
Paradigma declarativo
Paradigma estructurado
Paradigma orientado a objetos
Paradigma funcional
Paradigma lógico
Es un modelo que engloba a ciertos lenguajes que comparten elementos
estructurales y metodologicos.
Paradigma imperativoDescribe la programación como una secuencia instrucciones o comandos que cambian el estado de un programa. El código máquina en general está basado en el paradigma imperativo. Su contrario es el paradigma declarativo. En este paradigma se incluye el paradigma procedimental (procedural) entre otros.
Algunos lenguajes imperativos
BASICCD FortranPascalPerlPHPLuaJavaPythonGo
Paradigma declarativoNo se basa en el cómo se hace algo (cómo se logra un objetivo paso a paso), sino que describe (declara) cómo es algo. En otras palabras, se enfoca en describir las propiedades de la solución buscada, dejando indeterminado el algoritmo (conjunto de instrucciones) usado para encontrar esa solución. Tiene desventajas en la eficiencia, pero ventajas en la
solución de determinados problemas.
Algunos lenguajes declarativos
ASP (Answer Set Programming)Haskell (Programación funcional)ML (Programación funcional)Lisp (Programación funcional)Prolog (Programación Lógica)F-Prolog (Programación Lógica Difusa)Curry (Programación Lógico-Funcional)SQLQML
Paradigma estructurado□ La programación estructurada es un paradigma de
programación orientado a mejorar la claridad, calidad y tiempo de desarrollo de un programa de computadora, utilizando únicamente subrutinas y tres estructuras:
□ secuencia, selección (if y switch) e iteración (bucles for y while), considerando innecesario y contraproducente el uso de la instrucción de transferencia incondicional (GOTO), que podría conducir a "código espagueti", que es mucho más difícil de seguir y de mantener, y era la causa de muchos errores de programación.
□ Fue reforzado teóricamente por el teorema del programa estructurado, y prácticamente por la aparición de lenguajes como ALGOL con adecuadas y ricas estructuras de control.
Representaciones gráficas de los tres patrones básicos. En diagrama NS cajas azules y sus equivalentes en diagramas de flujo de control
Paradigma orientado a objetos
La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos en sus interacciones, para diseñar aplicaciones y programas informaticos
ABAP -> SAP Lenguaje orientado a eventosABL Lenguaje de programación de OpenEdge de Progress SoftwareActionScriptActionScript 3AdaC++C#ClarionClipperDObject PascalJavaPythonRubyVisual Basic 6.0
Paradigma funcionalEste paradigma concibe a la computación como la evaluación de funciones matemáticas y evita declarar y cambiar datos. En otras palabras, hace hincapié en la aplicación de las funciones y composición entre ellas, más que en los cambios de estados y la ejecución secuencial de comandos (como lo hace el paradigma procedimental). Permite resolver ciertos problemas de forma elegante y los lenguajes puramente funcionales evitan los efectos secundarios comunes en otro tipo de programaciones.
Recientemente Microsoft Research está trabajando en el lenguaje F# (Functional#).
Scheme, Erlang, Rust, Objective Caml y Haskell
Paradigma lógicoSe basa en la definición de reglas lógicas para luego, a través de un motor de inferencias lógicas, responder preguntas planteadas al sistema y así resolver los problemas.
El lenguaje de programación lógica por excelencia es Prolog, que cuenta con diversas variantes.
Tipos de Lenguajes de Programación SEGÚN LA FORMA DE EJECUCIÓN
Lenguajes compilados
Lenguajes interpretados
Lenguaje compiladosLos compiladores son aquellos cuya función es traducir un programa escrito en un determinado lenguaje a un idioma que la computadora entienda (lenguaje máquina con código binario). Al usar un lenguaje compilado (como lo son los lenguajes del popular Visual Studio de Microsoft), el programa desarrollado nunca se ejecuta mientras haya errores, sino hasta que luego de haber compilado el programa, ya no aparecen errores en el código.
Lenguaje interpretadosSe puede también utilizar una alternativa diferente de los compiladores para traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en forma permanente el código objeto que se produce durante la corrida de compilación para utilizarlo en una corrida de producción futura, el programador sólo carga el programa fuente en la computadora junto con los datos que se van a procesar.
LENGUAJES DE PROGRAMACIÓN
FORTRAN C
TURBO PASCAL AWK
FORTRANEs un lenguaje de programación para el desarrollo de aplicaciones matemáticas y científicas, fue el primer lenguaje de programación de alto nivel. Estos lenguajes de alto nivel tienen entre otras las ventajas que pueden utilizarse en cualquier computadora y son más afines al lenguaje humano
CMás conocido para desarrollar software de sistemas y aplicaciones. Es un lenguaje muy eficiente en este campo. El lenguaje de programación C está disponible multitud de plataformas diferentes, mucho más que cualquier otro lenguaje. Además, en principio, el lenguaje de programación C fue creado para fomentar la programación independientemente de la máquina.
TURBO PASCALEs un sistema de desarrollo de software que incluye un compilador y un entorno de desarrollo integrado (IDE) para el lenguaje de programación Pascal, desarrollado por Borland y liderado por Philippe Kahn.
AWKEs un lenguaje de programación diseñado para el análisis y procesamiento ya sean ficheros o flujo de datos.AWK es ejemplo de un lenguaje de programación que usa ampliamente el tipo de datos de listas asociativas (es decir, listas indexadas por cadenas clave), y expresiones regulares.
□ C# (pronunciado si sharp en inglés) es un lenguaje de programación orientado a objetos desarrollado y estandarizado porMicrosoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA (ECMA-334) e ISO(ISO/IEC 23270). C# es uno de los lenguajes de programación diseñados para la infraestructura de lenguaje común.
□ Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET, similar al de Java, aunque incluye mejoras derivadas de otros lenguajes.
□ El nombre C Sharp fue inspirado por la notación musical, donde '#' (sostenido, en inglés sharp) indica que la nota (C es la nota do en inglés) es un semitono más alta, sugiriendo que C# es superior a C/C++. Además, el signo '#' se compone de cuatro signos '+' pegados.
Lenguajes de Programación Mejor Pagados
□ En Quartz encontramos un curioso ranking de los lenguajes de programación mejor pagados, según los salarios de Estados Unidos. En este país, la industria de la programación y el desarrollo también se ha convertido en una de las más lucrativas. Se estima además que el salario de un programador, de un buen programador, podría llegar a alcanzar los 100.000 dólares al año.
Eso sí, como decíamos al principio, no todos los lenguajes se valoran igual:
LENGUAJES EN DÓLAR EN EUROSRUBY ON
RAILS109,460 dólares
95,267.55 euros
OBJECTIVE C 108,225 dólares
94,192 euros
PYTHON 100,717 dólares
87,674 euros
JAVA 94,908 dólares
82,617 euros
C++ 93,502 dólares
81,353 euros
JAVASCRIPT 91,461 dólares
79,577 euros
C 90,134 dólares
78,400 euros
R 90,055 dólares
78,332 euros
C# 89,074 dólares
77,466 euros
VISUAL BASIC 85,962 dólares
74,759 euros
SQL 85,511 dólares
74,406 euros
PERL 82,513 dólares
71,798 euros
CONCLUSIONES
Un lenguaje de programación" es un lenguaje diseñado para describir el conjunto de acciones consecutivas que un equipo debe ejecutar. Por lo tanto, un lenguaje de programación es un modo práctico para que los seres humanos puedan dar instrucciones a un equipo.
El lenguaje máquina, por lo tanto, no es comprensible para los seres humanos, razón por la cual se han desarrollado lenguajes intermediarios comprensibles para el hombre. El código escrito en este tipo de lenguaje se transforma en código máquina para que el procesador pueda procesarlo.
□ Si te apasiona el mundo de la informática adentrarte en los lenguajes de programación es como abrirle las tripas a tu ordenador, a las aplicaciones, a los programas, etc.….es un interesantísimo juego en el que podrás ser capaz de programar casi cualquier cosa.