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

INTRODUCION

- En esta oportunidad hablaremos de los leguajes de programacin, si bien


sabemos que los lenguajes de programacin son un conjunto de palabras
y de smbolos que representan procedimientos, clculos y otras
operaciones que llevan a cabo las computadoras. Existen dos tipos de
lenguaje claramente diferenciados: los lenguajes de bajo nivel y los
lenguajes de alto nivel.
a. Lenguaje de bajo nivel

Un lenguaje de programacin de caractersticas bajo nivel es aquel en el que


sus instrucciones ejercen un control directo sobre el hardware y estn
condicionados por la estructura fsica de las computadoras que lo
soportan, es decir son lenguajes totalmente dependientes de la mquina,
ya que el programa que se realiza con este tipo de lenguajes no se puede
migrar o utilizar en otras(mquinas). El uso de la palabra bajo en su
denominacin no implica que el lenguaje sea menos potente que
un lenguaje de alto nivel, sino que se refiere a la reducida abstraccin entre el
lenguaje y el hardware. Por ejemplo, se utiliza este tipo de lenguajes para
programar tareas crticas de los sistemas operativos, de aplicaciones en
tiempo real o controladores de dispositivos.

Complejidad vs Dificultad

Dicho lenguaje es muy simple o nada complicado, pero estructurar


programas a ese nivel es muy difcil. Dado que este lenguaje viene dado
por las especificaciones tcnicas del hardware, no permite una
abstraccin fuera de lo estipulado para el microprocesador de un ordenador.
Consecuentemente, es fcilmente trasladado a lenguaje de mquina.

Son lenguajes totalmente dependientes de la mquina, es decir que el


programa que se realiza con este tipo de lenguajes no se pueden migrar
o utilizar en otras mquinas.

Al estar prcticamente diseados a medida del hardware, aprovechan al


mximo las caractersticas del mismo.

Dentro de este grupo se encuentran:


El lenguaje ensamblador es un derivado del lenguaje mquina y est
formado por abreviaturas de letras y nmeros llamadas mnemotcnicos.
Con la aparicin de este lenguaje se crearon los programas traductores
para poder pasar los programas escritos en lenguaje ensamblador a
lenguaje mquina. Como ventaja con respecto al cdigo mquina es que
los cdigos fuentes eran ms cortos y los programas creados ocupaban
menos memoria. Las desventajas de este lenguaje siguen siendo
prcticamente las mismas que las del lenguaje ensamblador, aadiendo
la dificultad de tener que aprender un nuevo lenguaje difcil de probar y
mantener.

b. Lenguaje de alto nivel

Un lenguaje de programacin de alto nivel se caracteriza por expresar


el algoritmo de una manera adecuada a la capacidad cognitiva humana, en
lugar de la capacidad ejecutora de las mquinas.

En los primeros lenguajes, la limitacin era que se orientaban a un rea


especfica y sus instrucciones requeran de una sintaxis predefinida. Se
clasifican como lenguajes procedimentales o lenguajes de bajo nivel. Otra
limitacin de estos es que se requiere de ciertos conocimientos de
programacin para realizar las secuencias de instrucciones lgicas. Los
lenguajes de alto nivel se crearon para que el usuario comn pudiese
solucionar un problema de procesamiento de datos de una manera ms
fcil y rpida.

Por esta razn, a finales de los aos 1950 surgi un nuevo tipo de lenguajes
de programacin que evitaba estos inconvenientes, a costa de ceder un
poco en las ventajas. Estos lenguajes se llaman de tercera
generacin o de nivel alto, en contraposicin a los de bajo nivel o de nivel
prximo a la mquina.

Caractersticas

Lenguaje de alto nivel se refiere al nivel ms alto de abstraccin de


lenguaje de mquina. En lugar de tratar con registros, direcciones de
memoria y las pilas de llamadas, lenguajes de alto nivel se refieren a las
variables, matrices, objetos, aritmtica compleja o expresiones booleanas,
subrutinas y funciones, bucles, hilos, cierres y otros conceptos de
informtica abstracta, con un enfoque en la facilidad de uso sobre la
eficiencia ptima del programa.

