Programando Proyectos en Capas de abstracción
By: Date: julio 14, 2007 Categories: Programación

En el blog de Julio, el Michoacano, encontré un articulo llamado I LOVE JAVA

Creo que este lenguaje me encanta no tanto por su sintaxis o la manera en que se programa, si no por que tiene cosas que en otros lenguajes no se podría hacer o no seria tan fácil. A veces tienes que hacer cosas que en otros tendrías que cambiar el codigo fuente, en JAVA solo cambias la manera en que se ejecuta.

Tenía la intención de RE-Redactar un artículo del tema, pero como es fin de semana, creo que mejor rescato lo que comente en su blog.

Pero Julio, Java no es el único lenguaje que permite hacer eso, básicamente todos los lenguajes pueden y no solo con las conexiones TCP, en cualquier rubro. Cualquier lenguaje programado en capas de abstracción permite sin menor esfuerzo adaptarle nuevo código, pero se necesita mucha disciplina para programar en ese estilo.

El uso más común de las capas de abstracción se usa en programas que usaran bases de datos y que pudieran ser cualquiera de las que hay disponibles, léase Mysql, Posgress, Oracle, MSSQL, etc, etc.

De esa forma en todo tu código te refieres a insertar un campo y al pasar a la siguiente capa tu programa usara las funciones correctas de acuerdo a la base de datos a la que se esta conectado.

Tu solo usarías int insertar (String Valor); sin importar la DB y en otro modulo de tu programa deberás desambiguar la función insertar para que realmente se inserte en la DB seleccionada y devolver un valor diferente a cero si fallo la inserción, de hecho esto es que tu programa soporte APIS e incluso terceros puedan agregarle módulos si documentas bien las APIs de tu programa.
Como ya te imaginas, no es programación de un rato, ni de flojos, requiere, conocimientos de programación estructuradas, mucha paciencia y por supuesto código elegante, el resultado final será un programa 100% escalable por ti y por otros que decidan programar módulos para agrandar tu programa original.

Todos los proyectos grandes sin importar en que lenguaje los escribas deberían estar diseñados en capas de abstracción, incluso los de JAVA, por que la misión de JAVA es compilar una vez y correr siempre, pero eso no resuelve el problema de hacer proyectos grandes. Para darte una idea de cómo funciona y en JAVA, visita la pagina de www.compiere.org es un ERP escalable 100% Java

4 thoughts on “Programando Proyectos en Capas de abstracción

  1. Usa: Mozilla Firefox Mozilla Firefox 2.0.0.4 en Windows Windows XP - Detectado...

    En .Net existen las applications blocks, estas aunque fueron diseñadas por el area de Patterns & Practices de Microsoft, y te permiten usar una capa de datos que se interconecta con un proveedor generico de datos, ya en el .config designas a que base de datos y que proveedor de Ado.net vas a utilizar para conectarte a la base de datos.

    La potencia de todo esto radica, que nuestra logica de negocios siempre debe estar fuera de la DB, muchos cometemos el error de incrustar nuestra logica de negocio en una gran cantidad de stored procedures y por lo menos los costos de migracion entre diferentes proveedores(por ejemplo de Oracle a Sql Server) es increiblemente alto, y por otro lado si quieres usar una DB como SQLite, esta no soporta stored procedures, ja ja, entonces te das cuenta del grave error de implementar logica de negocios dentro del repositorio de datos.

  2. Usa: Internet Explorer Internet Explorer 6.0 en Windows Windows XP - Detectado...

    QUE MAMADA DE WEB. NADA RELEVANTE, ABURRIDA , QUE MIERDERO PRIMERA Y ULTIMA VEZ QUE ENTRO A ESTA CHINGADERA

  3. Usa: Internet Explorer Internet Explorer 7.0 en Windows Windows Vista - Detectado...

    NADA QUE VER GAVO ESTA ES DE LAS MEJORES PAGUINAS QUE VISITO QUE TIENEN NIVEL YA CASI NO VISITO LA DE MEGABYTE DESDE QUE EL DRAGON LO HUMILLO EN ESTA PAGINA ESE WEY NUNCA PUDO HUMUMILLAR AL DRAGON O CUANDO ANTRAX EL DRAGON DE MARICON NO LO BAJO SE BURLO DE EL HASTA QUE SE CANSO Y ANTRAX NI SUS LUCES YO HE APRENDIDO MUCHO AQUI ESTE TEMA POR EJEMPLO AHORA ENTIENDO COMO PROGRAMAN LOS PHPS COMO EL JOOMLA Y PHPBB SI NO FUERA POR GENTE COMO EL DRAGON MUCHOS NO SABRIAMOS ESAS COSAS Y ESTE TIPO DE TEMA NO SE ENCUENTRA EN FOROS COMO EL DE MEGABYTE O ANTRAX SE QUE NO SOY EL UNICO QUE PIENSA ASI YO LLEGE A ESTA PAGUINA POR QUE UN AMIGO ME LA RECOMENDO ASI QUE NO SOY EL UNICO QUE PIENSA LO QUE DIJO EL DRAGON ES DE LOS MEJORES HACKERS QUE HAY Y NO ES TAN MAMON COMO LOS OTROS MUCHOS ADEMAS YO NO COMENTO NADA POR QUE SIENTO QUE NO TENGO NIVEL PARA DECIRLE NADA AL DRAGON PERO LEO TODO LO QUE PONE Y SOLO ESCRIBI PARA CONTESTARTE QUE TE EQUIVOCAS LEE TODA LA PAGUINA DEL DRAGON Y CAMBIAS DE OPINION ANTE UN HACKER DE VERDAD

  4. Usa: Internet Explorer Internet Explorer 7.0 en Windows Windows Vista - Detectado...

    Gracias por los buenos comentarios siriusx, pero yo no me considero un hacker. Pero me da gusto saber que te sirven las cosas que escribo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *