ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Lenguajes De Programacion


Enviado por   •  17 de Septiembre de 2013  •  1.448 Palabras (6 Páginas)  •  311 Visitas

Página 1 de 6

OBJETO DE ESTUDIO

El principal objetivo del lenguaje es, por supuesto, servir de apoyo didáctico en una materia de lenguajes de programación, intérpretes y compiladores. Derivado de la persecución de este objetivo surgen varias metas específicas y objetivos particulares:

La apreciación del desarrollo e implementación de un lenguaje de programación.

La comprensión del procedimiento seguido en la formación de un conjunto de reglas gramaticales que permiten identificar y nombrar sin ambigüedad acciones y secuencias ordenadas de acciones sobre el contexto específico de un problema en particular.

Proporcionar un medio de familiarización con la realización de operaciones aritméticas usando una pila y su posterior extensión para la manipulación de otros datos.

La clara especificación y adecuada documentación del proceso de creación o extensión de un lenguaje y sus resultados.

En el diseño de Stop se ha tratado de seguir muchos de los principios usados en los modernos lenguajes de programación hasta el punto donde su implementación no sea demasiado complicada para el desarrollo de un proyecto semestral. Principalmente se ha buscado que sea regular, modular y estructurado.

El lenguaje de programación está pensado para la programación evolutiva. Esta consiste en un método de programación basado en un ciclo de prueba y error donde se refina un programa hasta conseguir que haga lo que queremos. Esta forma de programar se aplica a problemas donde se desconoce que algoritmo nos llevará a la solución. Esta situación se da en investigación y en la creación de prototipos donde hay que realizar muchas pruebas hasta dar con la solución más apropiada. Para estos casos, es más apropiado el uso de un interprete que un compilador, ya que de esta forma se reduce el tiempo invertido en cada prueba.

Para que un lenguaje sea efectivo en programación evolutiva tiene que facilitar: la interacción, la modificación del programa y aportar instrucciones de alto nivel cercanas al problema. Estos tres puntos se consiguen cuando el lenguaje tiene las siguientes características:

Estado de Interacción. Entre prueba y prueba es interesante guardar el estado de ejecución. De esta forma se evita repetir la ejecución de las instrucciones necesarias para llegar al estado de ejecución donde queremos realizar pruebas. Los programas implementa esta característica mediante un ámbito global dinámico que guarda funciones y variables mientras se utiliza el intérprete.

Sintaxis Cercana al Problema. Es más efectivo escribir en una notación cercana al problema que adaptarse a la sintaxis de un lenguaje de programación. De esta forma se evita el paso de traducción que tiene que realizar el programador antes de escribir una nueva sentencia del programa.

Abstracción. La semántica del lenguaje tiene que ser cercana a la semántica de la notación utilizada en el problema. Como no es cuestión de construir un lenguaje para cada problema, lo que se hace es aportar herramientas para acercar la semántica del lenguaje a la del problema mediante abstracción.

Integración. Para la mayoría de campos se encuentran librerías que implementan las operaciones más comunes. Entonces para que un lenguaje sea efectivo tiene que poder integrar estas librerías.

Fácil Escritura. En la programación estándar es más importante facilitar la lectura de programas que la escritura (se leen más veces que se escriben). En el caso de lenguajes interactivos es importante que la escritura de sentencias sea fácil.

Concisión. Las sentencias a escribir tienen que ser cortas para agilizar la interacción. Aporta generadores, listas por comprensión y una mínima redundancia para reducir el tamaño de los programas sin perder en claridad.

Modificación Local. La evolución de un programa se consigue por sucesivas modificaciones que se han de poder realizar rápidamente. Esto se consigue si las modificaciones del programa afectan al menor código posible. Esto supone que la modificación se realizará solo en un lugar del programa y no en dos como se da el C++ donde hay que modificar el fichero de implementación (.cpp) y el fichero de cabecera (.h).

JUSTIFICACIÓN

Los factores fundamentales en la calidad del software son: la eficiencia, la portabilidad, la verificabilidad, la integridad, la facilidad de uso, la exactitud, la robustez, la extensibilidad, la compatibilidad y la reutilización. En términos generales, estos factores pueden describirse de la siguiente forma:

La eficiencia: capacidad para el aprovechamiento óptimo de los recursos que emplea.

Los lenguajes OOP arrastraron en un principio la reputación de ser ineficaces. Esto se debía en gran medida a que los primeros lenguajes (como Smalltalk) eran interpretados y no compilados. La existencia de compiladores permite a los desarrolladores ganar rapidez. Actualmente, usando un buen lenguaje orientado a objetos como C++, Java, etc. Junto con las librerías apropiadas para la realización de un programa, puede que se ejecute más rápidamente que el mismo programa compilado con un lenguaje procedural.

La portabilidad: facilidad para ser ejecutados en distintos entornos lógicos o físicos.

La verificabilidad: capacidad para soportar procedimientos de pruebas, test o ensayos.

La integridad: nivel de protección frente a procesos que traten de alterarlo.

La facilidad de uso: comodidad y claridad en

...

Descargar como (para miembros actualizados)  txt (9.7 Kb)  
Leer 5 páginas más »
Disponible sólo en Clubensayos.com