Anda di halaman 1dari 5

INTRODUCCIN AL DISEO DE LOS LENGUAJES DE PROGRAMACIN

2.1 VISIN DEL PROBLEMA.

Visin del problema


Se debe identificar que es lo que se piensa hacer con el lenguaje, ya que puede ser slo la estructuracin de contenido Web, visualizar informacin o bien realizar la conversin de un documento. HTML es lenguaje de representacin visual OWL es lenguaje de descripcin de elementos C es un lenguaje programacin VISION PROBLEMA DE LOS LENGUAJES DE PROGRAMACION Proporciona modelos de diseo que permitan caracterizar el desarrollo de aplicaciones utilizando un lenguaje de programacin se necesita un lenguaje de modelado que sea capaz de capturar la semntica del modelo al que se ajusta el lenguaje de programacin. El modelado de diseo proporcionado por el lenguaje de modelado debe ser capas de capturar la semntica del programa que implementa la especificacin de requisitos. El disear completamente un lenguaje. Si es que es el enfoque se toma, como sea, se debe tomar con cuidado para no hacer una extensin tan grande y compleja como se llega a ser, el hecho, de un nuevo lenguaje. En tales casos, la necesidad de retener algunas interfaces con un viejo lenguaje probablemente ceder gravemente el diseo de la extensin. Tambin, si uno extiende un lenguaje existente, es necesario escoger cuidadosamente un lenguaje base para que el trabajo de la extensin se aminorare y la extensin elegantemente quede dentro del lenguaje. El objetivo debe ser el de producir un lenguaje el cual se ms grande aun que igualmente bien construido.

2.2 Consideraciones preliminares Debemos tomar en cuenta las palabras reservadas del lenguaje, los operadores, los tipos de datos. Debemos considerar el objetivo del lenguaje, si es un lenguaje de enseanza, si es un lenguaje para profesionales, si el cdigo desarrollado va a ser mejor. CONSIDERACIONES PRELIMINARES DE DEL DISEO DE LENGUAJES DE PROGRAMACION

Debemos tomar en cuenta las palabras reservadas del lenguaje, los operadores, los tipos de datos. Debemos considerar el objetivo del lenguaje, si es un lenguaje de enseanza, si es un lenguaje para profesionales, si el cdigo desarrollado va a ser mejor. EFICIENCIA DE LOS LENGUAJES DE PROGRAMACION Compilacin rpida del cdigo fuente y ejecucin rpida del cdigo objeto. 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 reutilizacin. En trminos 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 reputacin de ser ineficaces. Esto se deba 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 libreras apropiadas para la realizacin de un programa, puede que se ejecute ms rpidamente que el mismo programa compilado con un lenguaje procedural La portabilidad: facilidad para ser ejecutados en distintos entornos lgicos o fsicos . La verificabilidad: capacidad para soportar procedimientos de pruebas, test o ensayos. La integridad: nivel de proteccin frente a procesos que traten de alterarlo. La facilidad de uso: comodidad y claridad en la interaccin con el usuario.

La exactitud: nivel de precisin que alcanzan los resultados obtenidos. La robustez: capacidad para funcionar correctamente en situaciones extremas. La extensibilidad: capacidad para adaptar su funcionamiento al incremento en sus objetivos. La compatibilidad: facilidad de poder ser aplicados en conjuncin con otros programas. La reutilizacin: posibilidad de utilizarlos (total o parcialmente) en nuevos contextos. Para el diseo de lenguajes de Programacin se debe considerar varios aspectos, entre ellos las tareas que se desean realizar y los datos a manejar. Generalmente diseamos un lenguaje porque necesitamos comunicarnos con algo de manera fcil y rpida, por ejemplo un archivo, un hardware, una base de dato; ependiendo de la tarea que se quiera realizar entonces diseamos. Una forma de como hacerla y como podemos relacionarlo con otras tareas para permitir que esa relacin pueda ser automatizada. Adems de las tareas que se van a realizar tambien se debe pensar en los tipos de datos que se van a manejar, por ejemplo nmeros, cadenas, ya que si se van a realizar operaciones, hay que pensar en que espacio de memoria se van a almacenar. Otras cosas a considerar son como se va a manejar la memoria, y a que tipo de computadoras estarn enfocados.