Ventajas
Genera un cdigo ms sencillo y comprensible.
Escribir un cdigo vlido para diversas mquinas o sistemas operativos.
Permite utilizar paradigmas de programacin.
Permite crear programas complejos en relativamente menos lneas de
cdigo.
TRADUCTORES DEL LENGUAJE

a. Compiladores:

Un compilador es un programa informtico que traduce un programa


escrito en un lenguaje de programacin a otro lenguaje de programacin,
o tambin genera aplicaciones que sean directamente utilizables en un
ordenador o computadora. Un compilador lee el cdigo fuente creado en
un determinado lenguaje de programacin, lo interpreta, comprueba su
sintaxis y traduce a lenguaje o cdigo mquina toda la serie de
instrucciones, generando el archivo ejecutable final.
a. Intrpretes

Es un programa que traduce un lenguaje de alto nivel al lenguaje de mquina


de una computadora, el programa siempre permanece en su forma original
y traduce cuando est en la fase de ejecucin instruccin por instruccin.

Un programa intrprete, analiza directamente la descripcin simblica del


programa fuente y realiza las instrucciones dadas.

La interpretacin es un proceso que consta de un paso, en donde tanto el


programa como la entrada le son dados al intrprete y se obtiene de una
salida.

El intrprete en los lenguajes de programacin simula una mquina virtual,


donde el lenguaje de mquina es similar al lenguaje fuente. La ventaja del
proceso interprete es que no necesita de dos fases para ejecutar el
programa, sin embargo su inconveniente es que la velocidad de ejecucin
es ms lenta ya que debe analizar e interpretar las instrucciones contenidas
en el programa fuente.

Los intrpretes realizan la traduccin y ejecucin de forma simultnea, es


decir, un intrprete lee el cdigo fuente y lo va ejecutando al mismo tiempo.

Lenguaje Principal rea de aplicacin Compilado/interpretado

ADA Tiempo real Lenguaje compilado


BASIC Programacin para fines educativos Lenguaje interpretado

C Programacin de sistema Lenguaje compilado

C++ Programacin de sistema orientado a Lenguaje compilado


objeto

Cobol Administracin Lenguaje compilado

Fortran Clculo Lenguaje compilado

Java Programacin orientada a Internet Lenguaje intermediario

MATLAB Clculos matemticos Lenguaje interpretado

Clculos Clculos matemticos Lenguaje interpretado


matemticos

LISP Inteligencia artificial Lenguaje intermediario

Pascal Educacin Lenguaje compilado

PHP Desarrollo de sitios web dinmicos Lenguaje interpretado

Inteligencia artificial Inteligencia artificial Lenguaje interpretado

Perl Procesamiento de cadenas de caracteres Lenguaje interpretado

- IDENTIFIQUE CUAL SER LA IMPORTANCIA QUE MUESTRA LA


EVOLUCIN QUE PRESENTAN LOS LENGUAJES DE PROGRAMACIN.
Primero tenemos que tener claro que es un lenguaje de programacin y su
evolucin para dar su importancia.

LENGUAJES DE PROGRAMACION
Es un lenguaje formal diseado para realizar procesos que pueden ser llevados
a cabo por mquinas como las computadoras.

EVOLUCION DE LOS LENGUAJES DE PROGRAMACION


Primera generacin (1GL): Se caracteriza por el uso del lenguaje mquina.
Puesto que el hardware se desarrollaba antes que el software, estos lenguajes
estaban adaptados a una maquina especfica. En la dcada de los cuarenta
cuando nacan las primeras computadoras digitales el lenguaje que se utilizaba
para programar era el lenguaje mquina que traduca directamente el cdigo
maquina (cdigo binario) comprensible para las computadoras.

Segunda generacin (2GL): Es el paso de lenguaje maquina al lenguaje


ensamblador o de bajo nivel. Esta etapa duro desde 1950 hasta 1955. Las
instrucciones en lenguaje mquina dependan de cada computadora y debido a
la dificultad de su escritura, los investigadores de la poca simplificaron el
proceso de programacin desarrollando sistemas de notacin en los cuales las
instrucciones se representaban en formatos nemnicos(nemotcnicos) en vez
de en formatos numricos que eran ms difciles de recordar. Por ejemplo,
mientras la instruccin:
Mover el contenido del registro 4 al registro 8
Se poda expresar en lenguaje maquina como
4048 o bien 0010 0000 0010 1000
En cdigo nemotcnico poda aparecer como
MOV RS, R6
Para convertir los programas escritos en cdigo nemotcnico a lenguaje
mquina, se desarrollaron programas ensambladores (assemblers). Es decir, los
ensambladores son programas que traducen otros programas escritos en cdigo
nemotcnico en instrucciones numricas en lenguaje mquina que son
compatibles y legibles por la mquina. Estos programas de traduccin se llaman
ensambladores porque su tarea es ensamblar las instrucciones reales de la
maquina con los nemotcnicos e identificadores que representan las
instrucciones escritas en ensamblador. A estos lenguajes se les denomino de
segunda generacin, reservando el nombre de primera generacin para los
lenguajes de mquina.

Tercera generacin (3GL): Los intrpretes admiten instrucciones ms


completas y se crean lenguajes con sus correspondientes frases y palabras que
se quera realizar sobre el ordenador. El primer lenguaje de programacin de alto
nivel es FORTRAN. En la dcada de los cincuenta y sesenta comenzaron a
desarrollarse lenguajes de programacin de tercera generacin que difieran de
las generaciones anteriores en que sus instrucciones o primitivas eran de alto
nivel (comprensibles por el programador, como si fueran lenguajes naturales) e

independientes de la mquina. Estos lenguajes se llamaron lenguajes de alto


nivel. Los ejemplos ms conocidos son FORTRAN (FORmula TRANslator) que
fue desarrollado para aplicaciones cientficas y de ingeniera, y COBOL
(COmmon Business-Oriented Language), que fue desarrollado por la U.S. Navy
de Estados Unidos, para aplicaciones de gestin o administracin. Con el paso
de los aos aparecieron nuevos lenguajes tales como Pascal, Basic, C, C++,
Ada, Java, C#, HTML, XML
Los lenguajes de programacin de alto nivel se componen de un conjunto de
instrucciones o primitivas ms fciles de escribir y recordar su funcin de que los
lenguajes mquina y ensamblador. Sin embargo, los programas escritos en un
lenguaje de alto nivel, como C o Java necesitan ser traducidos a cdigo maquina;
para ello se requiere un programa denominado traductor. Estos programas de
traduccin se denominaron tcnicamente, compiladores. De este modo existen
compiladores de C, FORTRAN, Pascal, Java, etc.
Tambin surgi una alternativa a los traductores compiladores como medio de
implementacin de lenguajes de tercera generacin que se denominaron
intrpretes. Estos programas eran similares a los traductores excepto que ellos
ejecutaban las instrucciones medida que se traduca, en lugar de guardar la
versin completa traducida para su uso posterior. Es decir, en vez de producir
una copia de un programa en lenguaje mquina que se ejecuta ms tarde (este
es el caso de la mayora de los lenguajes, C, C++, Pascal, Java) un intrprete
ejecuta realmente un programa desde su formato de alto nivel, instruccin a
instruccin. Cada tipo de traductor tiene sus ventajas e inconvenientes, aunque
hoy da prcticamente los traductores utilizados son casi todos compiladores por
su mayor eficiencia y rendimiento.

Cuarta generacin (4GL): Son los derivados de los anteriores e incluyen


