Вы находитесь на странице: 1из 6

INTERPRETE:

, intérprete o interpretador es un programa informático capaz de analizar y ejecutar otros


programas, escritos en un lenguaje de alto nivel. Los intérpretes se diferencian de
los compiladores en que mientras estos traducen un programa desde su descripción en
un lenguaje de programación al código de máquina del sistema, los intérpretes sólo
realizan la traducción a medida que sea necesaria, típicamente, instrucción por
instrucción, y normalmente no guardan el resultado de dicha traducción. Los programas
interpretados suelen ser más lentos que los compilados debido a la necesidad de traducir
el programa mientras se ejecuta, pero a cambio son más flexibles como entornos
de programación y de puración (lo que se traduce, por ejemplo, en una mayor facilidad
para reemplazar partes enteras del programa o añadir módulos completamente nuevos), y
permiten ofrecer al programa interpretado un entorno no dependiente de la máquina
donde se ejecuta el intérprete, sino del propio intérprete (lo que se conoce comúnmente
como máquina virtual).

COMPILADOR:
Un compilador es un programa informático que traduce un programa escrito en
un lenguaje de programación a otro lenguaje de programación, generando un programa
equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje
es lenguaje de máquina, pero también puede ser un código intermedio , o simplemente
texto. Este proceso de traducción se conoce como compilación.
Un compilador es un programa que permite traducir el código fuente de un programa
en lenguaje de alto nivel, a otro lenguaje de nivel inferior (típicamente lenguaje de
máquina). De esta manera un programador puede diseñar un programa en un lenguaje
mucho más cercano a como piensa un ser humano, para luego compilarlo a un programa
más manejable por una computadora.

ORIGEN DE C
El desarrollo inicial de C se llevó a cabo en los Laboratorios Bell de AT&T entre 1969 y
1973; según Dennis Ritchie, el periodo más creativo tuvo lugar en 1972. Se le dio el
nombre "C" porque muchas de sus características fueron tomadas de un lenguaje anterior
llamado "B".
Hay muchas leyendas acerca del origen de C y el sistema operativo con el que está
íntimamente relacionado, Unix. Algunas de ellas son:

 El desarrollo de C fue el resultado del deseo de los programadores de jugar


con Space Travel. Habían estado jugando en el mainframe de su compañía, pero
debido a su poca capacidad de proceso y al tener que soportar 100 usuarios, Ken
Thompson y Dennis Ritchie no tenían suficiente control sobre la nave para evitar
colisiones con los asteroides, por ese motivo decidieron portar el juego a un PDP-7 de
la oficina que no se utilizaba; pero esa máquina no tenía sistema operativo, así que
decidieron escribir uno. Finalmente decidieron portar el sistema operativo del PDP-
11 que había en su oficina, pero era muy costoso, pues todo el código estaba escrito
en lenguaje ensamblador. Entonces decidieron usar un lenguaje de alto nivel y portátil
para que el sistema operativo se pudiera portar fácilmente de un ordenador a otro,
consideraron usar B pero carecía de las funcionalidades necesarias para aprovechar
algunas características avanzadas del PDP-11 entonces empezaron a crear un nuevo
lenguaje, C.
 La justificación para obtener el ordenador original que se usó para desarrollar Unix fue
crear un sistema que automatizase el archivo de patentes. La versión original de Unix
se desarrolló en lenguaje ensamblador. Más tarde, el lenguaje C se desarrolló para
poder reescribir el sistema operativo.
En 1973, el lenguaje C se había vuelto tan potente que la mayor parte del kernel Unix,
originalmente escrito en el lenguaje ensamblador PDP-11/20, fue reescrita en C. Éste fue
uno de los primeros núcleos de sistema operativo implementados en un lenguaje distinto
al ensamblador.
Origen de c++
es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne
Stroustrup. La intención de su creación fue el extender al lenguaje de
programación C mecanismos que permiten la manipulación de objetos. En ese sentido,
desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje
híbrido.
Posteriormente se añadieron facilidades de programación genérica, que se sumaron a los
paradigmas de programación estructurada y programación orientada a objetos. Por esto
se suele decir que el C++ es un lenguaje de programación multiparadigma.
Una particularidad del C++ es la posibilidad de redefinir los operadores, y de poder crear
nuevos tipos que se comporten como tipos fundamentales.
El nombre "C++" fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue
utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el
nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se
refiere a que C++ es una extensión de C.
EVOLUCIÓN DE LA PROGRAMACIÓN

