miércoles, 23 de diciembre de 2009

Linux Vista










Hola amigos de EL BREDDITA!, hoy les vengo a traer Linux Vixta, es es una distribución basada en Fedora con KDE como entorno gráfico pero con el aspecto de Windows Vista.



Está pensada para usuarios de Windows que temen usar Linux, y dispone de opciones para portátiles como Sony Vaio e IBM Thinkpad, además de KPowersave para optimizar el uso de la batería.



Tanto el escritorio, como las ventanas y el menú de inicio tienen el mismo aspecto que Windows Vista, pero con los programas y utilidades propias de KDE y de Fedora.



Ademas Wine (el emulador de Windows de Linux) esta actualizado para que si quieres puedas meterles programas Win32 propios de la plataforma Windows en Linux. Una vez grabado el disco de este linux puede usarse como DVDLIVE (Para probar el sistema sin instalarlo) o como un DVD de instalación normal. Esta disponible en varios idiomas entre ellos el castellano, todas las descargas son de un solo enlace en ISO listo para gravar.




DESCARGAS:

VERSION EN ESPAÑOL: Pincha aquí para descargar

VERSION EN INGLÉS: Pincha aquí para descargar

VERSION EN PORTUGUÉS: Pincha aquí para descargar

VERSION MULTILENGUAJE: Pincha aqui para descargar





Requerimientos:
5 GB, en Disco Duro
256 Ram
Procesador (Recomendado 500 mhz o superior).
128 MB de video (para utilizar Beryl solamente)
Tipo de Distribución: Instalación / CD Live
Velocidad de Ejecución: Excelente
Viene con Beryl Instalado.
Sistema Operativo Base: Debian > Knoppix
Manejo de Paquetes: DEB
Escritorio: KDE



link: http://www.videos-star.com/watch.php?video=yfzTRs9MW8c


Fundamentos de programación en capas

Amigos lectores, muchos ustedes estarán estudiando programación y seguramente tendrán que desarrollar un software al final de cada año que concurren. En mi caso estoy desarrollando un sistema en java para el control y la gestión de una automotora. Les voy a explicar una experiencia propia y espero que le sirva de ayuda para quienes tienen que desarrollar algún sistema y se sienten medios perdidos para poder arrancar.


Historia


Hace un tiempo, antes de que yo fuera joven, sistemas informáticos no tenían bases de datos, luego cuando joven tenían bases de datos que eran casi propias de cada lenguaje, en Cobol por ejemplo teníamos archivos tipo texto armados a mano, lo mismo en Basic y Pascal, luego en

Clipper o Fox usábamos DBF (de Dbase III Plus), ahí ya se comenzó a separar el lenguaje de programación de la base de datos en si.


Por ejemplo Access, lo podemos usar desde JAVA, Visual Basic, C#, etc., la idea cambio y en principio tenemos un motor de base de datos o servidor de base de datos como Access, SQL, Oracle, MySQL y por otro lado un lenguaje de programación que accede eso Insertando, Modificando, Listando, etc.


image0021.gif


Si nos ponemos a mirar tenemos 2 cosas separadas, ya que una base en Access es aparte totalmente de nuestro software que puede estar hecho en cualquier lenguaje, incluso la misma base RentaAutos.MDB la podemos leer directo desde Access, o con un programa en Java.



Si bien parece ya mucho poder separar en estas 2 partes, luego aparecen otros elementos, al comienzo los software eran hechos por ejemplo para Windows en red Local, facilísimo, pero claro luego aparece la web, y de pronto esa base de datos única se debía leer desde un software de red local y además desde la web, por tanto se agrega otro software posible a nuestro sistema hecho especialmente para la base de datos.


image004.gif


Para agregar otro elemento complicado mas llegamos a los celulares, o sea que el sistema tiene una base de datos, que se lee desde un PC, también desde la Web y también desde un teléfono móvil o celular.


Hasta ese momento la cosa era fácil se hace 1 base de datos y 3 programas totalmente distintos para cada dispositivo, solución fácil, pero claro había que hacer todo de nuevo cada vez.


Actualidad

Fue ahí cuando aparecen los nuevos lenguajes con sus nuevas posibilidades y formas de programar, donde la programación orientada a objetos fue fundamental, de esta forma podíamos dividir ese software en capas independientes. Como vemos en el esquema general, esta compuesto por diferentes partes, como dijimos hace un momento, antes el software por completo se realizaba 2 o mas veces, para redes locales o para web, lo cual no era muy bueno ya que teníamos que trabajar 2 o mas veces aumentando los costos.


image006.gif


En el esquema vemos que tenemos la base de datos, luego el software que esta formado por diferentes elementos (o capas), uno de ellos es la de acceso a datos, y la misión es acceder a la base de datos y traer la información (registros de las tablas, cuando consultamos, o listamos), o llevarlos a la base de datos (cuando agregamos o modificamos), con esto logramos que todo ese código JAVA lo re‐utilicemos sin importar si estamos en Web o Red Local (o Celulares). El otro segmento es el que justamente debemos realizar consiste en las Entidades Relevantes, o sea Clases JAVA que permitan contener esa información que se leyó desde la base de datos mediante el Acceso a Datos, será este un intermediario para que luego la interfaz muestre eso para PC o Web, todo el segmento de código JAVA de estas Clases de Entidades Relevantes se re‐utiliza sin importar de si es para PC o Web.

Por ultimo vemos que hay 2 componentes que son Interfaz PC, que será nuestro código JAVA que permita al usuario trabajar en un PC, y otro elemento que permitirá trabajar desde la web, lo que haremos con un Applet JAVA.


Con este sistema logramos entonces crear un Software único, que funciona con una base de datos, pero que no necesariamente debe correr en PC únicamente o Web únicamente ya que esta creado en capas independientes.


Futuro


El día de mañana podemos utilizar el mismo sistema con otra base de datos que no sea Access, por ejemplo MySQL, cambiando solo el Acceso a datos, quedando el esquema así:


Logrando de esta forma un software que brinde la posibilidad de trabajar con una u otra base de datos (o mas), sin necesidad de hacerlo todo de nuevo ya que reutilizamos el código.


image008.gif


Hoy en día existen herramientas como Genexus que permiten el desarrollo de software de forma mucho mas sencilla, donde una ves que armamos la estructura del programa y normalizamos nuestra base de datos nos permite elegir en que leguaje deseamos compilar y el sistema escribe todo el código de nuestro programa en el lenguaje elegido, claro que es necesario tener instalado las herramientas necesarias para que pueda compilar. De esta forma nos ahorramos largas noches sin dormir sentados frente al monitor de nuestro computador escribiendo interminables líneas de código. De todas formas muchas veces es necesario modificar el código escrito por el programa aunque el trabajo es mucho menor que el tener que digitar absolutamente todo de cero.


En síntesis el desarrollo de un software en capas tiene muchísimas ventajas, piensen en cuantas horas de programación perderían si tienen que diseñar un sistema diferente para cada tipo de interfaz que se tenga que utilizar. Por otro lado, hay lenguajes más complejos que otros y cada uno con sus ventajas y desventajas. Muchas veces no van a tener la posibilidad de elegir con el lenguaje que tienen que programar por eso es bueno tener idea de cómo funcionan y para que se utilizan en general los distintos lenguajes de programación.


Por eso en la medida de lo posible cuando desarrollen un software traten siempre de mirar un poco mas delante en el tiempo teniendo en cuenta que posiblemente tendrán que modificarlo para agregarle prestaciones nuevas.