2.3 Objetivos y filosofas del Diseo de los lenguajes de Programacin Algunos usos de los lenguajes de programacin son: Comunicacin humana Prevencin y Deteccin de errores Usabilidad Portabilidad Independencia de la mquina

OBJETIVOS Y FILOSOFIAS PROGRAMACION

DEL

DISEO

DE

LENGUAJES

DE

El principal objetivo del lenguaje es, por supuesto, servir de apoyo didctico en una materia de lenguajes de programacin, intrpretes y compiladores. Derivado

de la persecucin de este objetivo surgen varias metas especficas y objetivos particulares: La apreciacin del desarrollo e implementacin de un lenguaje de programacin. La comprensin del procedimiento seguido en la formacin de un conjunto de reglas gramaticales que permiten identificar y nombrar sin ambigedad acciones y secuencias ordenadas de acciones sobre el contexto especfico de un problema en particular. Proporcionar un medio de familiarizacin con la realizacin de operaciones aritmticas usando una pila y su posterior extensin para la manipulacin de otros datos. La clara especificacin y adecuada documentacin del proceso de creacin o extensin de un lenguaje y sus resultados. En el diseo de Stop se ha tratado de seguir muchos de los principios usados en los modernos lenguajes de programacin hasta el punto donde su implementacin no sea demasiado complicada para el desarrollo de un proyecto semestral. Principalmente se ha buscado que sea regular, modular y estructurado. FILOSOFA DE DISEO DEL LENGUAJE El lenguaje de programacin esta pensado para la programacin evolutiva. Esta consiste en un mtodo de programacin 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 solucin. Esta situacin se da en investigacin y en la creacin de prototipos donde hay que realizar muchas pruebas hasta dar con la solucin ms apropiada. Para estos casos, es ms 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 programacin evolutiva tiene que facilitar: la interaccin, la modificacin del programa y aportar instrucciones de alto nivel cercanas al problema. Estos tres punto se consiguen cuando el lenguaje tiene las siguientes caractersticas: Estado de Interaccin. Entre prueba y prueba es interesante guardar el estado de ejecucin. De esta forma se evita repetir la ejecucin de las instrucciones necesarias para llegar al estado de ejecucin donde queremos realizar pruebas. Los programas implementa esta caracterstica mediante un mbito global dinmico que guarda funciones y variables mientras se utiliza el intrprete. Sintaxis Cercana al Problema. Es ms efectivo escribir en una notacin cercana al problema que adaptarse a la sintaxis de un lenguaje de programacin. De esta

forma se evita el paso de traduccin que tiene que realizar el programador antes de escribir una nueva sentencia del programa.

DISEO DETALLADO DE LENGUAJES DE PROGRAMACION

El diseo detallado tiene que ver con la especificacin de detalles algortmicos, representaciones concretas de datos, interconexiones entre funciones y estructuras de datos, y empaque del producto de programacin. El diseo detallado est fuertemente influenciado por el lenguaje de instrumentacin, pero no es lo mismo que la instrumentacin; el diseo detallado tiene que ver ms con aspectos semnticos y menos con detalles sintcticos que es la instrumentacin. El punto de inicio para el diseo detallado es una estructura arquitectnica a la que se le van a proporcionar los detalles algortmicos y las representaciones concretas de datos. Mientras que hay una fuerte tentacin para proceder directamente de la estructura arquitectnica a la instrumentacin, hay varias ventajas que pueden lograrse en el nivel intermedio de detalle proporcionado por el diseo detallado. La instrumentacin comunica los aspectos de la sintaxis del lenguaje de programacin, el estilo de codificacin la documentacin interna, y la insercin de pruebas y depuraciones al cdigo. Las dificultades que se encuentran durante la instrumentacin casi siempre se deben al hecho de que el instrumentador simultneamente est realizando anlisis, diseo y actividades de codificacin mientras intenta expresar el resultado final en un lenguaje de instrumentacin. El diseo detallado permite el diseo de algoritmos y representaciones de datos en un nivel ms alto de abstraccin y notacin que el que proporciona el lenguaje de instrumentacin . El diseo detallado separa la actividad de diseo a bajo nivel de la instrumentacin, igual que las actividades de anlisis y diseo aislan las consideraciones de lo que se desea de la estructura que lograr los resultados deseados. Una especificacin adecuada de diseo detallado minimiza el nmero de sorpresas durante la instrumentacin del producto.

Anda mungkin juga menyukai