Los ordenadores no hablan nuestro idioma, son máquinas y como tales, necesitan un lenguaje especifico
pensado por el hombre para ellas. Además, necesitan constantemente interpretar todas las instrucciones
que reciben. Dada la dificultad de comunicación insalvable entre el computador y el programador, pronto
aparecieron lenguajes de programación que hacen posible la comunicación con el microprocesador,
utilizando términos y símbolos relacionados con el tipo de problema que se debe resolver, mediante el
empleo de herramientas que brinda la informática. Estos lenguajes permiten, por un lado, escribir las
operaciones que son necesarias realizar para resolver el problema de un modo parecido a como se
escribiría convencionalmente (es decir, redactar adecuadamente el algoritmo de resolución del problema)
y, por el otro, se encarga de traducir el algoritmo al lenguaje máquina (proceso conocido como
compilación) con lo que se le confiere al programa la capacidad de correr (ser ejecutado) en el ordenador.
En la actualidad hay muchos tipos de lenguajes de programación, cada uno de ellos con su propia
gramática, su terminología especial y una sintaxis particular. Por ejemplo, existen algunos creados
especialmente para aplicaciones científicas o matemáticas generales (BASIC, FORTRAN, PASCAL, etc.
); otros, en cambio, se orientan al campo empresarial y al manejo de textos y ficheros, es decir, son en
realidad fundamentalmente gestores de información (COBOL, PL/1, etc. ), o muy relacionados con el
lenguaje máquina del ordenador (como el C y el ASSEMBLER).La programación tiene una evolución,
como unas características podemos destacar que el primer tipo de programación fue en binario, de
manera secuencial (una tras otra), a continuación se muestra una estructura de la evolución de la
programación con algunos argumentos de cada uno de los datos que presentan a continuación:
En el año de 1951, surgió el lenguaje AO, donde Grace Murray fue quien lo inventa como primer
compilador que generaban un binario a partir de un código fuente.
Para el año de 1953, se genera FORTRAN, tarjeta es una perforada especializada en el uso
especializado de las columnas 1-5, 6 y 73-80. para el año de 1957, FORTRAN se proclama como el
primer lenguaje de programación universal.

En 1958, sale a la luz ALGOL 58 que se le otorga la característica de primer lenguaje algorítmico.

Para ese mismo año de 1958, Johm McCarthy crea el lenguaje para La quesería la base de la
programación orientada a objetos, con el nombre de LIPS.
En 1960, ALGOL tuvo un efecto profundo en el desarrollo del lenguaje en el futuro.
En el mismo año de 1960, COBOL fue diseñado inspirándose en el lenguaje FLOW MATIC de Grace
Hopper y el IMB COMTRADE BOB BEMBER.
BASIC DARTMOUNTH fue el primer lenguaje hogareño para la gente común, es por
eso su característica, para el año de 1964.
En 1964, PL/1 lenguaje de multiplataforma que fue la base de C y C++.
1967 ASCLL, lenguaje que persiste hasta nuestros días.
1970, surge B que se caracteriza por ser el lenguaje que es pensado en UNIX seria el procesador del
lenguajeC.
PASCAL fue creado para las primeras personas que aprendía a programar en el año de 1970 y para
crear programas formales rutinas y video juegos.
Para el año de 1972, se crea SMALLTALK primer lenguaje utilizado para la máquina virtual y es el
primero orientado a objetos. También Dennis Ritchie crea uno de los mejores lenguajes creados y
diseñados para sistemas operativos. Al igual PROLOG en ese año lenguaje de programación lógica e
interpretada utilizando principalmente para IA
A los principios de los 80 C++ fue creado para extender más este excelente lenguaje.
Caracterizado por ser hibrido.
En 1985, CLIPPER primero se creó como compilador, después se comercializo como: CA-
CLIPPER
. Para 1986, por fin fue presentada esta versión. En 1986 mejoro la versión anterior y utilizada hasta el
2000.
A los principios de los años 90 se presenta el lenguaje java desarrollado por SUN MICROSYSTEMS.

En el año de 1991, VISUAL BASIC fue un lenguaje de entorno de desarrollo completamente gráfico.
En 1993 surge VISUAL C++, comercial de Microsoft para C, C++y C++/CLI. Así mismo para depurar
códigos c.
En el año de 1994 DELPHI, es el lenguaje de programación con herramientas para facilitar la estructura
de código y el diseño de la aplicación.
1995, año en el cual se creó JAVA el cual es un lenguaje de programación orientado a objetos que
permite crear aplicaciones de todo tipo de magnitud en diferentes tipos de ordenadores y sistemas
operativos.
En el año de 1997, surge el lenguaje de programación para las páginas web dinámicas, llamado PHP
.
En el año 2001,C#(C SHARP), Microossorf introduce un lenguaje de programación orientado a
objetos para su plataforma. Net y que es la evolución del lenguaje C++.
En el año del 2004, es la WEB 2.0 tiene nuevos servicios y herramientas empiezan a parecer
Programación lineal