herramientas de ms alto nivel. Tambin estn orientados hacia propsitos muy
especficos y dependen de cada campo de aplicacin. Tambin aparecen los
lenguajes de programacin orientada a objetos. Su caracterstica distintiva es el
nfasis en especificar qu es lo que se debe hacer, en vez de cmo ejecutar una
tarea. Las especificaciones de los programas se desarrollan a un ms alto nivel
que en los lenguajes de la generacin anterior. La caracterstica distintiva es
ajena a los procedimientos, el programador no tiene que especificar cada paso
para terminar una tarea o procesamiento. Son lenguajes que se relacionan
menos con procedimientos y que son aun mas parecidos al ingles.
Ejemplos: NATURAL, PL-SQL...
No existe consenso sobre lo que es un lenguaje de cuarta generacin (4GL). Lo
que en un lenguaje de tercera generacin (3GL) como COBOL requiere cientos
de lneas de cdigo, tan solo necesita diez o veinte lneas en un 4GL. Comparado
con un 3GL, que es procedural, un 4GL es un lenguaje no procedural: el usuario
define qu se debe hacer, no cmo debe hacerse. Los 4GL se apoyan en unas
herramientas de mucho ms alto nivel denominadas herramientas de cuarta
generacin. El usuario no debe definir los pasos a seguir en un programa para
realizar una determinada tarea, tan slo debe definir una serie de parmetros
que estas herramientas utilizarn para generar un programa de aplicacin. Se
dice que los 4GL pueden mejorar la productividad de los programadores en un
factor de 10, aunque se limita el tipo de problemas que pueden resolver. Los 4GL
abarcan:
Lenguajes de presentacin, como lenguajes de consultas y generadores de
informes.
Lenguajes especializados, como hojas de clculo y lenguajes de bases de datos.
Generadores de aplicaciones que definen, insertan, actualizan y obtienen datos
de la base de datos.
Lenguajes de muy alto nivel que se utilizan para generar el cdigo de la
aplicacin.
Los lenguajes SQL y QBE son ejemplos de 4GL. Hay otros tipos de 4GL:
Un generador de formularios es una herramienta interactiva que permite crear
rpidamente formularios de pantalla para introducir o visualizar datos. Los
generadores de formularios permiten que el usuario defina el aspecto de la
pantalla, qu informacin se debe visualizar y en qu lugar de la pantalla debe
visualizarse. Algunos generadores de formularios permiten la creacin de
atributos derivados utilizando operadores aritmticos y tambin permiten
especificar controles para la validacin de los datos de entrada.
Un generador de informes es una herramienta para crear informes a partir de los
datos almacenados en la base de datos. Se parece a un lenguaje de consultas
en que permite al usuario hacer preguntas sobre la base de datos y obtener
informacin de ella para un informe. Sin embargo, en el generador de informes
se tiene un mayor control sobre el aspecto de la salida. Se puede dejar que el
generador determine automticamente el aspecto de la salida o se puede disear
sta para que tenga el aspecto que desee el usuario final.
Un generador de grficos es una herramienta para obtener datos de la base de
datos y visualizarlos en un grfico mostrando tendencias y relaciones entre
datos. Normalmente se pueden disear distintos tipos de grficos: barras, lneas,
etc.
Un generador de aplicaciones es una herramienta para crear programas que
hagan de interface entre el usuario y la base de datos. El uso de un generador
de aplicaciones puede reducir el tiempo que se necesita para disear un
programa de aplicacin. Los generadores de aplicaciones constan de
procedimientos que realizan las funciones fundamentales que se utilizan en la
mayora de los programas. Estos procedimientos estn escritos en un lenguaje
de programacin de alto nivel y forman una librera de funciones entre las que
escoger. El usuario especifica qu debe hacer el programa y el generador de
aplicaciones es quien determina cmo realizar la tarea.

Quinta generacin (5GL): Son un problema de debate en la programacin


porque algunos programadores no pueden estar de acuerdo que existan. Estos
lenguajes de alto nivel usaran inteligencia artificial para crear software,
hacindolos sumamente difciles de desarrollar.
Un lenguaje de programacin de quinta generacin est basado en la resolucin
de problemas utilizando restricciones dadas al programa, en lugar de utilizar un
algoritmo escrito por un programador.
Los lenguajes de quinta generacin estn diseados para hacer que el equipo
resuelva un problema dado sin el programador. De esta manera, el programador
slo tiene que preocuparse de lo que es necesario resolver y qu condiciones
deben cumplirse, sin tener que preocuparse acerca de cmo implementar una
rutina o algoritmo para resolver los problemas. Lenguajes de quinta generacin
se utilizan principalmente en la investigacin de la inteligencia artificial. Prolog,
OPS5, y el mercurio son ejemplos de lenguajes de quinta generacin. Estos tipos
de lenguajes tambin se basaron en Lisp, muchos procedentes de la mquina
Lisp, como ICAD. Entonces, hay muchos idiomas de trama, tales como KL-ONE.

