Lenguajes de Programacion Listo (1)

download Lenguajes de Programacion Listo (1)

of 10

Transcript of Lenguajes de Programacion Listo (1)

LENGUAJES DE PROGRAMACIN

1.- CMO SE EXPRESA CADA LENGUAJE DE PROGRAMACIN?Los lenguajes de programacin, tienen como fin,expresar rdenes e instrucciones precisas, que deben ser llevadas a cabo por una computadora para realizar una o ms tareas especficas. Se utilizan para crear programas que controlan el comportamiento fsico o lgico de un ordenador. Estn compuestos por una serie de smbolos, reglas sintcticas y semnticas que definen la estructura del lenguaje.

2.- CMO ESTABAN DISEADOS Y COMO ESTABAN COMPUESTOS LOS LENGUAJES DE PROGRAMACIN?

Diseo de lenguajes de programacin:

Concisin notacional :El lenguaje proporciona un marco conceptual para pensar algoritmos y expresar dichos algoritmos con el nivel de detalle adecuado. El lenguaje debe ser una ayuda alprogramador proporcionando un conjunto de conceptos claro, simple y unificado. La sintaxis debe serlegiblepor elprogramador.

Ortogonalidad.

Las diferentes caractersticas deben ser lo ms independientes posible entre ellas ,en el sentido de que el uso de una no debe modificar, limitar o impedir el uso simultaneo o combinado de otra.

Abstraccin. El lenguaje debe evitar forzar a los programadores a tener que enunciar algo ms de una vez. El lenguaje debe permitir al programador la identificacin de patrones repetitivos y automatizar tareas mecnicas, tediosas o susceptibles de cometer errores.

Seguridad

. La fiabilidad de los productos software es cada vez ms importante. Lo ideal es que los programas incorrectos no pertenezcan al lenguaje y sean rechazados por el compilador.

Expresividad

. El lenguaje es expresivo cuando permite expresar con facilidad procesos o estructuras complejos.

Extensibilidad

. El lenguaje debe facilitar mecanismos para que el programador pueda aumentar la capacidad expresiva del lenguaje aadiendo nuevas construcciones.

Portabilidad

. El lenguaje debe facilitar la creacin de programas que funcionen en el mayornmero de entornos computacionales.

Eficiencia

. Elprogramador debepoder expresar algoritmos suficientemente eficientes oel lenguaje debe incorporar tcnicas de optimizacin de los programas escritos en l. Eficiencia en la traduccin.- El diseo del lenguaje debe permitir fcilmente la construccin de traductores e intrpretes que sean eficientes en uso de tiempo y memoria Eficiencia de ejecucin.- El diseo del lenguaje no debe dar lugar a que la interpretacin o ejecucin de los programas traducidos conlleve un alto gasto en tiempo o memoria

Componente De Los Lenguajes De Programacin Variables Y Vectores:Las variables podran calificarse como contenedores de datos y por ello se diferencian segn el tipo de dato que son capaces de almacenar. En la mayora de lenguajes de programacin se requiere especificar un tipo de variable concreto para guardar un dato concreto. Dentro de las variables tenemos:Variables tipo Char: Estas variables contienen un nico carcter, es decir, una letra, un signo o un nmero.-Variables tipo Int: Contienen un nmero entero.-Variables tipo float:Contienen un nmero decimal.-Variables tipo String:Contienen cadenas de texto, o lo que es lo mismo, es un vector con varias variables del tipo Char.-Variables del tipo Boolean: Solo pueden contener un 0 o un 1. El cero es considerado para muchos lenguajes como el literal False mientras que el 1 se considera True.Condicionantes:Los condicionantes son estructuras de cdigo que indican que, para que cierta parte del programa se ejecute, deben cumplirse ciertas premisas; por ejemplo: que dos valores sean iguales, que un valor exista, que un valor sea mayor que otro Estos condicionantes por lo general solo se ejecutan una vez a lo largo del programa. Los condicionantes ms conocidos y empleados en programacin son:IF, ELSE IF, ELSE.Bucles:Los bucles son parientes cercanos de los condicionantes, pero ejecutan constantemente un cdigo mientras se cumpla una determinada condicin. Los ms frecuentes son:For, While.Funciones:Las funciones se crearon para evitar tener que repetir constantemente fragmentos de cdigo. Una funcin podra considerarse como una variable que encierra cdigo dentro de si. Por lo tanto cuando accedemos a dicha variable (la funcin) en realidad lo que estamos es diciendo al programa que ejecute un determinado cdigo predefinido anteriormente.Sintaxis:A la forma visible de un lenguaje de programacin se le conoce como sintaxis. La mayora de los lenguajes de programacin son puramente textuales, es decir, utilizan secuencias de texto que incluyen palabras, nmeros y puntuacin, de manera similar a los lenguajes naturales escritos. Por otra parte, hay algunos lenguajes de programacin que son ms grficos en su naturaleza, utilizando relaciones visuales entre smbolos para especificar un programa.

