Sunteți pe pagina 1din 27

Introduccin a los Lenguajes de Programacin

Punto Fijo; Marzo 2012

Lenguaje de programacin
Introduccin Definicin Ideas Generales Programacin Elementos Sintaxis Semntica Clasificacin

CONTENIDO

INTRODUCCION

La solucin de problemas mediante en uso de un computador nos lleva a desarrollar programas o aplicaciones, la construccin de estos programas debe ser realizada mediante una metodologa, los pasos para la construccin de programas son: Disear el algoritmo, consiste en analizar el problema y describir los instrucciones de forma ordenada que resuelven el problema. Codificar de forma sistemtica la secuencia de instrucciones en un lenguaje. Ejecutar y validar el programa en un computador (verificacin) Para codificar de forma sistemtica un algoritmo se necesita de un lenguaje programacin que la computadora comprenda.

LENGUAJE DE PROGRAMACION

DEFINICION

Un lenguaje de programacin es aquel elemento dentro de la informtica que nos permite crear programas mediante un conjunto de instrucciones, operadores y reglas de sintaxis; que pone a disposicin del programador para que este pueda comunicarse con los dispositivos hardware y software existentes.
Arias (2008)

LENGUAJE DE PROGRAMACION

IDEAS GENERALES

Es un idioma artificial diseado para expresar computaciones que pueden ser llevadas a cabo por mquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento fsico y lgico de una mquina, para expresar algoritmos con precisin, o como modo de comunicacin humana. Est formado por un conjunto de smbolos y reglas sintcticas y semnticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el cdigo fuente de un programa informtico se le llama programacin.

LENGUAJE DE PROGRAMACION

PROGRAMACION

Tambin la palabra programacin se define como el proceso de creacin de un programa de computadora, mediante la aplicacin de procedimientos lgicos, a travs de los siguientes pasos:

El desarrollo lgico del programa para resolver un problema en particular. Escritura de la lgica del programa empleando un lenguaje de programacin especfico (codificacin del programa). Ensamblaje o compilacin del programa hasta convertirlo en lenguaje de mquina. Prueba y depuracin del programa. Desarrollo de la documentacin.

LENGUAJE DE PROGRAMACION

ELEMENTOS

Variables y Arreglos
Las variables podran calificarse como contenedores de datos y por ello se diferencian segn el tipo de dato que son capaces de almacenar.

Condicionantes
Los condicionantes son estructuras de cdigo que indican que para que cierta parte del programa se ejecute deben cumplirse ciertas premisas.

LENGUAJE DE PROGRAMACION

ELEMENTOS

Bucles
Los bucles son parientes cercanos de los condicionantes, pero ejecutan constantemente un cdigo mientras se cumpla una determinada condicin.

Funciones
Fueron creadas para evitar la repeticin constante de fragmentos de cdigo. Podra considerarse como una variable que encierra cdigo dentro de si. Por tanto cuando se accede a dicha variable (la funcin) en realidad lo que se esta es diciendo al programa que ejecute un determinado cdigo predefinido anteriormente.

LENGUAJE DE PROGRAMACION

CARACTERISTICAS

Tienen una sintaxis: un conjunto de reglas que definen qu expresiones de texto son correctas. Por ejemplo, en C todas las sentencias deben terminar en ';'.

Los lenguajes de programacin se ejecutan en un computador y tienen una determinada semntica que define cul ser el resultado de la ejecucin de un programa.

Definen un conjunto de tipos de datos primitivos que representan los posibles valores que pueden devolver las expresiones del lenguaje

LENGUAJE DE PROGRAMACION

SINTAXIS

Es la parte de la gramtica que estudia las reglas que gobiernan la combinatoria de constituyentes sintcticos y la formacin de unidades superiores a estos, como los sintagmas y oraciones gramaticales. La sintaxis, por tanto, estudia las formas en que se combinan las palabras, as como las relaciones sintagmticas y paradigmticas existentes entre ellas.

LENGUAJE DE PROGRAMACION

SINTAXIS - ELEMENTOS

CONJUNTO DE CARACTERES IDENTIFICADORES

OPERADORES
PALABRAS CLAVES O RESERVADAS

COMENTARIOS
DELIMITADORES

LENGUAJE DE PROGRAMACION

SEMANTICA

