Tipos de software

Solo disponible en BuenasTareas
  • Páginas : 14 (3384 palabras )
  • Descarga(s) : 0
  • Publicado : 17 de enero de 2012
Leer documento completo
Vista previa del texto
Por su estructura:
–Funcionales
La programación funcional es un paradigma de programación (propuesta tecnológica) declarativa basado en la utilización de funciones aritméticas que no maneja datos mutables o de estado. Enfatiza la aplicación de funciones. La programación funcional tiene sus raices en el cálculo lambda, un sistema formal desarrollado en los 1930s para investigar la definición defunción, la aplicación de las funciones y la recursión. Muchos lenguajes de programación funcionales pueden ser vistos como elaboraciones del cálculo lambda.
Los programas escritos en un lenguaje funcional están constituidos únicamente por definiciones de funciones, entendiendo éstas no como subprogramas clásicos de un lenguaje imperativo, sino como funciones puramente matemáticas, en las que severifican ciertas propiedades como la transparencia referencial (el significado de una expresión depende únicamente del significado de sus subexpresiones), y por tanto, la carencia total de efectos colaterales.
Otras características propias de estos lenguajes son la no existencia de asignaciones de variables y la falta de construcciones estructuradas como la secuencia o la iteración (lo queobliga en la práctica a que todas las repeticiones de instrucciones se lleven a cabo por medio de funciones recursivas).
–Orientados a objetos.
Significa que el software se organiza como una colección de objetos discretos que contiene tanto estructura de datos como también un comportamiento, sus características son:
Identidad: Los datos están cuantificados en entidades discretas y distinguiblesdenominadas objetos.
Clasificación: Los objetos con la misma estructura de datos (atributos) y comportamiento (operaciones) se agrupan para formar una misma clase, se dice que cada objeto es una instancia de su propia clase, y una clase es una abstracción que describe propiedades importantes para una aplicación y se olvida del resto.
Polimorfismo: Significa que una misma operación puede comportarsede modos distintos en distintas clases, una operación es una acción o transformación que se aplica a un objeto
Herencia: Comparte atributos y operaciones entre clases tomando como base una relación jerárquica, es decir que puedo definir una clase que después producirá subclases, sabiendo que todas las subclases adquirirán todas y cada una de las propiedades de su super-clase y le agrega ademássus propiedades exclusivas
–Orientados a listas.
Las listas consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias (punteros) al nodo anterior o posterior, son estructuras de datos dinámicas, esto es, su talla puede variar en el curso de la sesion de trabajo.
Son además estructuras de tipo secuencial. Esto es, para acceder a un elementocontenido en una lista esnecesario recorrer previamente todos los que le preceden.
En Lisp y Scheme, las listas son las estructuras fundamentales de manejo de datos.
Es especialmente adecuado para la IA es el hecho de que el código y los datos tengan el mismo tratamiento (como listas); esto hace especialmente sencillo escribir programas capaces de escribir otros programas según las circunstancias.–Orientados a componentes.
La programación basada en componentes (PBC) es aquella que se basa en la implementación de sistemas utilizando componentes previamente programados y probados.
Un componente de software es un elemento de un sistema que ofrece una funcionalidad o servicio predefinido (escrito de acuerdo a unas especificaciones), y es capaz de comunicarse con otros componentes.
Lacapacidad de ser reutilizado, es una característica importante de los componentes de software de alta calidad. Un componente debe ser diseñado e implementado de tal forma que pueda ser reutilizado en muchos programas diferentes.
La POC nace con el objetivo de construir un mercado global de componentes software, cuyos usuarios son los propios desarrolladores de aplicaciones que necesitan reutilizar...
tracking img