SlideShare una empresa de Scribd logo
ALGORITMOS Y PROGRAMACION
–
™ A diario interactuamos con distintos tipos de máquinas como celulares,
tablets y computadores. Todos ellos tienen un lenguaje de programación
que ayuda a traducir las órdenes del usuario para que pueda utilizarlos.
™ Un lenguaje de programación es básicamente un sistema estructurado de
comunicación, similar al humano, el cual nos permite comunicarnos por
medio de signos, ya sean palabras, sonidos o gestos. Refiriéndonos a los
aparatos, este sistema está organizado para que se entiendan entre sí y a su
vez interprete las instrucciones que debe ejecutar.
™ El término programación se define como un conjunto de instrucciones
consecutivas y ordenadas que llevan a ejecutar una tarea
específica. Dichas instrucciones se denominan “código fuente”, el cual es
único para cada lenguaje y está diseñado para cumplir una función o
propósito específico. Usan diferentes normas o bases para controlar el
comportamiento de un dispositivo y también pueden ser usados para crear
programas informáticos
–
1801
Los primeros lenguajes de programación preceden a la
computadora moderna. En un inicio los lenguajes eran
códigos.
La máquina del telar de Jacquard, creada en 1801,
utilizaba los orificios en tarjetas perforadas para
representar los movimientos de un brazo de la máquina
de tejer, con el objetivo de generar patrones decorativos
automáticamente.
LINEA DE TIEMPO
–
Durante un período de nueve meses entre 1842 y 1843, Ada
Lovelace tradujo las memorias del matemático italiano Luigi
Menabrea acerca de la nueva máquina propuesta por
Charles Babbage, la Máquina Analítica. Con estos escritos,
ella añadió unas notas en las cuales especificaba en detalle
un método para calcular los números de Bernoulli con esta
máquina, el cual es reconocido por muchos historiadores
como el primer programa de computadora del mundo.
Herman Hollerith se percató de que podía codificar la
información en tarjetas perforadas cuando observó a los
conductores de trenes codificar la apariencia de los tickets
del tren con la posición de los agujeros perforados en estos.
1842 y 1843
–
™ En 1890 Hollerith codificó los datos del censo en tarjetas
perforadas.
™ Los primeros códigos de computadora estaban especializados
según sus aplicaciones. En las primeras décadas del siglo 20, los
cálculos numéricos estaban basados en los números decimales.
Eventualmente se fueron dando cuenta que la lógica podía ser
representada con números, no sólo con palabras. Por ejemplo,
Alonzo Church fue capaz de expresar el cálculo lambda a través de
fórmulas. La máquina de Turing estableció las bases para
almacenar programas como datos en la arquitectura de von
Neuman de una computadora. Sin embargo, a diferencia del
cálculo lambda, el código de Turing no serviría satisfactoriamente
como base para lenguajes de más alto nivel- su principal uso es en
el análisis riguroso en la complejidad algorítmica.
1890
–
™ En la década de 1940 fueron creadas las primeras
computadoras modernas, con alimentación eléctrica.
La velocidad y capacidad de memoria limitadas
forzaron a los programadores a escribir programas,
en lenguaje ensamblador muy afinados. Finalmente
se dieron cuenta de que la programación en lenguaje
ensamblador requería de un gran esfuerzo
intelectual y era muy propensa a errores.
1940
–
™ En 1948, Konrad Zuse publicó un artículo acerca de su lenguaje de
programación Plankalkül. Sin embargo, no fue implementado en
su vida y sus contribuciones fueron aisladas de otros desarrollos.
™ Entre algunos lenguajes importantes que fueron desarrollados en
este período se encuentran:
™ 1943 - Plankalkül (Konrad Zuse), diseñado, pero sin implementar
durante medio siglo
™ 1943 - el sistema de codificación ENIAC.
™ 1949 - 1954 -- una serie de conjuntos de instrucciones nemotécnicas,
como la de ENIAC, comenzando en 1949 con C-10 para BINAC
(que luego evolucionaría en UNIVAC). Cada conjunto de
instrucciones estaba destinado a un fabricante específico.
1948
–
™ En los cincuenta, los tres primeros lenguajes de programación modernos,
cuyos descendientes aún continúan siendo utilizados, son:
™ FORTRAN (1955), creado por John Backus et al.;
™ LISP (1958), creado por John McCarthy et al.;
™ COBOL (1959), creado por el Short Range Committee, altamente
influenciado por Grace Hopper.
™ Otro hito a finales de 1950 fue la publicación, por un comité Americano y
Europeo de científicos de la computación, de un nuevo “lenguaje para
algoritmos”; el Reporte de ALGOL 60 ("ALGOrithmic Language"). Este
reporte consolidó muchas ideas que estaban circulando en aquel entonces,
y proporcionó dos innovaciones importantes para los lenguajes de
programación: Estructuras de bloques anidadas: las secuencias de código y
las declaraciones asociadas se pueden agrupar en bloques sin tener que
pertenecer explícitamente a procedimientos separados.
1950 y 1960
–
™ Ámbito léxico: un bloque puede tener sus propias variables,
procedimientos y funciones, invisible al código fuera de dicho
bloque, por ejemplo, ocultamiento de información.
™ Otra innovación, relacionada con esto, fue cómo el lenguaje fue
descrito:
™ Una notación matemática exacta, Backus-Naur Form (BNF), fue
utilizada para describir la sintaxis del lenguaje. Todos los
subsecuentes lenguajes de programación han utilizado una
variante de BNF para describir la porción libre del contexto de su
sintaxis.
™ Algol 60 influenció particularmente en el diseño de lenguajes
posteriores, de los cuales algunos se hicieron más populares. Los
grandes sistemas de Burroughs fueron diseñados para ser
programados en un subconjunto extendido de Algol.
–™ Las variadas pero poco usadas características de Algol 68 (por ejemplo, bloques
simultáneos y paralelos) y su complejo sistema de atajos sintácticos y coerciones
automáticas de tipo lo hicieron impopular entre los ejecutores y se ganó una
reputación de ser difícil. Niklaus Wirth salió del comité de diseño para crear el
sencillo lenguaje Pascal.
™ Algunos de los lenguajes importantes que fueron desarrollados en este período
incluyen:
™ 1951 - Regional Assembly Language
™ 1952 - Autocode
™ 1954 - IPL (precursor de LISP)
™ 1955 - FLOW-MATIC (precursor de COBOL)
™ 1957 - FORTRAN (primer compilador)
™ 1957 - COMTRAN (precursor de COBOL)
™ 1958 – LISP.
–
™ 1958 - ALGOL 58
™ 1959 - FACT (precursor de COBOL)
™ 1959 - COBOL
™ 1959 - RPG
™ 1962 - APL
™ 1962 - Simula
™ 1962 - SNOBOL
™ 1963 - CPL (precursor de C)
™ 1964 - BASIC
™ 1964 - PL/I
™ 1967 - BCPL (precursor de C)
–™ El período comprendido entre finales de 1960 y finales de 1970 trajo un gran
florecimiento de lenguajes de programación. La mayoría de los paradigmas de
lenguajes de programación más importantes y actualmente en uso se inventaron en
este período:
™ Simula, inventado en la década de 1960 por Nygaard y Dahl como un superconjunto
de Algol 60, fue el primer lenguaje diseñado para apoyar la programación orientada
a objetos.
™ C, en principio un lenguaje de programación sistemas, fue desarrollado por Dennis
Ritchie y Ken Thompson en los Laboratorios Bell entre 1969 y 1973.
™ Smalltalk (mediados de los 70) proporcionaron un completo diseño de un lenguaje
orientado a objetos.
™ Prolog, diseñado en 1972 por Colmerauer, Roussel y Kowalski, fue el primer lenguaje
de programación lógica.
™ ML construyó un sistema de tipos polimórfico (inventado por Robin Milner en 1973)
en el tope de Lisp, pionero en los lenguajes funcionales de programación con tipado
estático.
1968-1979
–
™ En los años 60 y 70 también suscitó un debate considerable
sobre los méritos de la "programación estructurada", que
esencialmente significaba programación sin el uso de GOTO.
Este debate estaba estrechamente relacionado con el diseño del
lenguaje: algunos lenguajes no incluían GOTO, lo que obligó a
la programación estructurada en el programador. Aunque el
debate se recrudecía acaloradamente en ese momento, casi
todos los programadores están de acuerdo en que, incluso en
lenguajes que ofrecen GOTO, es una mala práctica de
programación usarlo, excepto en raras circunstancias. Como
resultado de ello, las generaciones posteriores de diseñadores
de lenguajes han encontrado el debate sobre programación
estructurada tedioso e incluso desconcertante.
–
™ Algunos lenguajes importantes que se desarrollaron en este período
fueron:
™ 1968 - Logo
™ 1969 - B (precursor C)
™ 1970 - Pascal
™ 1970 - Forth
™ 1972 - C
™ 1972 - Smalltalk
™ 1972 - Prolog
™ 1973 - ML
™ 1975 - Scheme
™ 1978 - SQL (inicialmente sólo un lenguaje de consulta, posteriormente
ampliado con construcciones de programación)
–
™ La década de 1980 fueron años de consolidación relativa en los
lenguajes imperativos. En vez de inventar nuevos paradigmas,
se comenzó a trabajar a partir de las ideas inventadas en la
década anterior. C++ combinaba la programación orientada a
objetos y la programación de sistemas. El gobierno de Estados
Unidos estandarizó Ada, un lenguaje de programación de
sistemas destinado a ser utilizado por contratistas de defensa.
En Japón y en otras partes, se gastaron enormes sumas
investigando los llamados lenguajes de programación de quinta
generación que incorporaban construcciones de la
programación lógica. La comunidad de los lenguajes
funcionales llevaron a cabo la estandarización de ML y Lisp. La
investigación en Miranda, un lenguaje funcional, con
evaluación perezosa, comenzó a tomar fuerza en esta década.
La década de 1980: consolidación,
módulos, rendimiento
–
™ La década de 1980 también trajo avances en la
implementación de lenguajes de programación. El
movimiento de RISC en la arquitectura de
computadoras postulaba que el hardware debía estar
diseñado para los compiladores más que para los
programadores de ensamblador humanos. Con la
ayuda de las mejoras en la velocidad del procesador,
permitiendo técnicas de compilación cada vez más
agresivas, el movimiento RISC despertó un mayor
interés en la tecnología de compilación de los
lenguajes de alto nivel.
–™ Las tecnologías de los lenguajes continuaron sobre estas líneas entrando en la década
de 1990.
™ Algunos lenguajes importantes que se desarrollaron en este período son:
™ 1980 - C++ (C con clases, el nombre cambió en julio de 1983)
™ 1983 - Ada
™ 1984 - Common Lisp
™ 1984 - MATLAB
™ 1985 - Eiffel
™ 1986 - Objective-C
™ 1986 - Erlang
™ 1987 - Perl
™ 1988 - Tcl
™ 1988 - Mathematica
™ 1989 - FL (Backus);
1990
–
™ El rápido crecimiento de Internet en la década de 1990 fue el
siguiente gran acontecimiento histórico para los lenguajes de
programación. Con la apertura de una plataforma totalmente
nueva para los sistemas informáticos, Internet creó una
oportunidad adoptar nuevos lenguajes. En particular, el
lenguaje de programación Java se hizo popular debido a su
pronta integración con el navegador web Netscape Navigator, y
varios lenguajes de scripting alcanzaron un amplio uso en el
desarrollo de aplicaciones personalizadas para servidores web.
La década de 1990 no vio ninguna novedad fundamental en los
lenguajes imperativos, pero sí mucha recombinación y la
maduración de viejas ideas. Esta era comenzó la difusión de los
lenguajes funcionales. Una filosofía de conducción grande era
la productividad del programador.
1990
–
™ Surgieron muchos lenguajes de “aplicaciones de desarrollo
rápido” (RAD), los cuales usualmente venían con un IDE,
recolector de basura, y eran descendientes de lenguajes
anteriores. Todos estos lenguajes eran orientados a objeto. Estos
incluían Object Pascal, Visual Basic y Java. Java, en particular,
recibió mucha atención. Pero más radicales e innovadores que
los lenguajes de RAD eran los nuevos lenguajes de script. Estos
no descendían directamente de otros lenguajes y ofrecieron
nuevas sintaxis e incorporación más liberal de otras
características. Muchos consideran estos lenguajes de script más
productivos que los lenguajes de RAD, aunque esto se debe a
menudo a que es más difícil escribir y mantener largos
programas que pequeños programas simples. Sin embargo, no
es menos cierto que los programas de script llegaron para
convertirse en los más prominentes en la conexión con la Web.
–™ Algunos lenguajes importantes que se desarrollaron en este período son:
™ 1990 - Haskell
™ 1991 - Python
™ 1991 - Visual Basic
™ 1991 - HTML (lenguaje de marcado de hipertexto)
™ 1993 - Ruby
™ 1993 - Lua
™ 1994 - CLOS (parte del ANSI Common Lisp)
™ 1995 - Java
™ 1995 - Delphi (Object Pascal)
™ 1995 - JavaScript
™ 1995 - PHP
™ 1996 - WebDNA
™ 1997 - Rebol
™ 1999 - D
–™ La evolución de los lenguajes de programación continúa, tanto en la industria como
en investigación. Algunas de las tendencias actuales incluyen:
™ Aumentar el soporte para la programación funcional en lenguajes importantes
utilizados comercialmente, incluida la programación funcional pura para hacer el
código más fácil de razonar y de paralelizar (tanto en macro como en micro-niveles).
™ Construir lenguajes para apoyar la programación concurrente y distribuida.
™ Mecanismos para añadir al lenguaje verificación en cuanto a seguridad y
confiabilidad: chequeo sintáctico extendido, control de flujo de información,
seguridad de hilos.
™ Mecanismos alternativos de modularidad: mixins, delegados, aspectos.
™ Desarrollo de software orientado a componentes.
™ Meta programación, la reflexión o el acceso al árbol de sintaxis abstracta.
™ Mayor énfasis en cuanto a distribución y movilidad.
™ Integración con bases de datos, incluyendo XML y bases de datos relacionales.
ACTUALIDAD
–™ XML para interfaz gráfica (XUL, XAML).
™ El código abierto como una filosofía de desarrollo de lenguajes, incluyendo la colección de
compiladores de GNU y lenguajes recientes, como Python, Ruby, y Squeak.
™ Programación Orientada a Aspectos (AOP).
™ Lenguajes que soporten programar sobre los procesadores de la GPU en paralelo, como OpenCL.
™ Algunos lenguajes importantes desarrollados durante este período incluyen:
™ 2000 - ActionScript
™ 2001 - C#
™ 2001 - Visual Basic .NET
™ 2002 - F#
™ 2003 - Groovy
™ 2003 - Scala
™ 2003 - Factor
™ 2007 - Clojure
™ 2009 - Go
™ 2011 - Dart
–
™ La programación orientada a objetos (POO, u 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 informáticos.
™ Está basada en varias técnicas, incluyendo herencia,
cohesión, abstracción, polimorfismo, acoplamiento y
encapsulamiento.
™ Su uso se popularizó a principios de la década de 1990.
En la actualidad, existe una gran variedad de lenguajes de
programación que soportan la orientación a objetos.
Programación orientada a
objetos
–
™ Los objetos son entidades que tienen un determinado "estado",
"comportamiento (método)" e "identidad":
™ La identidad es una propiedad de un objeto que lo diferencia del
resto; dicho con otras palabras, es su identificador (concepto
análogo al de identificador de una variable o una constante).
™ Un objeto contiene toda la información que permite definirlo e
identificarlo frente a otros objetos pertenecientes a otras clases e
incluso frente a objetos de una misma clase, al poder tener valores
bien diferenciados en sus atributos. A su vez, los objetos disponen
de mecanismos de interacción llamados métodos, que favorecen la
comunicación entre ellos. Esta comunicación favorece a su vez el
cambio de estado en los propios objetos. Esta característica lleva a
tratarlos como unidades indivisibles, en las que no se separa el
estado y el comportamiento.
–™ Los métodos (comportamiento) y atributos (estado) están estrechamente relacionados
por la propiedad de conjunto. Esta propiedad destaca que una clase requiere de
métodos para poder tratar los atributos con los que cuenta. El programador debe
pensar indistintamente en ambos conceptos, sin separar ni darle mayor importancia a
alguno de ellos. Hacerlo podría producir el hábito erróneo de crear clases
contenedoras de información por un lado y clases con métodos que manejen a las
primeras por el otro. De esta manera se estaría realizando una "programación
estructurada camuflada" en un lenguaje de POO.
™ La programación orientada a objetos difiere de la programación estructurada
tradicional, en la que los datos y los procedimientos están separados y sin relación,
ya que lo único que se busca es el procesamiento de unos datos de entrada para
obtener otros de salida. La programación estructurada anima al programador a
pensar sobre todo en términos de procedimientos o funciones, y en segundo lugar en
las estructuras de datos que esos procedimientos manejan. En la programación
estructurada solo se escriben funciones que procesan datos. Los programadores que
emplean POO, en cambio, primero definen objetos para luego enviarles mensajes
solicitándoles que realicen sus métodos por sí mismos.
–™ Los conceptos de la POO tienen origen en Simula 67, un lenguaje diseñado para
hacer simulaciones, creado por Ole-Johan Dahl y Kristen Nygaard, del Centro de
Cómputo Noruego en Oslo. En este centro se trabajaba en simulaciones de naves, que
fueron confundidas por la explosión combinatoria de cómo las diversas cualidades
de diferentes naves podían afectar unas a las otras. La idea surgió al agrupar los
diversos tipos de naves en diversas clases de objetos, siendo responsable cada clase
de objetos de definir sus "propios" datos y comportamientos. Fueron refinados más
tarde en Smalltalk, desarrollado en Simula en Xerox PARC (cuya primera versión fue
escrita sobre Basic) pero diseñado para ser un sistema completamente dinámico en el
cual los objetos se podrían crear y modificar "sobre la marcha" (en tiempo de
ejecución) en lugar de tener un sistema basado en programas estáticos.
™ La POO se fue convirtiendo en el estilo de programación dominante a mediados de
los años 1980, en gran parte debido a la influencia de C++, una extensión del lenguaje
de programación C. Su dominación fue consolidada gracias al auge de las interfaces
gráficas de usuario, para las cuales la POO está particularmente bien adaptada. En
este caso, se habla también de programación dirigida por eventos
ORIGEN
–™ La POO es una forma de programar que trata de encontrar una solución a estos problemas. Introduce nuevos
conceptos, que superan y amplían conceptos antiguos ya conocidos. Entre ellos destacan los siguientes:
™ Clase
™ Definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de
estas definiciones y la creación de un objeto a partir de ella.
™ Herencia
™ Por ejemplo, herencia de la clase C a la clase D, es la facilidad mediante la cual la clase D hereda en ella cada uno de
los atributos y operaciones de C, como si esos atributos y operaciones hubiesen sido definidos por la misma D. Por
lo tanto, puede usar los mismos métodos y variables públicas declaradas en C. Los componentes registrados como
"privados" (private) también se heredan, pero como no pertenecen a la clase, se mantienen escondidos al
programador y sólo pueden ser accedidos a través de otros métodos públicos. Esto es así para mantener
hegemónico el ideal de POO.
™ Objeto
™ Instancia de una clase. Entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o
funcionalidad (métodos), los mismos que consecuentemente reaccionan a eventos. Se corresponden con los objetos
reales del mundo que nos rodea, o con objetos internos del sistema (del programa).
™ Método
™ Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un
"mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede producir
un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del
sistema.
Conceptos
fundamentales
–
™ Evento
™ Es un suceso en el sistema (tal como una interacción del usuario con la
máquina, o un mensaje enviado por un objeto). El sistema maneja el evento
enviando el mensaje adecuado al objeto pertinente. También se puede
definir como evento la reacción que puede desencadenar un objeto; es
decir, la acción que genera.
™ Atributos
™ Características que tiene la clase.
™ Mensaje
™ Una comunicación dirigida a un objeto, que le ordena que ejecute uno de
sus métodos con ciertos parámetros asociados al evento que lo generó.
™ Propiedad o atributo
™ Contenedor de un tipo de datos asociados a un objeto (o a una clase de
objetos), que hace los datos visibles desde fuera del objeto y esto se define
como sus características predeterminadas, y cuyo valor puede ser alterado
por la ejecución de algún método.
–
™ Estado interno Es una variable que se declara privada,
que puede ser únicamente accedida y alterada por un
método del objeto, y que se utiliza para indicar distintas
situaciones posibles para el objeto (o clase de objetos). No
es visible al programador que maneja una instancia de la
clase. Componentes de un objeto Atributos, identidad,
relaciones y métodos. Identificación de un objeto Un
objeto se representa por medio de una tabla o entidad que
esté compuesta por sus atributos y funciones
correspondientes. En comparación con un lenguaje
imperativo, una "variable" no es más que un contenedor
interno del atributo del objeto o de un estado interno, así
como la "función" es un procedimiento interno del
método del objeto.
–
™ La POO es un paradigma surgido en los años 1970,
que utiliza objetos como elementos fundamentales
en la construcción de la solución. Un objeto es una
abstracción de algún hecho o ente del mundo real,
con atributos que representan sus características o
propiedades, y métodos que emulan su
comportamiento o actividad. Todas las propiedades
y métodos comunes a los objetos se encapsulan o
agrupan en clases. Una clase es una plantilla, un
prototipo para crear objetos; en general, se dice que
cada objeto es una instancia o ejemplar de una clase.
SINTAXIS
PARADIGMA

Más contenido relacionado

La actualidad más candente

Historia de los_lenguajes
Historia de los_lenguajesHistoria de los_lenguajes
Historia de los_lenguajes
Aquino1912
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempoLibertad25
 
Línea de-tiempo-del-lenguaje-de-programación
Línea de-tiempo-del-lenguaje-de-programaciónLínea de-tiempo-del-lenguaje-de-programación
Línea de-tiempo-del-lenguaje-de-programación
ArmandoC42
 
lenguaje de Programacion
lenguaje de Programacionlenguaje de Programacion
lenguaje de Programacion
christian0396
 
HISTORIA DE LA PROGRAMACION
HISTORIA DE LA PROGRAMACIONHISTORIA DE LA PROGRAMACION
HISTORIA DE LA PROGRAMACION
Fredy Olaya
 
Evolución de los Lenguajes de Programación.
Evolución de los Lenguajes de Programación.Evolución de los Lenguajes de Programación.
Evolución de los Lenguajes de Programación.Anastacio Mendoza
 
Historia de los lenguajes de programación
Historia de los lenguajes de programación Historia de los lenguajes de programación
Historia de los lenguajes de programación
Dariany Rodriguez
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempoLibertad25
 
Linea del tiempo historia de la programacion
Linea del tiempo historia de la programacionLinea del tiempo historia de la programacion
Linea del tiempo historia de la programacion
RobertoCarlos523
 
Historia de la programacion (linea del tiempo)
Historia de la programacion (linea del tiempo)Historia de la programacion (linea del tiempo)
Historia de la programacion (linea del tiempo)
kevin antonio
 
Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Hugo Vallejo
 
Historia De Los Lenguajes De Programacin3249
Historia De Los Lenguajes De Programacin3249Historia De Los Lenguajes De Programacin3249
Historia De Los Lenguajes De Programacin3249gus19
 
Clasificacion de los lenguales de programacion
Clasificacion de los lenguales de programacionClasificacion de los lenguales de programacion
Clasificacion de los lenguales de programacionbryan1198
 
Lenguajes de programación saia
Lenguajes de programación saiaLenguajes de programación saia
Lenguajes de programación saia
GLORIASAVO
 
L I N E A D E L T I E M P O D E L E N G
L I N E A  D E L  T I E M P O  D E  L E N GL I N E A  D E L  T I E M P O  D E  L E N G
L I N E A D E L T I E M P O D E L E N Gkorii
 
Lenguajes de Programacion
Lenguajes de ProgramacionLenguajes de Programacion
Lenguajes de Programacion
sam9205
 
Lenguajes de Programacion
Lenguajes de ProgramacionLenguajes de Programacion
Lenguajes de Programacion
sam9205
 
Linea
LineaLinea
Linea
dani t
 

La actualidad más candente (20)

Historia de los_lenguajes
Historia de los_lenguajesHistoria de los_lenguajes
Historia de los_lenguajes
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Línea de-tiempo-del-lenguaje-de-programación
Línea de-tiempo-del-lenguaje-de-programaciónLínea de-tiempo-del-lenguaje-de-programación
Línea de-tiempo-del-lenguaje-de-programación
 
lenguaje de Programacion
lenguaje de Programacionlenguaje de Programacion
lenguaje de Programacion
 
HISTORIA DE LA PROGRAMACION
HISTORIA DE LA PROGRAMACIONHISTORIA DE LA PROGRAMACION
HISTORIA DE LA PROGRAMACION
 
Evolución de los Lenguajes de Programación.
Evolución de los Lenguajes de Programación.Evolución de los Lenguajes de Programación.
Evolución de los Lenguajes de Programación.
 
Historia de los lenguajes de programación
Historia de los lenguajes de programación Historia de los lenguajes de programación
Historia de los lenguajes de programación
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Linea del tiempo historia de la programacion
Linea del tiempo historia de la programacionLinea del tiempo historia de la programacion
Linea del tiempo historia de la programacion
 
Historia de la programacion (linea del tiempo)
Historia de la programacion (linea del tiempo)Historia de la programacion (linea del tiempo)
Historia de la programacion (linea del tiempo)
 
Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)
 
