lunes, 22 de noviembre de 2010

El esquema de programación Multiparadigma.

Bueno y que decir, se termino el semestre!, en todo este tiempo conocimos muchas cosas nuevas, por mencionar algunas que es la programación, y en si que es un paradigma de programación, entre muchas otras cosas.

En mi primer articulo en el blog, si bien recuerdo el paradigma de programación  lo definíamos como un conjunto de técnicas de programación para poder escribir de la mejor manera posible nuestros programas.

En todo el curso conocimos que dichas técnicas de programación, nos facilitan realmente el problema a tratar de resolver.
Por ejemplo conocimos lo que eran los paradigmas imperativos, funcionales, lógicos y orientados a objetos.
Y la verdad es que cada uno de ellos es bueno para el determinado problema que se nos presente.

Ahora un punto interesante.¿Podemos utilizar las cualidades de todos esos paradigmas, para resolver un problema en especifico? Por supuesto que si!, la programación sigue creciendo a pasos agigantados y siempre será necesario que nosotros también estemos al día y no quedarnos como vagamente se diría “quedarnos obsoletos”.

Volviendo al tema, claro que si!. Nosotros podemos aplicar técnicas de  varios paradigmas de programación para resolver determinado problema, e incluso hoy en día existen lenguajes dedicados para ese propósito, como lo es el caso de Go y OZ por mencionar algunos.
Cabe mencionar que muchos lenguajes modernos, también incorporan elementos de varios paradigmas de programación. Es mas no vallamos muy lejos, si recordamos casi al principio del curso conocimos lo que eran los lenguajes Script o lenguajes interpretados. Estos lenguajes poseen características de varios paradigmas.

El principal propósito de este paradigma , es permitir  a los programadores utilizar las mejores herramientas de trabajo,  si lo vemos desde este punto de vista, ningún paradigma de programación nos  va resolver los problemas de la forma mas fácil y eficiente posible. Hay que saber utilizar todas las herramientas disponibles y saber en donde aplicarlas.
En cuestiones de herramientas disponibles, tenemos a nuestro alcance el lenguaje de programación Oz que como ya mencione anteriormente, este incorpora características de varios paradigmas.

El lenguaje Oz fue diseñado para hacer un avance moderno para las aplicaciones concurrentes , inteligentes , de redes , tiempo real , paralelismo , interactivas y reactivas de la misma forma para resolver aplicaciones complejas robusta y rápidamente. Sin mencionar que oz contiene una forma simple y bien hecha de la mayoría de los conceptos de los principales paradigmas de programación, mencionados anteriormente.
Como Oz trabaja con muchos de los conceptos de los paradigmas de programación, es importante señalar que en el lenguaje existe una jerarquía entre sus tipos de datos. El siguiente esquema lo muestra de una manera mas clara:

oz

Algunos de ellos ya los conocemos, porque los hemos utilizado antes, otros tantos son del lenguaje mismo..
Oz al ser un lenguaje tan completo,  también posee entre sus características esquemas de la programación concurrente, es decir a un conjunto de procesos o hilos de ejecución creados por un único programa, por ejemplo la característica principal de la programación concurrente es la simultaneidad en la ejecución de múltiples tareas interactivas.
Podemos mencionar que en oz la concurrencia es muy eficiente y económica. Es decir puede generar miles de procesos en muy poco tiempo de ejecución a comparación de otros lenguajes de programación.

Bueno estas son las principales cualidades que podemos apreciar en un lenguaje de este tipo de paradigma.
La verdad me hubiera gustado poner algún ejemplo en donde se viera aplicado el lenguaje, pero me resulto muy difícil ya fue poca la información que me encontré, pero como mencione anteriormente, este lenguaje lo podemos ver aplicado a la programación de sistemas distribuidos y paralelos.

Compañeros, espero les sea de agrado esta entrada, otra cosa importante que me gustaría expresar es que no porque ya se halla terminado el semestre y esta unidad de aprendizaje halla finalizado, dejemos en el olvido todos nuestros blogs personales. Si tienen la posibilidad de seguir publicando háganlo ;) si al estar practicando descubren algo nuevo o hagan algo interesante, compártanlo con todos nosotros ;) estoy seguro que una gran parte de nosotros mostrara un intereses a todo lo nuevo que hagan.
Muchos saludos =)

No hay comentarios:

Publicar un comentario