3.- CUAL ES Y PORQUE SE DICE QUE HAY LENGUAJES MAS UTILIZADOS?En la actualidad hayms de 100 lenguajes de programacindiferentes. No vamos a definir todos los lenguajes de programacin que existen porque son muchos pero s os hablaremos de los ms importantes y para qu se utilizan.

Un ordenador no entiende un lenguaje como el que utilizan los humanos, sino que el lenguaje que entiende se llamalenguaje binarioocdigo binarioocdigo mquinaque consiste enceros y unosbsicamente, es decir, una mquina sloutiliza los nmeros 0 y 1para codificar cualquier accin a tomar.

Se clasifican en dos tipos:En un primer estado de clasificacin, los lenguajes de programacin se dividen segn su nivel de abstraccin, en lenguajes de bajo nivel y lenguajes de alto nivel, dependiendo de su grado de cercana al hardware.Cuanto ms cercano al hardware se encuentra el lenguaje, ms bajo nivel posee ste. Mientras que cuanto ms acercado al usuario se encuentre, ms alejado del hardware estar y, en consecuencia, de mayor nivel ser el lenguaje. Se clasifican en dos tipos:Lenguajes de Programacin de Bajo NivelLoslenguajes de bajo nivel, son aquellos quedependen intrnsecamente del ordenador. Aquellos programas informticos, programados con lenguajes de bajo nivel, al ser exclusivamente dependientes delhardware, no pueden migrarse, ya que estn justamente diseados, para un hardware especfico.Existen dos tipos de lenguajes de bajo nivel: ellenguaje mquinay ellenguaje ensamblador. El lenguaje de mquina (tambin denominado lenguaje de primera generacin) es el sistema de cdigos directamente interpretable por un circuito micro programable, como el microprocesador de una computadora o el micro controlador de un autmata Este lenguaje est compuesto por un conjunto de instrucciones que determinan acciones a ser tomadas por la mquina. Un programa consiste en una cadena de estas instrucciones de lenguaje de mquina (ms los datos). Estas instrucciones son normalmente ejecutadas en secuencia, con eventuales cambios de flujo causados por el propio programa o eventos externos. El lenguaje de mquina es especfico de cada mquina o arquitectura de la mquina, aunque el conjunto de instrucciones disponibles pueda ser similar entre ellas.

Un lenguaje ensamblador, es un lenguaje de programacin de bajo nivel para los ordenadores, microprocesadores, micro controladores, y otros circuitos integrados programables. Implementa una representacin simblica de los cdigos de mquina binarios y otras constantes necesarias para programar una arquitectura dada de CPU y constituye la representacin ms directa del cdigo mquina especfico para cada arquitectura legible por un programador.

Lenguajes de Programacin de Alto NivelLos lenguajes de alto nivel, son aquellos cuya caracterstica principal, consiste en una estructura sintctica y semntica legible, acorde a las capacidades cognitivas humanas. A diferencia de los lenguajes de bajo nivel, son independientes de la arquitectura del hardware, motivo por el cual, asumen mayor portabilidad.Son ejemplo de lenguajes de alto nivel: Python, Perl, PHP, Ruby, Lisp, Java, Fortran, C++, C#, entre otros.

CLASIFICACIN SEGN SU FORMA DE EJECUCINLos lenguajes de programacin pueden ser:compiladoso interpretados. Los lenguajes de programacin compilados, son lenguajes de alto nivel que requieren que las instrucciones (cdigo fuente del programa), sean traducidas a lenguaje mquina por un compilador, a fin de generar un ejecutable del programa. Ejemplo de lenguajes compilados son Pascal, C, C++, Ada, entre otros.

Los lenguajes interpretados, a diferencia de los compilados, no requieren de un compilador para ser ejecutados sino de un intrprete. Un intrprete, acta de manera casi idntica a un compilador, con la salvedad de que ejecuta el programa directamente, sin necesidad de generar previamente un ejecutable. Ejemplo de lenguajes de programacin interpretado son Python, PHP, Ruby, Lisp, entre otros.

CLASIFICACIN SEGN SU FUNCIN Lenguajes comerciales: Son lenguajes pensados sobre todo para hacer programas de gestin. Han de proporcionar herramientas que faciliten la entrada y salida de datos en ficheros y base de datos. Ej: Cobol Lenguajes para resolver clculos cientficos: Estos lenguajes no ofrecen facilidades para la entrada y salida de datos, pero en cambio ofrecen una gran potencia en clculos complejos (trabajos con matrices, derivadas, integrales, etc.). Ej: Fortran Lenguajes multipropsito o de propsito general Se aplica a cualquier tipo de problema; No estn especializados en nada en concreto. Sirven un poco para todo. Ej: Pascal o incluso C Lenguajes didcticos Lenguajes que no son muy potentes, su funcin es bsicamente facilitar que la gente aprenda a programar. Ej: Logo Lenguajes Lgicos Siguen las normas de la lgica matemtica. Estn basados en hechos y predicados y la finalidad de estos lenguajes es demostrar un predicado a partir de los hechos que hay en la base del conocimiento. CLASIFICACIN SEGN EL ESTILO DE PROGRAMACIN

