Please enable JavaScript.
Coggle requires JavaScript to display documents.
Especificación e implicación en Lenguajes de programación, 1…
Especificación e implicación en Lenguajes de programación
Lenguajes Naturales y Lenguajes de programación
Lenguajes naturales:
Se le conoce como lenguaje natural a los que usamos para hablar y escribir en nuestra vida diaria, pero también podemos llamar lenguajes naturales al hacer referencia al software que permite que los sistemas de computación acepten, interpreten y ejecuten instrucciones en el lenguaje materno o "natural" que habla el usuario final.
Ventajas:
Es un lenguaje fácil de usar y de entender ya que no es necesario aprender ningún lenguaje nuevo y cualquiera puede leer la especificación y comentarla o criticarla.
Desventajas:
Son inconvenientes están la imprecisión y la ambigüedad.
Propiedades:
▪ Desarrollados por enriquecimiento progresivo antes de cualquier intento de forma de una teoría.
▪ La importancia de su carácter expresivo debido grandemente a la riqueza del componente semántico (polisemántica).
▪ Dificultad o imposibilidad de una formalización completa.
Aunque el análisis de requisitos se haya realizado correctamente, una especificación en lenguaje natural puede dar lugar a que la implementación final no cumpla estos requisitos
Debido a su propia facilidad de uso e imprecisión,
las especificaciones suelen ocultar lagunas que sólo
se pondrán de manifiesto a la hora de programar, es decir,
al traducir la especificación a un lenguaje de programación
Lenguajes de programación
:
Son un conjunto de órdenes o comandos que describen el proceso deseado. Cada lenguaje tiene sus instrucciones y enunciados verbales propios, que se combinan para formar los programas de cómputo.
Se agrupan en
▪
Los lenguajes simbólicos
Lenguaje de programación en el que las instrucciones de los diferentes programas se codifican utilizando los caracteres
de las lenguas naturales para la ejecución de un programa.
Este tipo de lenguaje de dividen en:
▪ Los lenguajes simbólicos de bajo nivel o ensambladores
▪ Los lenguajes simbólicos de alto nivel.
Dentro de los segundos se puede distinguir en
▪
lenguaje procedural:
Es aquel lenguaje de programación en el que hay que señalar tanto lo que se quiere hacer como el modo de hacerlo.
▪
lenguaje relacional:
Es un tipo de lenguaje de programación en el que sólo hay que especificar lo que se quiere obtener, sin necesidad de especificar a su vez el camino a seguir para obtener los resultados deseados.
▪
Los lenguajes máquina
En estos lenguajes, la codificación de estos lenguajes se hace utilizando un lenguaje binario de ceros y unos que son los únicos símbolos que puede entender cualquier computador.
Cada sistema físico tiene su código máquina distinta por lo que un programa escrito en un determinado código máquina sólo vale para un sistema físico.
Lenguajes Imperativos
Defincion:
Existen cuatro modelos básicos de computación que describen casi todos los lenguajes de programación actuales dentro de esto están los lenguajes imperativos que se caracterizan por ser lenguajes controlados por mandatos u orientados a enunciados (instrucciones).
Un programa se compone de una serie de enunciados, y la ejecución de cada enunciado hace que el intérprete cambie el valor de una localidad o más en su memoria, es decir, que pase a un nuevo estado.
Características:
Estado implícito
Comandos o Instrucciones: asignación, saltos condicionales e incondicionales, bucles... y afectan o modifican el estado.
Propiedades:
Requiere especificación sobre cómo ejecutar una tarea.
Requiere gran número de instrucciones de procedimiento.
Orientados a la utilización por programadores profesionales.
Se deben especificar todas las alternativas.
El código puede ser difícil de leer, entender y mantener.
Es un Lenguaje creado originalmente para operación por lotes.
Algunos aspectos de la programación Imperativa
Las dificultades comienzan cuando el efecto del cambio puede extenderse a través de un programa muy grande, tal vez introduciendo errores en "un rincón olvidado". Estos errores pueden permanecer sin detección durante años.
La estructuración es clave para manejar programas muy grandes. La legibilidad de un programa puede mejorarse organizándolo de tal manera que cada parte pueda entenderse en forma relativamente independiente del resto.
La estructura ayuda a mantener la situación dentro del límite de la atención humana
Cualquier fragmento aislado de programa debe entenderse y mejorarse con facilidad