Se refiere a los aspectos del significado, sentido o interpretacin de signos lingsticos como smbolos, palabras, expresiones o representaciones formales.

Es el conjunto de reglas que proporcionan el significado de una sentencia o instruccin de cualquier lenguaje de programacin.

LENGUAJE DE PROGRAMACION

CLASIFICACION

Los lenguajes de programacin se pueden clasificar atendiendo a varios criterios: Segn su nivel de abstraccin Lenguaje maquina Lenguajes de bajo nivel Lenguajes de alto nivel Segn la forma de ejecucin Lenguajes compilados Lenguajes interpretados Segn el paradigma de programacin que poseen cada uno de ellos

LENGUAJE DE PROGRAMACION

CLASIFICACION NIVEL DE ABSTRACCION

Lenguajes de bajo nivel Los lenguajes de bajo nivel son lenguajes de programacin que se acercan al funcionamiento de una computadora. El lenguaje de ms bajo nivel por excelencia es el cdigo mquina.

El Lenguaje Maquina est escrito en lenguajes directamente inteligibles por la maquina (computadora), ya que sus instrucciones son cadenas binarias (0 y 1). Lenguajes de alto nivel Los lenguajes de alto nivel son normalmente fciles de aprender porque estn formados por elementos de lenguajes naturales, como el ingls.

LENGUAJE DE PROGRAMACION

CLASIFICACION NIVEL DE ABSTRACCION ALTO NIVEL

Un lenguaje de programacin de alto nivel se caracteriza por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las mquinas.
Ventajas Genera un cdigo ms sencillo y comprensible. Escribir un cdigo vlido para diversas mquinas y, posiblemente, sistemas operativos.

Inconvenientes Reduccin de velocidad al ceder el trabajo de bajo nivel a la mquina. Algunos requieren que la mquina cliente posea una determinada plataforma.

LENGUAJE DE PROGRAMACION

CLASIFICACION FORMA DE EJECUCION

Lenguajes Compilados
Naturalmente, un programa que se escribe en un lenguaje de alto nivel tambin tiene que traducirse a un cdigo que pueda utilizar la mquina.

Lenguajes Interpretados
Se puede tambin utilizar una alternativa diferente de los compiladores para traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en forma permanente el cdigo objeto que se produce durante la compilacin para utilizarlo en una ejecucin futura, el programador slo carga el programa fuente en la computadora junto con los datos que se van a procesar.

LENGUAJE DE PROGRAMACION

CLASIFICACION FORMA DE EJECUCION - COMPILADOR