1. IMPORTANCIA
Los lenguajes de programacin con el paso del tiempo han ido mejorando y
siendo ms amigables con el programador, esto le ha hecho que el programador
ya no se preocupe tanto de escribir cientos de lnea de cdigo sino de buscar
alternativas de solucin para los problemas de las personas, la importancia
radica en que los lenguajes de programacin son utilizados en todos los mbitos
en la actualidad, y que gracias a su evolucin ahora solucionan problemas y
facilitan el trabajo de muchos profesionales para beneficio de la sociedad.

- POR CADA ETAPA INDICAR LAS CARACTERSTICAS,


PROPIEDADES Y FUNCIONES QUE REPRESENTA.
Se divide en cinco etapas o generaciones.

2. Lenguajes de primera generacin o 1GL.


3. Lenguajes de segunda generacin o 2GL.
4. Lenguajes de tercera generacin o 3GL.
5. Lenguajes de cuarta generacin o 4GL.
6. Lenguajes de quinta generacin.

1. Lenguajes de primera generacin o 1GL. Esta etapa abarca desde la


dcada de los cuarenta a los cincuenta.
Se caracteriza por el uso de lenguaje mquina. Puesto que el hardware
se desarrollaba antes que el software, estos lenguajes estaban adaptados
a una mquina especfica.
En esta etapa las instrucciones en lenguaje de maquina dependan de
cada computadora.
Debido a la dificultad de su escritura, se crearon formatos nemotcnicos
reemplazando a los numricos.
Ejemplo.
Mover el contenido del registro 4 al registro 5

2. Lenguajes de segunda generacin o 2G. Esta etapa abarca desde 1950


hasta 1955.
Es el paso de lenguaje mquina al lenguaje ensamblador o de bajo nivel.
Los lenguajes de basaban en clculos numricos.

3. Lenguajes de tercera generacin o 3GL. Esta etapa abarca desde 1955


hasta 1960.
Los intrpretes admiten instrucciones ms completas y se crean lenguajes
con sus correspondientes frases y palabras que expresaban de manera
comprensible las acciones que se quera realizar sobre el ordenador. El
primero lenguaje de programacin de alto nivel es FORTRAN.
Se crean los lenguajes de alto nivel. Ejemplo
- FORTRAN (FORmula TRANslator), desarrollado para aplicaciones
cientficas y de ingeniera.
Diseado para traducir a lenguaje mquina expresiones y operaciones
matemticas, e incluso permita la manipulacin de matrices.
La aparicin del FORTRAN fue un gran cambio para los programadores
que no todos aceptaron de buen grado. No les gustaba que sus
programas fueran tratados por la computadora como meros datos, y
argumentaban que el cdigo mquina generado por el compilador nunca
podra ser tan eficiente como el escrito por ellos directamente.
El lenguaje FORTRAN se ha utilizado extensivamente desde que
apareci hasta hoy en da, y puede considerarse el lenguaje estndar del
clculo cientfico.
- COBOL (Common Business Oriented Language). Desarrollada en los
EE.UU para aplicaciones de gestin o administracin.
El aspecto ms impresionante en un programa de COBOL es la
organizacin en cuatro divisiones.
Esta organizacin es en gran parte el resultado de dos objetivos del
diseo: el de separar los elementos del programa dependientes de la
mquina y el de separar las descripciones de los algoritmos, para que
cada uno pueda modificarse sin afectar al otro. El resultado es una
organizacin tripartita de programa.
Lenguajes utilizados en esta generacin: PL/I, SNOBOLA Y APL.

