lenguaje de programacion

27
PROGRAMACIÓN III ING. JOSAEL ANDINO INTEGRANTES ANDY FABRICIO CARDENAS GIRON ANTHONY ALDAIR TORREZ ELDER ARMANDO GIRON VALLADARES MARIA DEL CARMEN LAGOS KITMAN ARIADNE REYES FECHA DE ENTREGA: 2015/26/07

Upload: elder-giron

Post on 23-Jan-2017

869 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Lenguaje de programacion

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

Page 2: Lenguaje de programacion

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.

Page 3: Lenguaje de programacion

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.

Page 4: Lenguaje de programacion

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

Page 5: Lenguaje de programacion

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

Page 6: Lenguaje de programacion

  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.

Page 7: Lenguaje de programacion

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.

Page 8: Lenguaje de programacion

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.

Page 9: Lenguaje de programacion

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

Page 10: Lenguaje de programacion

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.

Page 11: Lenguaje de programacion

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

Page 12: Lenguaje de programacion

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

Page 13: Lenguaje de programacion

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

Page 14: Lenguaje de programacion

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

Page 15: Lenguaje de programacion

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

Page 16: Lenguaje de programacion

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.

Page 17: Lenguaje de programacion

Tipos de Lenguajes de  Programación SEGÚN LA FORMA DE EJECUCIÓN

Lenguajes compilados

Lenguajes interpretados

Page 18: Lenguaje de programacion

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.

Page 19: Lenguaje de programacion

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.

Page 20: Lenguaje de programacion

LENGUAJES DE PROGRAMACIÓN

FORTRAN C

TURBO PASCAL AWK

Page 21: Lenguaje de programacion

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

Page 22: Lenguaje de programacion

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.

Page 23: Lenguaje de programacion

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.

Page 24: Lenguaje de programacion

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.

Page 25: Lenguaje de programacion

□ 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.

Page 26: Lenguaje de programacion

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

Page 27: Lenguaje de programacion

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.