Es el campo de la optimización matemática dedicado a maximizar o minimizar (optimizar)


una función lineal, denominada función objetivo, de tal forma que las variables de dicha
función estén sujetas a una serie de restricciones expresadas mediante un sistema de
ecuaciones o inecuaciones también lineales. El método tradicionalmente usado para
resolver problemas de programación lineal es el Método Simplex.

Los lenguajes de programación lineal (BASIC, COBOL Y FORTRAN) no tenían facilidad


para reutilizar el código existente de programas. De hecho, se duplicaban segmentos de
software cada vez más en muchos programas. Los programas se ejecutaban en
secuencias lógicas, haciendo la lógica difícil de comprender. El control de programas era
difícil y se producían continuos saltos a lo largo del referido programa. Aún más, los
lenguajes lineales no tenían capacidad de controlar la visibilidad de los elementos
llamados datos.
Programación modular
es un paradigma de programación que consiste en dividir un programa en módulos o
subprogramas con el fin de hacerlo más legible y manejable.
Se presenta históricamente como una evolución de la programación estructurada para
solucionar problemas de programación más grandes y complejos de lo que esta puede
resolver.

Al aplicar la programación modular, un problema complejo debe ser dividido en varios


subproblemas más simples, y estos a su vez en otros subproblemas más simples. Esto
debe hacerse hasta obtener subproblemas lo suficientemente simples como para poder
ser resueltos fácilmente con algún lenguaje de programación. Esta técnica se llama
refinamiento sucesivo, divide y vencerás o análisis descendente (Top-Down). Es evidente
que si esta metodología nos lleva a tratar con subproblemas, entonces también
tengamos la necesidad de poder crear y trabajar con subprogramas para resolverlos. A
estos subprogramas se les suele llamar módulos, de ahí viene el nombre
de programación modular. En Pascal disponemos de dos tipos de módulos:
los procedimientos y las funciones.

Veamos un ejemplo de cómo emplear el diseño descendente para resolver un problema.


Supongamos que un profesor quiere crear un programa para gestionar las notas de sus
alumnos. Quiere que dicho programa le permita realizar tareas tales como asignar notas,
cambiar notas, ver las notas según distintas calificaciones, etc..

Programación estructurada
Un concepto importante en campo de la programación Estructurada: Abstracción, ya que
la Abstracción se puede definir como la capacidad de examinar algo sin preocuparse de
los detalles internos. En un programa estructurado, es suficiente conocer que un
procedimiento sea fiable, para que se pueda utilizar sin tener que conocer cómo funciona
su interior. Esto se conoce como una Abstracción funcional y es el núcleo de la
programación estructurada. Hoy casi todos los lenguajes de programación tienen
construcciones que facilitan la programación estructurada. • La programación estructurada
sigue tres reglas: la secuencia, la iteración y la decisión. es un paradigma de
programación orientado a mejorar la claridad, calidad y tiempo de desarrollo de
un programa de computadora recurriendo únicamente a subrutinas y tres estructuras
básicas: secuencia, selección (if y switch) e iteración (bucles for y while); asimismo, se
considera innecesario y contraproducente el uso de la instrucción de transferencia
incondicional (GOTO), que podría conducir a código espagueti, mucho más difícil de
seguir y de mantener, y fuente de numerosos errores de programación.

Programación orientada a objetos

Se basa en la idea natural de la existencia de un mundo lleno de objetos y que la


resolución del problema se realiza en términos de objetos. Un lenguaje se dice que está
basado en objetos si soporta como una característica fundamental del mismo. • El
elemento fundamental de la (POO) es, como su nombre lo indica, el objeto. • La
programación orientada a objetos (POO) toma como modelo a los objetos reales para
elaborar su contraparte en software. • La programación orientada a objetos nos brinda una
forma natural de ver el proceso de programación, a saber, mediante el modelado de
objetos reales, sus atributos y comportamiento. La programación orientada a objetos
proporciona también comunicación entre los objetos. Tal como las personas se envían
mensajes entre sí, los objetos también se comunican mediante mensajes. • La
programación orientada a objetos encapsula datos (atributos) y funciones (operaciones)
en paquetes llamados objetos; los datos y las funciones de un objeto están íntimamente
ligados.

Вам также может понравиться