Historia De Los Lenguajes De Programacin3249
Historia De Los Lenguajes De Programacin3249Historia De Los Lenguajes De Programacin3249
Historia De Los Lenguajes De Programacin3249
 
Integrantes
IntegrantesIntegrantes
Integrantes
 
Clasificacion de los lenguales de programacion
Clasificacion de los lenguales de programacionClasificacion de los lenguales de programacion
Clasificacion de los lenguales de programacion
 
Lenguajes de programación saia
Lenguajes de programación saiaLenguajes de programación saia
Lenguajes de programación saia
 
L I N E A D E L T I E M P O D E L E N G
L I N E A  D E L  T I E M P O  D E  L E N GL I N E A  D E L  T I E M P O  D E  L E N G
L I N E A D E L T I E M P O D E L E N G
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Lenguajes de Programacion
Lenguajes de ProgramacionLenguajes de Programacion
Lenguajes de Programacion
 
Lenguajes de Programacion
Lenguajes de ProgramacionLenguajes de Programacion
Lenguajes de Programacion
 
Linea
LineaLinea
Linea
 

Destacado

Cronologia de los Lenguajes de Programación
Cronologia de los Lenguajes de ProgramaciónCronologia de los Lenguajes de Programación
Cronologia de los Lenguajes de ProgramaciónIris Coronado
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
Cristian Duque
 