Lenguajes estructurados Se inventaron porque los que haba antes eran muy complicados no solo para programar sino tambin a la hora de compilar. Los programas son ms legibles de leer y tambin que fuera ms fcil localizar los errores. Lenguajes lgicos Es igual a lo que hay antes Ej: Prolog Lenguajes concurrentes Este tipo de lenguajes permiten ejecutar varios procesos a la vez. Para controlar el trfico de los procesos hacen falta las siguientes herramientas: semforos, cerrojos, hebras o hilos. Ej: ADA

Lenguajes orientados a objetos Se trabaja con objetos y clases. Caractersticas: encapsulacin, ligadura, dinmica, herencia y polimorfismo. Ej: C#

Lenguajes de 4 generacin Tu solo le dices al programa lo que quieres que haga y l lo hace ( no tengo que decirle como tiene que obtener las cosas) no hay bucles, no hay instrucciones de repeticin. Ej: SQL Lenguaje para crear aplicaciones Web: cliente/servidor Ej: PHP

Lenguajes de programacin ms usados

Los 5 lenguajes de programacin ms utilizados en la actualidadA continuacin voy a exponer los 5 lenguajes de programacin que bajo mi punto de vista son los ms utilizados en la actualidad:

CCreado en 1972 por Dennis MacAlistair Ritchie en los laboratorios Bell como evolucin del anterior lenguaje B. Es un lenguaje orientado a la implementacin de sistemas operativos, concretamente Unix que fue desarrollado en C.Es un lenguaje de propsito general muy utilizado cuyas principalescaractersticasson:Combina caractersticas de los lenguajes de bajo nivel con los de alto nivel, lo que permite crear programas eficientes.Es unlenguaje pequeoya que slo ofrece sentencias de control sencillas y funciones.Permite laprogramacin estructurada y el diseo modularlo que mejora la apariencia, comprensin y mantenimiento de los programas.Se realizanprogramas portablesque se pueden ejecutar sin necesidad de realizar cambios en diversos ordenadores.Todo programador sabe programar en C debido a que es uno de los primeros lenguajes que se aprenden a utilizar. El motivo de que sea uno de los primeros es porque varios lenguajes de programacin estn formados a partir de C y es necesario conocer sus estructuras e instrucciones.El lenguaje C es uno de los ms utilizados en la actualidad ya que nos permite crear programas eficientes, caracterstica muy importante a la hora de realizar un programa. Es un lenguaje simple y fcil de entender, lo que reduce los tiempos de desarrollo y comprensin de los programas.Por ltimo decir que es muy comn programar sistemas en C ya que nos permite tener un control casi absoluto del ordenador.Ejemplo de un programa en C:#include

int main(){ printf("Hola mundo"); return 0;}

C++El lenguaje de programacin surgi a mediados de los 80 gracias a Bjarne Stroustrup y fue desarrollado a partir del lenguajeCen los laboratorios AT&T Bell. Es unlenguaje orientado a objetosaunque tambin tiene las mismas caractersticas que C, como por ejemplo su eficiencia y el uso de punteros. Como es lgico, y debido a que se cre a partir de C, C++ cuenta con diversas mejoras y avances respecto de C, lo que le hace un lenguaje ms completo y por ello que los programadores tienden a programar ms en este lenguaje. Un programa en C++ soporta instrucciones escritas en C, pero un programa escrito en C no nos permite ejecutar instrucciones de C++, por lo quevindolode sta forma resulta ms cmodo programar en C++. Adems de ser un lenguaje orientado a objetos, tambin nos permite realizarprogramas estructurados, lo cul nos da libertad a la hora de programar. Nos da cierta libertad debido a que no es tan estricto a la hora de escribir cdigo como en C. Es un lenguaje compilado, es decir, compila directamente al cdigo que entienden los ordenadores por lo que es uno de los lenguajes ms rpidos.Esportableal gran nmero de compiladores que permiten utilizar los programas en diversos ordenadores con diferentes sistemas operativos.Soporta varios paradigmas de programacin. Un paradigma de programacin (dicho de manera informal) es una forma de pensar a la hora de programar, el ms utilizado es el paradigma de programacin orientada a objetos.Un aspecto importante a destacar es la amplia cantidad de manuales, libros y cdigo fuente disponibles sobre C++, lo que nos da ciertas facilidades a la hora de aprender a programarlo.Programa en C++:#include

using namespace std;

int main() {

cout