Un compilador es un programa que permite traducir el cdigo fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (tpicamente lenguaje de mquina.

De esta manera un programador puede disear un programa en un lenguaje mucho ms cercano a como piensa un ser humano, para luego compilarlo a un programa ms manejable por una computadora

LENGUAJE DE PROGRAMACION

CLASIFICACION FORMA DE EJECUCION COMPILADOR - PARTES

La construccin de un compilador involucra la divisin del proceso en una serie de fases que variar con su complejidad. Generalmente estas fases se agrupan en dos tareas: el anlisis del programa fuente y la sntesis del programa objeto.

ANALISIS
Se trata de la comprobacin de la correccin del programa fuente, e incluye las fases correspondientes al Anlisis Lxico (que consiste en la descomposicin del programa fuente en componentes lxicos), Anlisis Sintctico (agrupacin de los componentes lxicos en frases gramaticales ) y Anlisis Semntico (comprobacin de la validez semntica de las sentencias aceptadas en la fase de Anlisis Sintctico).

SINTESIS
Su objetivo es la generacin de la salida expresada en el lenguaje objeto y suele estar formado por una o varias combinaciones de fases de Generacin de Cdigo (normalmente se trata de cdigo intermedio o de cdigo objeto) y de Optimizacin de Cdigo (en las que se busca obtener un cdigo lo ms eficiente posible).

LENGUAJE DE PROGRAMACION

CLASIFICACION FORMA DE EJECUCION COMPILADOR - TIPOS

Esta taxonoma de los tipos de compiladores no es excluyente, por lo que puede haber compiladores que se adscriban a varias categoras: Compiladores cruzados: generan cdigo para un sistema distinto del que estn funcionando. Compiladores optimizadores: realizan cambios en el cdigo para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original. Compiladores de una sola pasada: generan el cdigo mquina a partir de una nica lectura del cdigo fuente. Compiladores de varias pasadas: necesitan leer el cdigo fuente varias veces antes de poder producir el cdigo mquina.

Compiladores JIT (Just In Time): forman parte de un intrprete y compilan partes del cdigo segn se necesitan.

LENGUAJE DE PROGRAMACION

CLASIFICACION FORMA DE EJECUCION - INTERPRETE

En ciencias de la computacin, intrprete o interpretador es un programa informtico capaz de analizar y ejecutar otros programas, escritos en un lenguaje de alto nivel. Los intrpretes se diferencian de los compiladores en que mientras estos traducen un programa desde su descripcin en un lenguaje de programacin al cdigo de mquina del sistema, los intrpretes slo realizan la traduccin a medida que sea necesaria, tpicamente, instruccin por instruccin, y normalmente no guardan el resultado de dicha traduccin.

LENGUAJE DE PROGRAMACION

CLASIFICACION FORMA DE EJECUCION - INTERPRETE

Los programas interpretados suelen ser ms lentos que los compilados debido a la necesidad de traducir el programa mientras se ejecuta, pero a cambio son ms flexibles como entornos de programacin y depuracin (lo que se traduce, por ejemplo, en una mayor facilidad para reemplazar partes enteras del programa o aadir mdulos completamente nuevos).

LENGUAJE DE PROGRAMACION

CLASIFICACION - PARADIGMA

El trmino paradigma significa ejemplo o modelo. En el mbito cientfico, religioso u otro contexto epistemolgico, el trmino paradigma puede indicar el concepto de esquema formal de organizacin, y ser utilizado como sinnimo de marco terico o conjunto de teoras
Un paradigma de programacin es una propuesta tecnolgica que es adoptada por una comunidad de programadores cuyo ncleo central es incuestionable en cuanto a que unvocamente trata de resolver uno o varios problemas claramente delimitados.

LENGUAJE DE PROGRAMACION

CLASIFICACION POR PARADIGMA

Tipos de paradigmas de programacin ms comunes Imperativo o por procedimientos: es considerado el ms comn y est representado, por ejemplo, por C, BASIC o Pascal. Funcional: est representado por Scheme o Haskell. Este es un caso del paradigma declarativo. Lgico: est representado por Prolog. Este es otro caso del paradigma declarativo. Declarativo: por ejemplo la programacin funcional, la programacin lgica, o la combinacin lgico-funcional. Orientado a objetos: est representado por Smalltalk, un lenguaje completamente orientado a objetos.

LENGUAJE DE PROGRAMACION

CLASIFICACION POR PARADIGMA PROGRAMACION IMPERATIVA

La programacin imperativa, en contraposicin a la programacin declarativa es un paradigma de programacin que describe la programacin en trminos del estado del programa y sentencias que cambian dicho estado. Los programas imperativos son un conjunto de instrucciones que le indican al computador cmo realizar una tarea.

LENGUAJE DE PROGRAMACION

CLASIFICACION POR PARADIGMA PROGRAMACION FUNCIONAL

En ciencias de la computacin, la programacin funcional es un paradigma de programacin declarativa basado en la utilizacin de funciones aritmticas que no maneja datos mutables o de estado. Enfatiza la aplicacin de funciones, en contraste con el estilo de programacin imperativa, que enfatiza los cambios de estado.

LENGUAJE DE PROGRAMACION

CLASIFICACION POR PARADIGMA PROGRAMACION DECLARATIVA

La Programacin Declarativa, en contraposicin a la programacin imperativa es un paradigma de programacin que est basado en el desarrollo de programas especificando o "declarando" un conjunto de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones que describen el problema y detallan su solucin. La solucin es obtenida mediante mecanismos internos de control, sin especificar exactamente cmo encontrarla (tan slo se le indica a la computadora que es lo que se desea obtener o que es lo que se est buscando).

LENGUAJE DE PROGRAMACION

CLASIFICACION POR PARADIGMA POO

Mtodo de implementacin en el cual los programas se organizan como colecciones cooperativas de objetos, cada uno de los cuales representan una instancia de alguna clase, y cuyas clases son todas miembros de una jerarqua de clases unidas mediante relaciones de herencia.

LENGUAJE DE PROGRAMACION

S-ar putea să vă placă și