4. Lenguajes de cuarta generacin o 4GL. Esta etapa abarca desde 1960


hasta 1970.
Son los derivados de los anteriores e incluyen herramientas de ms alto
nivel.
Tambin estn orientados hacia propsitos muy especficos y dependen
de cada campo de aplicacin.
Tambin aparecen los lenguajes de programacin orientada a objetos.
Lenguajes utilizados en esta generacin: Pascal, Prolog, Ada, C y
Smalltalk.

5. Lenguajes de quinta generacin. Esta etapa abarca desde 1970 hasta


1980.
Son un problema de debate en la comunidad de la programacin porque
algunos programadores no pueden estar de acuerdo que existan.
Estos lenguajes de alto nivel usaran inteligencia artificial para crear software,
hacindolos sumamente difciles de desarrollar.
Lenguajes utilizados en esta generacin: C++, ML.

PARA CADA UNO DELOS TRATDOS ANTERIORMENTE LAS


APLICACIONES DE USO VIGENTE

JAVASCRIPT
JavaScript (abreviado comnmente JS) es un lenguaje de
programacin interpretado, dialecto del estndar ECMAScript. Se define
como orientado a objetos, basado en prototipos, imperativo, dbilmente tipado
y dinmico.
Se utiliza principalmente en su forma del lado del cliente (client-side),
implementado como parte de un navegador web permitiendo mejoras en
la interfaz de usuario y pginas web dinmicas aunque existe una forma de
JavaScript del lado del servidor(Server-side JavaScript o SSJS). Su uso
en aplicaciones externas a la web, por ejemplo en documentos PDF,
aplicaciones de escritorio (mayoritariamente widgets) es tambin significativo.
Desde el 2012, todos los navegadores modernos soportan completamente
ECMAScript 5.1, una versin de javascript. Los navegadores ms antiguos soportan
por lo menos ECMAScript 3. La sexta edicin se liber en julio del 2015.

JavaScript se dise con una sintaxis similar a C, aunque adopta nombres y


convenciones del lenguaje de programacin Java. Sin embargo, Java y
JavaScript tienen semnticas y propsitos diferentes.
Todos los navegadores modernos interpretan el cdigo JavaScript integrado en las
pginas web. Para interactuar con una pgina web se provee al lenguaje JavaScript de
una implementacin del Document Object Model (DOM).

Tradicionalmente se vena utilizando en pginas web HTML para realizar


operaciones y nicamente en el marco de la aplicacin cliente, sin acceso a
funciones del servidor. Actualmente es ampliamente utilizado para enviar y
recibir informacin del servidor junto con ayuda de otras tecnologas
como AJAX. JavaScript se interpreta en el agente de usuario al mismo tiempo
que las sentencias van descargndose junto con el cdigo HTML.
Desde el lanzamiento en junio de 1997 del estndar ECMAScript 1, han existido las
versiones 2, 3 y 5, que es la ms usada actualmente (la 4 se abandon). En junio de
2015 se cerr y public la versin ECMAScript 6.

Caractersticas
Las siguientes caractersticas son comunes a todas las implementaciones que se
ajustan al estndar ECMAScript, a menos que especifique explcitamente en caso
contrario.

Imperativo y estructurado
JavaScript es compatible con gran parte de la estructura de
programacin de C (por ejemplo, sentencias if, bucles for, sentencias switch, etc.).
Con una salvedad, en parte: en C, el mbito de las variables alcanza al bloque en
el cual fueron definidas; sin embargo JavaScript no es compatible con esto, puesto
que el mbito de las variables es el de la funcin en la cual fueron declaradas. Esto
cambia con la versin de ECMAScript 2015, ya que aade compatibilidad con
block scoping por medio de la palabra clave let. Como en C, JavaScript hace
distincin entre expresiones y sentencias. Una diferencia sintctica con respecto a
C es la insercin automtica de punto y coma, es decir, en JavaScript los puntos y
coma que finalizan una sentencia pueden ser omitido.