Fórmulas en excel
Fórmulas en excelFórmulas en excel
Fórmulas en excel
Uniminuto - San Francisco
 
Lenguajes de Programacion
Lenguajes de  ProgramacionLenguajes de  Programacion
Lenguajes de Programacion
oscarfr56
 
1.1. historia del lenguaje de programacion
1.1. historia del lenguaje de programacion1.1. historia del lenguaje de programacion
1.1. historia del lenguaje de programacionAlejandro Sanchez Jose
 
Los lenguajes de programación jose
Los lenguajes de programación joseLos lenguajes de programación jose
Los lenguajes de programación joseleiderserna
 
Historia de los Lenguajes de Programación
Historia de los Lenguajes de ProgramaciónHistoria de los Lenguajes de Programación
Historia de los Lenguajes de Programación
LILIANA06
 
Evolucion de los lenguajes de programación
Evolucion de los lenguajes de programaciónEvolucion de los lenguajes de programación
Evolucion de los lenguajes de programaciónfercho-nava
 
Formulas y funciones basicas vl
Formulas y funciones basicas vlFormulas y funciones basicas vl
Formulas y funciones basicas vlVaneLopez93
 
taller para practicar de word
taller para practicar de wordtaller para practicar de word
taller para practicar de wordCristian Leal
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
Andres Felipe Ruiz
 