Dinmico
Tipado dinmico
Como en la mayora de lenguajes de scripting, el tipo est asociado al valor, no a la
variable. Por ejemplo, una variable x en un momento dado puede estar ligada a un
nmero y ms adelante, religada a una cadena. JavaScript es compatible con varias
formas de comprobar el tipo de un objeto, incluyendo duck typing. Una forma de
saberlo es por medio de la palabra clave typeof.

Objetual
JavaScript est formado casi en su totalidad por objetos. Los objetos en JavaScript
son arrays asociativos, mejorados con la inclusin de prototipos (ver ms adelante).
Los nombres de las propiedades de los objetos son claves de tipo
cadena: obj.x = 10 y obj['x'] = 10 son equivalentes, siendo la notacin con punto azcar
sintctico. Las propiedades y sus valores pueden ser creados, cambiados o eliminados
en tiempo de ejecucin. La mayora de propiedades de un objeto (y aquellas que son
incluidas por la cadena de la herencia prototpica) pueden ser enumeradas a por
medio de la instruccin de bucle for... in. JavaScript tiene un pequeo nmero de
objetos predefinidos como son Function y Date.
Evaluacin en tiempo de ejecucin
JavaScript incluye la funcin eval que permite evaluar expresiones expresadas como
cadenas en tiempo de ejecucin. Por ello se recomienda que eval sea utilizado con
precaucin y que se opte por utilizar la funcin JSON.parse() en la medida de lo
posible, pues resulta mucho ms segura.
Funcin
Funciones de primera clase
A las funciones se les suele llamar ciudadanos de primera clase; son objetos en s
mismos. Como tal, poseen propiedades y mtodos, como .call() y .bind().Una funcin
anidada es una funcin definida dentro de otra. Esta es creada cada vez que la funcin
externa es invocada. Adems, cada funcin creada forma una clausura; es el resultado
de evaluar un mbito conteniendo en una o ms variables dependientes de otro mbito
externo, incluyendo constantes, variables locales y argumentos de la funcin externa
llamante. El resultado de la evaluacin de dicha clausura forma parte del estado
interno de cada objeto funcin, incluso despus de que la funcin exterior concluya su
evaluacin.

RUBY ON RAILS
Ruby on Rails, tambin conocido como RoR o Rails, es
un framework de aplicaciones web de cdigo abierto escrito en el lenguaje de
programacin Ruby, siguiendo el paradigma del patrn Modelo Vista
Controlador (MVC). Trata de combinar la simplicidad con la posibilidad de
desarrollar aplicaciones del mundo real escribiendo menos cdigo que con otros
frameworks y con un mnimo de configuracin. El lenguaje de programacin Ruby
permite la metaprogramacin, de la cual Rails hace uso, lo que resulta en una
sintaxis que muchos de sus usuarios encuentran muy legible. Rails se distribuye a
travs de RubyGems, que es el formato oficial de paquete y canal de distribucin
de bibliotecas y aplicaciones Ruby.

PYTHON
Python es un lenguaje de programacin interpretado cuya filosofa hace
hincapi en una sintaxis que favorezca un cdigo legible.
Se trata de un lenguaje de programacin multiparadigma, ya que soporta orientacin a
objetos, programacin imperativa y, en menor medida, programacin funcional. Es
un lenguaje interpretado, usa tipado dinmico y es multiplataforma.
Es administrado por la Python Software Foundation. Posee una licencia de cdigo
abierto, denominada Python Software Foundation License, que es compatible con
la Licencia pblica general de GNU a partir de la versin 2.1.1, e incompatible en
ciertas versiones anteriores.

Caractersticas y paradigma
Python es un lenguaje de programacin multiparadigma. Esto significa que ms que
forzar a los programadores a adoptar un estilo particular de programacin, permite
varios estilos: programacin orientada a objetos, programacin
imperativa y programacin funcional. Otros paradigmas estn soportados mediante el
uso de extensiones.
Python usa tipado dinmico y conteo de referencias para la administracin de
memoria.
Una caracterstica importante de Python es la resolucin dinmica de nombres; es
decir, lo que enlaza un mtodo y un nombre de variable durante la ejecucin del
programa (tambin llamado enlace dinmico de mtodos)