Formulas y funciones de excel
Formulas y funciones de excelFormulas y funciones de excel
Formulas y funciones de excel
nancylol
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
farmero
 
Formulas y funciones básicas
Formulas y funciones básicasFormulas y funciones básicas
Formulas y funciones básicasGaby Dominguez
 
Ejercicio práctico 05 word 2007
Ejercicio práctico 05 word 2007Ejercicio práctico 05 word 2007
Ejercicio práctico 05 word 2007
Mayerly Martinez
 
Generaciones de los lenguajes de programación
Generaciones de los lenguajes de programaciónGeneraciones de los lenguajes de programación
Generaciones de los lenguajes de programación
romeprofe
 
LENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACIONLENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACION
DIEGO BAROJA
 
funciones y formulas basicas excel
funciones y formulas basicas excelfunciones y formulas basicas excel
funciones y formulas basicas excelThaliCris
 

Destacado (20)

Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Cronologia de los Lenguajes de Programación
Cronologia de los Lenguajes de ProgramaciónCronologia de los Lenguajes de Programación
Cronologia de los Lenguajes de Programación
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Fórmulas en excel
Fórmulas en excelFórmulas en excel
Fórmulas en excel
 
Lenguajes de Programacion
Lenguajes de  ProgramacionLenguajes de  Programacion
Lenguajes de Programacion
 
1.1. historia del lenguaje de programacion
1.1. historia del lenguaje de programacion1.1. historia del lenguaje de programacion
1.1. historia del lenguaje de programacion
 
Los lenguajes de programación jose
Los lenguajes de programación joseLos lenguajes de programación jose
Los lenguajes de programación jose
 
Historia de los Lenguajes de Programación
Historia de los Lenguajes de ProgramaciónHistoria de los Lenguajes de Programación
Historia de los Lenguajes de Programación
 
Evolucion de los lenguajes de programación
Evolucion de los lenguajes de programaciónEvolucion de los lenguajes de programación
Evolucion de los lenguajes de programación
 
Formulas y funciones basicas vl
Formulas y funciones basicas vlFormulas y funciones basicas vl
Formulas y funciones basicas vl
 
taller para practicar de word
taller para practicar de wordtaller para practicar de word
taller para practicar de word
 
Conceptos basicos algoritmos
Conceptos basicos algoritmosConceptos basicos algoritmos
Conceptos basicos algoritmos
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Formulas y funciones de excel
Formulas y funciones de excelFormulas y funciones de excel
Formulas y funciones de excel
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Formulas y funciones básicas
Formulas y funciones básicasFormulas y funciones básicas
Formulas y funciones básicas
 
Ejercicio práctico 05 word 2007
Ejercicio práctico 05 word 2007Ejercicio práctico 05 word 2007
Ejercicio práctico 05 word 2007
 
Generaciones de los lenguajes de programación
Generaciones de los lenguajes de programaciónGeneraciones de los lenguajes de programación
Generaciones de los lenguajes de programación
 
LENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACIONLENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACION
 
funciones y formulas basicas excel
funciones y formulas basicas excelfunciones y formulas basicas excel
funciones y formulas basicas excel
 

Similar a Lenguajes de programacion

historia de la programacion.docx
historia de la programacion.docxhistoria de la programacion.docx
historia de la programacion.docx
LeonardoLekat
 
Usdfuw(2)
Usdfuw(2)Usdfuw(2)
Linea del tiempo
Linea del tiempo Linea del tiempo
Linea del tiempo
Gabriel02LUNA
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
Laura Cortez
 
684551811-Computacion-2-Unidad-1.pdf
684551811-Computacion-2-Unidad-1.pdf684551811-Computacion-2-Unidad-1.pdf
684551811-Computacion-2-Unidad-1.pdf
YesseniaMolina3
 
La evolución de los Lenguajes de Programación
La evolución de los Lenguajes de ProgramaciónLa evolución de los Lenguajes de Programación
La evolución de los Lenguajes de Programación
Alex Toapanta
 
Marina aguilar historiay_tiposdelenguajesdeprogramacion
Marina aguilar historiay_tiposdelenguajesdeprogramacionMarina aguilar historiay_tiposdelenguajesdeprogramacion
Marina aguilar historiay_tiposdelenguajesdeprogramacion
Jesus Cocom
 
Introducción a los lenguajes de programación.pptx
Introducción a los lenguajes de programación.pptxIntroducción a los lenguajes de programación.pptx
Introducción a los lenguajes de programación.pptx
GabrielAstete1
 
EVOLUCIOIN DE LA PROGRAMAMCION.docx
EVOLUCIOIN DE LA PROGRAMAMCION.docxEVOLUCIOIN DE LA PROGRAMAMCION.docx
EVOLUCIOIN DE LA PROGRAMAMCION.docx
JuanLuisHuloPoma2
 
El estudio de los lenguajes de programacion
El estudio de los lenguajes de programacionEl estudio de los lenguajes de programacion
El estudio de los lenguajes de programacion
Ashley Stronghold Witwicky
 
Cap1
Cap1Cap1
Cap1CJAO
 
La historia de la informática
La historia de la informáticaLa historia de la informática
La historia de la informática
montyoro
 
Los lenguajes de programación son herramientas que nos permiten crear program...
Los lenguajes de programación son herramientas que nos permiten crear program...Los lenguajes de programación son herramientas que nos permiten crear program...
Los lenguajes de programación son herramientas que nos permiten crear program...edwin6886
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programaciónJeennFdz
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programaciónmarco
 

Similar a Lenguajes de programacion (20)

Trabajo de programacion 1
Trabajo de programacion 1 Trabajo de programacion 1
Trabajo de programacion 1
 
historia de la programacion.docx
historia de la programacion.docxhistoria de la programacion.docx
historia de la programacion.docx
 
Usdfuw(2)
Usdfuw(2)Usdfuw(2)
Usdfuw(2)
 
Linea del tiempo
Linea del tiempo Linea del tiempo
Linea del tiempo
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
684551811-Computacion-2-Unidad-1.pdf
684551811-Computacion-2-Unidad-1.pdf684551811-Computacion-2-Unidad-1.pdf
684551811-Computacion-2-Unidad-1.pdf
 
La evolución de los Lenguajes de Programación
La evolución de los Lenguajes de ProgramaciónLa evolución de los Lenguajes de Programación
La evolución de los Lenguajes de Programación
 
Marina aguilar historiay_tiposdelenguajesdeprogramacion
Marina aguilar historiay_tiposdelenguajesdeprogramacionMarina aguilar historiay_tiposdelenguajesdeprogramacion
Marina aguilar historiay_tiposdelenguajesdeprogramacion
 
Historia
HistoriaHistoria
Historia
 
Introducción a los lenguajes de programación.pptx
Introducción a los lenguajes de programación.pptxIntroducción a los lenguajes de programación.pptx
Introducción a los lenguajes de programación.pptx
 
Paola y lorena
Paola y lorenaPaola y lorena
Paola y lorena
 
EVOLUCIOIN DE LA PROGRAMAMCION.docx
EVOLUCIOIN DE LA PROGRAMAMCION.docxEVOLUCIOIN DE LA PROGRAMAMCION.docx
EVOLUCIOIN DE LA PROGRAMAMCION.docx
 
Libro2
Libro2Libro2
Libro2
 
El estudio de los lenguajes de programacion
El estudio de los lenguajes de programacionEl estudio de los lenguajes de programacion
El estudio de los lenguajes de programacion
 
Cap1
Cap1Cap1
Cap1
 
Programación
ProgramaciónProgramación
Programación
 
La historia de la informática
La historia de la informáticaLa historia de la informática
La historia de la informática
 
Los lenguajes de programación son herramientas que nos permiten crear program...
Los lenguajes de programación son herramientas que nos permiten crear program...Los lenguajes de programación son herramientas que nos permiten crear program...
Los lenguajes de programación son herramientas que nos permiten crear program...
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 

Último

libro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdflibro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdf
MiriamAquino27
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
LuisLobatoingaruca
 
Joseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidadJoseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidad
KevinCabrera96
 
FISICA_Hidrostatica_uyhHidrodinamica.pdf
FISICA_Hidrostatica_uyhHidrodinamica.pdfFISICA_Hidrostatica_uyhHidrodinamica.pdf
FISICA_Hidrostatica_uyhHidrodinamica.pdf
JavierAlejosM
 
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuariaBOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
mesiassalazarpresent
 
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaaEspecificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
ssuserebb7f71
 
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALESLA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LuisLobatoingaruca
 
1º Caso Practico Lubricacion Rodamiento Motor 10CV
1º Caso Practico Lubricacion Rodamiento Motor 10CV1º Caso Practico Lubricacion Rodamiento Motor 10CV
1º Caso Practico Lubricacion Rodamiento Motor 10CV
CarlosAroeira1
 
Edafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden HistosolesEdafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden Histosoles
FacundoPortela1
 
Criterios de la primera y segunda derivada
Criterios de la primera y segunda derivadaCriterios de la primera y segunda derivada
Criterios de la primera y segunda derivada
YoverOlivares
 
HITO DE CONTROL N° 011-2024-OCI5344-SCC SAN PATRICIO.pdf
HITO DE CONTROL N° 011-2024-OCI5344-SCC SAN PATRICIO.pdfHITO DE CONTROL N° 011-2024-OCI5344-SCC SAN PATRICIO.pdf
HITO DE CONTROL N° 011-2024-OCI5344-SCC SAN PATRICIO.pdf
GROVER MORENO
 
Distribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de MediasDistribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de Medias
arielemelec005
 
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOSAnálisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
ppame8010
 
PLAN DE EMERGENCIAS Y EVACUACION 2024.pdf
PLAN DE EMERGENCIAS Y EVACUACION 2024.pdfPLAN DE EMERGENCIAS Y EVACUACION 2024.pdf
PLAN DE EMERGENCIAS Y EVACUACION 2024.pdf
Daniel Jose Sierra Garcia
 
Hidrostatica_e_Hidrodinamica.pdggggggggf
Hidrostatica_e_Hidrodinamica.pdggggggggfHidrostatica_e_Hidrodinamica.pdggggggggf
Hidrostatica_e_Hidrodinamica.pdggggggggf
JavierAlejosM
 
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
HaroldKewinCanaza1
 
Material magnetismo.pdf material del electromagnetismo con fórmulas
Material magnetismo.pdf material del electromagnetismo con fórmulasMaterial magnetismo.pdf material del electromagnetismo con fórmulas
Material magnetismo.pdf material del electromagnetismo con fórmulas
michiotes33
 
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADPRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
mirellamilagrosvf
 
Sesiones 3 y 4 Estructuras Ingenieria.pdf
Sesiones 3 y 4 Estructuras Ingenieria.pdfSesiones 3 y 4 Estructuras Ingenieria.pdf
Sesiones 3 y 4 Estructuras Ingenieria.pdf
DeyvisPalomino2
 
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOLNORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
Pol Peña Quispe
 

Último (20)

libro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdflibro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdf
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
 
Joseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidadJoseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidad
 