.Otro objetivo del diseo del lenguaje es la facilidad de extensin. Se pueden


escribir nuevos mdulos fcilmente en C o C++. Python puede incluirse en
aplicaciones que necesitan una interfaz programable.
Aunque la programacin en Python podra considerarse en algunas situaciones hostil
a la programacin funcional tradicional del Lisp, existen bastantes analogas entre
Python y los lenguajes minimalistas de la familia Lisp como puede ser Scheme.
C++
C++ es un lenguaje de programacin diseado a mediados de los aos 1980
por Bjarne Stroustrup. La intencin de su creacin fue el extender al lenguaje de
programacin C mecanismos que permiten la manipulacin de objetos. En ese
sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un
Posteriormente se aadieron facilidades de programacin genrica, que se
sumaron a los paradigmas de programacin estructurada y programacin
orientada a objetos. Por esto se suele decir que el C++ es un lenguaje de
programacin multiparadigma.
Actualmente existe un estndar, denominado ISO C++, al que se han adherido la
mayora de los fabricantes de compiladores ms modernos. Existen tambin algunos
intrpretes, tales como ROOT.

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 ao 1983, cuando el lenguaje
fue utilizado por primera vez fuera de un laboratorio cientfico. Antes se haba usado el
nombre "C con clases". En C++, la expresin "C++" significa "incremento de C" y se
refiere a que C++ es una extensin de C.

CARACTERISTICAS
Tiene un conjunto complejo de instrucciones de control.
Permite la agrupacin de instrucciones
Incluye el concepto de puntero (variable que contiene la direccin de otra
variable)
Permite la separacin de un programa en modulos que admiten compilacin
independiente.

LAS DIVERSAS RAZONES POR LA CUAL SE HA CONVERTIDO EN UN


LENGUAJE DE USO PROFESIONAL SON:
El uso de constructores de alto nivel
El poder manejar actividades de bajo nivel
El generar problemas eficientes
La posibilidad de poder ser compilado en una variedad de computadoras, con
pocos cambios (portabilidad )
Un punto en contra es que tiene una deteccin pobre de errores, lo cual en
ocasiones es problemtico para los principiantes.
CONCLUSIONES

Los lenguajes de alto nivel se desarrollaron con el objetivo de ser ms


accesibles y entendibles por la mayora de programadores, de manera que
los programadores pudieran concentrarse ms en resolver la tarea o los
problemas y no en el lenguaje que la maquina tena que entender.

C++ surge de fusionar dos ideas: la eficiencia del lenguaje C para poder
acceder al hardware al ejecutar tareas que realmente demandaban recursos
de memoria; y las ideas de abstraccin que representan las el nuevo
conceptos de clases y objetos.
El lenguaje C++ presenta grandes herramientas de desarrollo para los
programadores como las funciones, bibliotecas, clases y los objetos. De
manera que el programador se ocupa de utilizar dichas herramientas para
resolver un problema especfico.
El lenguaje C++ posee una serie de caractersticas que lo hacen distinto del
lenguaje C. Aunque es posible verlo como una simple extensin del lenguaje
C, en realidad implica un cambio en la forma de pensar por parte del
programador.
la decisin de qu lenguaje de programacin usar a la hora
del desarrollo aplicaciones web, siempre ser tema de controversia. las
diferencias entre estos, generalmente se encuentran en la plataforma que
requieran. por ello podr observarse que la eleccin del lenguaje, tender
ms hacia el gusto del usuario, que al resultado de evaluar el rendimiento de
las herramientas.
en asp.net, si profundizamos en cuanto a todas las caractersticas que
atesora, se aprecia como adquiere de la tecnologa de java muchas de sus
funcionalidades pero con acceso mas sencillo y con la facilidad
de poder emplear diferentes lenguajes de codificacin pero sin
perder potencia de diseo ya que los principales: c#, visual basic.net y
jscript.net son orientados a objetos.

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