FISICA_Hidrostatica_uyhHidrodinamica.pdf
FISICA_Hidrostatica_uyhHidrodinamica.pdfFISICA_Hidrostatica_uyhHidrodinamica.pdf
FISICA_Hidrostatica_uyhHidrodinamica.pdf
 
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuariaBOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
 
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaaEspecificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALESLA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
 
1º Caso Practico Lubricacion Rodamiento Motor 10CV
1º Caso Practico Lubricacion Rodamiento Motor 10CV1º Caso Practico Lubricacion Rodamiento Motor 10CV
1º Caso Practico Lubricacion Rodamiento Motor 10CV
 
Edafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden HistosolesEdafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden Histosoles
 
Criterios de la primera y segunda derivada
Criterios de la primera y segunda derivadaCriterios de la primera y segunda derivada
Criterios de la primera y segunda derivada
 
HITO DE CONTROL N° 011-2024-OCI5344-SCC SAN PATRICIO.pdf
HITO DE CONTROL N° 011-2024-OCI5344-SCC SAN PATRICIO.pdfHITO DE CONTROL N° 011-2024-OCI5344-SCC SAN PATRICIO.pdf
HITO DE CONTROL N° 011-2024-OCI5344-SCC SAN PATRICIO.pdf
 
Distribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de MediasDistribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de Medias
 
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOSAnálisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
 
PLAN DE EMERGENCIAS Y EVACUACION 2024.pdf
PLAN DE EMERGENCIAS Y EVACUACION 2024.pdfPLAN DE EMERGENCIAS Y EVACUACION 2024.pdf
PLAN DE EMERGENCIAS Y EVACUACION 2024.pdf
 
Hidrostatica_e_Hidrodinamica.pdggggggggf
Hidrostatica_e_Hidrodinamica.pdggggggggfHidrostatica_e_Hidrodinamica.pdggggggggf
Hidrostatica_e_Hidrodinamica.pdggggggggf
 
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
UNIVERSIDAD NACIONAL ALTIPLANO PUNO - FACULTAD DE INGENIERIA MECANICA ELECTRICA.
 
Material magnetismo.pdf material del electromagnetismo con fórmulas
Material magnetismo.pdf material del electromagnetismo con fórmulasMaterial magnetismo.pdf material del electromagnetismo con fórmulas
Material magnetismo.pdf material del electromagnetismo con fórmulas
 
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADPRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
 
Sesiones 3 y 4 Estructuras Ingenieria.pdf
Sesiones 3 y 4 Estructuras Ingenieria.pdfSesiones 3 y 4 Estructuras Ingenieria.pdf
Sesiones 3 y 4 Estructuras Ingenieria.pdf
 
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOLNORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
NORMATIVA AMERICANA ASME B30.5-2021 ESPAÑOL
 

Lenguajes de programacion

  • 2. – ™ A diario interactuamos con distintos tipos de máquinas como celulares, tablets y computadores. Todos ellos tienen un lenguaje de programación que ayuda a traducir las órdenes del usuario para que pueda utilizarlos. ™ Un lenguaje de programación es básicamente un sistema estructurado de comunicación, similar al humano, el cual nos permite comunicarnos por medio de signos, ya sean palabras, sonidos o gestos. Refiriéndonos a los aparatos, este sistema está organizado para que se entiendan entre sí y a su vez interprete las instrucciones que debe ejecutar. ™ El término programación se define como un conjunto de instrucciones consecutivas y ordenadas que llevan a ejecutar una tarea específica. Dichas instrucciones se denominan “código fuente”, el cual es único para cada lenguaje y está diseñado para cumplir una función o propósito específico. Usan diferentes normas o bases para controlar el comportamiento de un dispositivo y también pueden ser usados para crear programas informáticos
  • 3. – 1801 Los primeros lenguajes de programación preceden a la computadora moderna. En un inicio los lenguajes eran códigos. La máquina del telar de Jacquard, creada en 1801, utilizaba los orificios en tarjetas perforadas para representar los movimientos de un brazo de la máquina de tejer, con el objetivo de generar patrones decorativos automáticamente. LINEA DE TIEMPO
  • 4. – Durante un período de nueve meses entre 1842 y 1843, Ada Lovelace tradujo las memorias del matemático italiano Luigi Menabrea acerca de la nueva máquina propuesta por Charles Babbage, la Máquina Analítica. Con estos escritos, ella añadió unas notas en las cuales especificaba en detalle un método para calcular los números de Bernoulli con esta máquina, el cual es reconocido por muchos historiadores como el primer programa de computadora del mundo. Herman Hollerith se percató de que podía codificar la información en tarjetas perforadas cuando observó a los conductores de trenes codificar la apariencia de los tickets del tren con la posición de los agujeros perforados en estos. 1842 y 1843
  • 5. – ™ En 1890 Hollerith codificó los datos del censo en tarjetas perforadas. ™ Los primeros códigos de computadora estaban especializados según sus aplicaciones. En las primeras décadas del siglo 20, los cálculos numéricos estaban basados en los números decimales. Eventualmente se fueron dando cuenta que la lógica podía ser representada con números, no sólo con palabras. Por ejemplo, Alonzo Church fue capaz de expresar el cálculo lambda a través de fórmulas. La máquina de Turing estableció las bases para almacenar programas como datos en la arquitectura de von Neuman de una computadora. Sin embargo, a diferencia del cálculo lambda, el código de Turing no serviría satisfactoriamente como base para lenguajes de más alto nivel- su principal uso es en el análisis riguroso en la complejidad algorítmica. 1890
  • 6. – ™ En la década de 1940 fueron creadas las primeras computadoras modernas, con alimentación eléctrica. La velocidad y capacidad de memoria limitadas forzaron a los programadores a escribir programas, en lenguaje ensamblador muy afinados. Finalmente se dieron cuenta de que la programación en lenguaje ensamblador requería de un gran esfuerzo intelectual y era muy propensa a errores. 1940
  • 7. – ™ En 1948, Konrad Zuse publicó un artículo acerca de su lenguaje de programación Plankalkül. Sin embargo, no fue implementado en su vida y sus contribuciones fueron aisladas de otros desarrollos. ™ Entre algunos lenguajes importantes que fueron desarrollados en este período se encuentran: ™ 1943 - Plankalkül (Konrad Zuse), diseñado, pero sin implementar durante medio siglo ™ 1943 - el sistema de codificación ENIAC. ™ 1949 - 1954 -- una serie de conjuntos de instrucciones nemotécnicas, como la de ENIAC, comenzando en 1949 con C-10 para BINAC (que luego evolucionaría en UNIVAC). Cada conjunto de instrucciones estaba destinado a un fabricante específico. 1948
  • 8. – ™ En los cincuenta, los tres primeros lenguajes de programación modernos, cuyos descendientes aún continúan siendo utilizados, son: ™ FORTRAN (1955), creado por John Backus et al.; ™ LISP (1958), creado por John McCarthy et al.; ™ COBOL (1959), creado por el Short Range Committee, altamente influenciado por Grace Hopper. ™ Otro hito a finales de 1950 fue la publicación, por un comité Americano y Europeo de científicos de la computación, de un nuevo “lenguaje para algoritmos”; el Reporte de ALGOL 60 ("ALGOrithmic Language"). Este reporte consolidó muchas ideas que estaban circulando en aquel entonces, y proporcionó dos innovaciones importantes para los lenguajes de programación: Estructuras de bloques anidadas: las secuencias de código y las declaraciones asociadas se pueden agrupar en bloques sin tener que pertenecer explícitamente a procedimientos separados. 1950 y 1960
  • 9. – ™ Ámbito léxico: un bloque puede tener sus propias variables, procedimientos y funciones, invisible al código fuera de dicho bloque, por ejemplo, ocultamiento de información. ™ Otra innovación, relacionada con esto, fue cómo el lenguaje fue descrito: ™ Una notación matemática exacta, Backus-Naur Form (BNF), fue utilizada para describir la sintaxis del lenguaje. Todos los subsecuentes lenguajes de programación han utilizado una variante de BNF para describir la porción libre del contexto de su sintaxis. ™ Algol 60 influenció particularmente en el diseño de lenguajes posteriores, de los cuales algunos se hicieron más populares. Los grandes sistemas de Burroughs fueron diseñados para ser programados en un subconjunto extendido de Algol.
  • 10. –™ Las variadas pero poco usadas características de Algol 68 (por ejemplo, bloques simultáneos y paralelos) y su complejo sistema de atajos sintácticos y coerciones automáticas de tipo lo hicieron impopular entre los ejecutores y se ganó una reputación de ser difícil. Niklaus Wirth salió del comité de diseño para crear el sencillo lenguaje Pascal. ™ Algunos de los lenguajes importantes que fueron desarrollados en este período incluyen: ™ 1951 - Regional Assembly Language ™ 1952 - Autocode ™ 1954 - IPL (precursor de LISP) ™ 1955 - FLOW-MATIC (precursor de COBOL) ™ 1957 - FORTRAN (primer compilador) ™ 1957 - COMTRAN (precursor de COBOL) ™ 1958 – LISP.
  • 11. – ™ 1958 - ALGOL 58 ™ 1959 - FACT (precursor de COBOL) ™ 1959 - COBOL ™ 1959 - RPG ™ 1962 - APL ™ 1962 - Simula ™ 1962 - SNOBOL ™ 1963 - CPL (precursor de C) ™ 1964 - BASIC ™ 1964 - PL/I ™ 1967 - BCPL (precursor de C)
  • 12. –™ El período comprendido entre finales de 1960 y finales de 1970 trajo un gran florecimiento de lenguajes de programación. La mayoría de los paradigmas de lenguajes de programación más importantes y actualmente en uso se inventaron en este período: ™ Simula, inventado en la década de 1960 por Nygaard y Dahl como un superconjunto de Algol 60, fue el primer lenguaje diseñado para apoyar la programación orientada a objetos. ™ C, en principio un lenguaje de programación sistemas, fue desarrollado por Dennis Ritchie y Ken Thompson en los Laboratorios Bell entre 1969 y 1973. ™ Smalltalk (mediados de los 70) proporcionaron un completo diseño de un lenguaje orientado a objetos. ™ Prolog, diseñado en 1972 por Colmerauer, Roussel y Kowalski, fue el primer lenguaje de programación lógica. ™ ML construyó un sistema de tipos polimórfico (inventado por Robin Milner en 1973) en el tope de Lisp, pionero en los lenguajes funcionales de programación con tipado estático. 1968-1979
  • 13. – ™ En los años 60 y 70 también suscitó un debate considerable sobre los méritos de la "programación estructurada", que esencialmente significaba programación sin el uso de GOTO. Este debate estaba estrechamente relacionado con el diseño del lenguaje: algunos lenguajes no incluían GOTO, lo que obligó a la programación estructurada en el programador. Aunque el debate se recrudecía acaloradamente en ese momento, casi todos los programadores están de acuerdo en que, incluso en lenguajes que ofrecen GOTO, es una mala práctica de programación usarlo, excepto en raras circunstancias. Como resultado de ello, las generaciones posteriores de diseñadores de lenguajes han encontrado el debate sobre programación estructurada tedioso e incluso desconcertante.
  • 14. – ™ Algunos lenguajes importantes que se desarrollaron en este período fueron: ™ 1968 - Logo ™ 1969 - B (precursor C) ™ 1970 - Pascal ™ 1970 - Forth ™ 1972 - C ™ 1972 - Smalltalk ™ 1972 - Prolog ™ 1973 - ML ™ 1975 - Scheme ™ 1978 - SQL (inicialmente sólo un lenguaje de consulta, posteriormente ampliado con construcciones de programación)
  • 15. – ™ La década de 1980 fueron años de consolidación relativa en los lenguajes imperativos. En vez de inventar nuevos paradigmas, se comenzó a trabajar a partir de las ideas inventadas en la década anterior. C++ combinaba la programación orientada a objetos y la programación de sistemas. El gobierno de Estados Unidos estandarizó Ada, un lenguaje de programación de sistemas destinado a ser utilizado por contratistas de defensa. En Japón y en otras partes, se gastaron enormes sumas investigando los llamados lenguajes de programación de quinta generación que incorporaban construcciones de la programación lógica. La comunidad de los lenguajes funcionales llevaron a cabo la estandarización de ML y Lisp. La investigación en Miranda, un lenguaje funcional, con evaluación perezosa, comenzó a tomar fuerza en esta década. La década de 1980: consolidación, módulos, rendimiento
  • 16. – ™ La década de 1980 también trajo avances en la implementación de lenguajes de programación. El movimiento de RISC en la arquitectura de computadoras postulaba que el hardware debía estar diseñado para los compiladores más que para los programadores de ensamblador humanos. Con la ayuda de las mejoras en la velocidad del procesador, permitiendo técnicas de compilación cada vez más agresivas, el movimiento RISC despertó un mayor interés en la tecnología de compilación de los lenguajes de alto nivel.
  • 17. –™ Las tecnologías de los lenguajes continuaron sobre estas líneas entrando en la década de 1990. ™ Algunos lenguajes importantes que se desarrollaron en este período son: ™ 1980 - C++ (C con clases, el nombre cambió en julio de 1983) ™ 1983 - Ada ™ 1984 - Common Lisp ™ 1984 - MATLAB ™ 1985 - Eiffel ™ 1986 - Objective-C ™ 1986 - Erlang ™ 1987 - Perl ™ 1988 - Tcl ™ 1988 - Mathematica ™ 1989 - FL (Backus); 1990
  • 18. – ™ El rápido crecimiento de Internet en la década de 1990 fue el siguiente gran acontecimiento histórico para los lenguajes de programación. Con la apertura de una plataforma totalmente nueva para los sistemas informáticos, Internet creó una oportunidad adoptar nuevos lenguajes. En particular, el lenguaje de programación Java se hizo popular debido a su pronta integración con el navegador web Netscape Navigator, y varios lenguajes de scripting alcanzaron un amplio uso en el desarrollo de aplicaciones personalizadas para servidores web. La década de 1990 no vio ninguna novedad fundamental en los lenguajes imperativos, pero sí mucha recombinación y la maduración de viejas ideas. Esta era comenzó la difusión de los lenguajes funcionales. Una filosofía de conducción grande era la productividad del programador. 1990
  • 19. – ™ Surgieron muchos lenguajes de “aplicaciones de desarrollo rápido” (RAD), los cuales usualmente venían con un IDE, recolector de basura, y eran descendientes de lenguajes anteriores. Todos estos lenguajes eran orientados a objeto. Estos incluían Object Pascal, Visual Basic y Java. Java, en particular, recibió mucha atención. Pero más radicales e innovadores que los lenguajes de RAD eran los nuevos lenguajes de script. Estos no descendían directamente de otros lenguajes y ofrecieron nuevas sintaxis e incorporación más liberal de otras características. Muchos consideran estos lenguajes de script más productivos que los lenguajes de RAD, aunque esto se debe a menudo a que es más difícil escribir y mantener largos programas que pequeños programas simples. Sin embargo, no es menos cierto que los programas de script llegaron para convertirse en los más prominentes en la conexión con la Web.
  • 20. –™ Algunos lenguajes importantes que se desarrollaron en este período son: ™ 1990 - Haskell ™ 1991 - Python ™ 1991 - Visual Basic ™ 1991 - HTML (lenguaje de marcado de hipertexto) ™ 1993 - Ruby ™ 1993 - Lua ™ 1994 - CLOS (parte del ANSI Common Lisp) ™ 1995 - Java ™ 1995 - Delphi (Object Pascal) ™ 1995 - JavaScript ™ 1995 - PHP ™ 1996 - WebDNA ™ 1997 - Rebol ™ 1999 - D
  • 21. –™ La evolución de los lenguajes de programación continúa, tanto en la industria como en investigación. Algunas de las tendencias actuales incluyen: ™ Aumentar el soporte para la programación funcional en lenguajes importantes utilizados comercialmente, incluida la programación funcional pura para hacer el código más fácil de razonar y de paralelizar (tanto en macro como en micro-niveles). ™ Construir lenguajes para apoyar la programación concurrente y distribuida. ™ Mecanismos para añadir al lenguaje verificación en cuanto a seguridad y confiabilidad: chequeo sintáctico extendido, control de flujo de información, seguridad de hilos. ™ Mecanismos alternativos de modularidad: mixins, delegados, aspectos. ™ Desarrollo de software orientado a componentes. ™ Meta programación, la reflexión o el acceso al árbol de sintaxis abstracta. ™ Mayor énfasis en cuanto a distribución y movilidad. ™ Integración con bases de datos, incluyendo XML y bases de datos relacionales. ACTUALIDAD
  • 22. –™ XML para interfaz gráfica (XUL, XAML). ™ El código abierto como una filosofía de desarrollo de lenguajes, incluyendo la colección de compiladores de GNU y lenguajes recientes, como Python, Ruby, y Squeak. ™ Programación Orientada a Aspectos (AOP). ™ Lenguajes que soporten programar sobre los procesadores de la GPU en paralelo, como OpenCL. ™ Algunos lenguajes importantes desarrollados durante este período incluyen: ™ 2000 - ActionScript ™ 2001 - C# ™ 2001 - Visual Basic .NET ™ 2002 - F# ™ 2003 - Groovy ™ 2003 - Scala ™ 2003 - Factor ™ 2007 - Clojure ™ 2009 - Go ™ 2011 - Dart
  • 23. – ™ La programación orientada a objetos (POO, u 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 informáticos. ™ Está basada en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento. ™ Su uso se popularizó a principios de la década de 1990. En la actualidad, existe una gran variedad de lenguajes de programación que soportan la orientación a objetos. Programación orientada a objetos
  • 24. – ™ Los objetos son entidades que tienen un determinado "estado", "comportamiento (método)" e "identidad": ™ La identidad es una propiedad de un objeto que lo diferencia del resto; dicho con otras palabras, es su identificador (concepto análogo al de identificador de una variable o una constante). ™ Un objeto contiene toda la información que permite definirlo e identificarlo frente a otros objetos pertenecientes a otras clases e incluso frente a objetos de una misma clase, al poder tener valores bien diferenciados en sus atributos. A su vez, los objetos disponen de mecanismos de interacción llamados métodos, que favorecen la comunicación entre ellos. Esta comunicación favorece a su vez el cambio de estado en los propios objetos. Esta característica lleva a tratarlos como unidades indivisibles, en las que no se separa el estado y el comportamiento.
  • 25. –™ Los métodos (comportamiento) y atributos (estado) están estrechamente relacionados por la propiedad de conjunto. Esta propiedad destaca que una clase requiere de métodos para poder tratar los atributos con los que cuenta. El programador debe pensar indistintamente en ambos conceptos, sin separar ni darle mayor importancia a alguno de ellos. Hacerlo podría producir el hábito erróneo de crear clases contenedoras de información por un lado y clases con métodos que manejen a las primeras por el otro. De esta manera se estaría realizando una "programación estructurada camuflada" en un lenguaje de POO. ™ La programación orientada a objetos difiere de la programación estructurada tradicional, en la que los datos y los procedimientos están separados y sin relación, ya que lo único que se busca es el procesamiento de unos datos de entrada para obtener otros de salida. La programación estructurada anima al programador a pensar sobre todo en términos de procedimientos o funciones, y en segundo lugar en las estructuras de datos que esos procedimientos manejan. En la programación estructurada solo se escriben funciones que procesan datos. Los programadores que emplean POO, en cambio, primero definen objetos para luego enviarles mensajes solicitándoles que realicen sus métodos por sí mismos.
  • 26. –™ Los conceptos de la POO tienen origen en Simula 67, un lenguaje diseñado para hacer simulaciones, creado por Ole-Johan Dahl y Kristen Nygaard, del Centro de Cómputo Noruego en Oslo. En este centro se trabajaba en simulaciones de naves, que fueron confundidas por la explosión combinatoria de cómo las diversas cualidades de diferentes naves podían afectar unas a las otras. La idea surgió al agrupar los diversos tipos de naves en diversas clases de objetos, siendo responsable cada clase de objetos de definir sus "propios" datos y comportamientos. Fueron refinados más tarde en Smalltalk, desarrollado en Simula en Xerox PARC (cuya primera versión fue escrita sobre Basic) pero diseñado para ser un sistema completamente dinámico en el cual los objetos se podrían crear y modificar "sobre la marcha" (en tiempo de ejecución) en lugar de tener un sistema basado en programas estáticos. ™ La POO se fue convirtiendo en el estilo de programación dominante a mediados de los años 1980, en gran parte debido a la influencia de C++, una extensión del lenguaje de programación C. Su dominación fue consolidada gracias al auge de las interfaces gráficas de usuario, para las cuales la POO está particularmente bien adaptada. En este caso, se habla también de programación dirigida por eventos ORIGEN
  • 27. –™ La POO es una forma de programar que trata de encontrar una solución a estos problemas. Introduce nuevos conceptos, que superan y amplían conceptos antiguos ya conocidos. Entre ellos destacan los siguientes: ™ Clase ™ Definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ella. ™ Herencia ™ Por ejemplo, herencia de la clase C a la clase D, es la facilidad mediante la cual la clase D hereda en ella cada uno de los atributos y operaciones de C, como si esos atributos y operaciones hubiesen sido definidos por la misma D. Por lo tanto, puede usar los mismos métodos y variables públicas declaradas en C. Los componentes registrados como "privados" (private) también se heredan, pero como no pertenecen a la clase, se mantienen escondidos al programador y sólo pueden ser accedidos a través de otros métodos públicos. Esto es así para mantener hegemónico el ideal de POO. ™ Objeto ™ Instancia de una clase. Entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos), los mismos que consecuentemente reaccionan a eventos. Se corresponden con los objetos reales del mundo que nos rodea, o con objetos internos del sistema (del programa). ™ Método ™ Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema. Conceptos fundamentales
  • 28. – ™ Evento ™ Es un suceso en el sistema (tal como una interacción del usuario con la máquina, o un mensaje enviado por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente. También se puede definir como evento la reacción que puede desencadenar un objeto; es decir, la acción que genera. ™ Atributos ™ Características que tiene la clase. ™ Mensaje ™ Una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos con ciertos parámetros asociados al evento que lo generó. ™ Propiedad o atributo ™ Contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos), que hace los datos visibles desde fuera del objeto y esto se define como sus características predeterminadas, y cuyo valor puede ser alterado por la ejecución de algún método.
  • 29. – ™ Estado interno Es una variable que se declara privada, que puede ser únicamente accedida y alterada por un método del objeto, y que se utiliza para indicar distintas situaciones posibles para el objeto (o clase de objetos). No es visible al programador que maneja una instancia de la clase. Componentes de un objeto Atributos, identidad, relaciones y métodos. Identificación de un objeto Un objeto se representa por medio de una tabla o entidad que esté compuesta por sus atributos y funciones correspondientes. En comparación con un lenguaje imperativo, una "variable" no es más que un contenedor interno del atributo del objeto o de un estado interno, así como la "función" es un procedimiento interno del método del objeto.
  • 30. – ™ La POO es un paradigma surgido en los años 1970, que utiliza objetos como elementos fundamentales en la construcción de la solución. Un objeto es una abstracción de algún hecho o ente del mundo real, con atributos que representan sus características o propiedades, y métodos que emulan su comportamiento o actividad. Todas las propiedades y métodos comunes a los objetos se encapsulan o agrupan en clases. Una clase es una plantilla, un prototipo para crear objetos; en general, se dice que cada objeto es una instancia o ejemplar de una clase. SINTAXIS PARADIGMA