He leído que tienes conocimientos de COM y DCOM, y deseo saber que software requiero para hacer 3 capas usando COM, en la actualidad uso SQL SERVER 7.0 y Visual Basic 6.0 y aunque tengo claro el concepto de 3 capas mi barrera es que software utilizo para cada una y como interactúa el software de cada capa, de lo que me han dicho con las herramientas que trabajo necesito ademas MTS para poner los componentes. Espero me puedas ayudar con información, direcciones o cualquier dato que me ayude en este tema.
Si quieres adentrarte en el mundo de COM puedes encontrar una valiosísima información en www.codeguru.com, hay hay numerosos ejemplos y artículos sobre COM y DCOM, El MTS (Microsoft transaction server) se encarga de ejecutar tus componentes, esto es, que tu componente es gestionado por el MTS, puede detenerlo, iniciarlo en un contexto de seguridad determinado, dejar siempre el componente activo (incluso si no hay instancias referenciadas) para mejorar la velocidad, etc. Te agradecería que me mandaras una aclaración explicándome a que te refieres con las 3 capas, porque yo no tengo claro a que te refieres o que tipo de diseño estas utilizando.
Viper, Primero debo agradecer tu explicación y voluntad de ayuda, luego te diré que me refiero a sistemas que tengan una capa de presentación(interfaces), otra de reglas del negocio y otra de almacen de datos, es lo que a nosotros acá en mi país nos enseñan como el concepto de arquitectura tres capas y mi pregunta iba orientada a que software debo utilizar para realizar esto, como interactúa este software y si utilizo Visual Basic y SQL SERVER en que forma lo hago y si para hacerlo necesito ademas MTS. Aprovecho ademas para preguntarte si Visual basic permite desarrollo proyectos orientados a objetos es decir que si en VB puedo hacer herencia, tener polimorfismo y las demás características de la programación orientada a objetos. Gracias por tu ayuda y hasta pronto
La versión 6 de VB no permite herencia ni poliformismo, pero microsoft ya ha anunciado la nueva versión 7 de VB que soporta todas las características de un verdadero lenguaje orientado a objetos. Ahora que tengo claro a que te refieres te explico como lo hacemos nosotros en nuestra empresa, más o menos, El software lo separamos en varias capas que surgen del diseño inicial, si es una app que tiene acceso a datos en una bd relacional se programan las librerías de acceso a las estructuras necesarias, tablas, etc, (estas librerías siempre acceden a los motores mediante nuestro propio soft, para evitar problemas de dependencia de motores), luego se programan las utilidades del sistema, que se encargan de realizar las operaciones con los datos, estos ya generalmente son objetos, por ej. una acción, un bono, etc que son capaces de introducir y sacar datos medienate las librerías de acceso a datos y realizar sus operaciones (venderse, comprarse, etc, etc), y por último se preparan los interfaces de usuario, tanto para entrada como para salida. Desde luego no es sencillo, y el secreto esta en un buen diseño para que todas las parte encajen correctamente y no vengan luego los disgustos, nosotros diseñamos el proyecto con UML (utilizamos Visio y no generamos código con el), naturalmente, no se hace todo el diseño antes de empezar y lo que suele suceder es que se excinde en grandes bloques que nos repartimos entre los analistas y nos encargamos independientemente de implementar las partes que nos tocan. Desde luego para este tipo de estructuras lo mejor es trabajar con componentes, ya que estos permiten excindir los proyectos una vez definido el interface de comunicación. Lo más complicado a mi parecer es el diseño de sistemas libres, es decir de sistemas que han de ser conducidos y sincronizados en tiempo real (trafico aéreo, etc), ya que todo debe quedar muy fino (seguramente por eso no me los encargan a mi jejejeje). Resumiendo así es nuestro soft: 1 Librerías Acceso motores Propias 2 Librerías control Datos (tablas programa, registros, etc) 3 Objetos del programa (Entes propios, como documentos, acciones, cheques, etc) 4 Lógica del sistema Rutinas que se encargan de realizar Y coordinar operaciones entre objetos 5 Interface de usuario Entrada y salida de datos Creo que te he escrito esto muy rapido y te puedo hacer un lio, simplemente, es un mega resumen de como trabajamos en mi empresa, yo soy analista-programador, empecé hace unos 12 años en este mundo y mi formación académica en informática es escasa, pero espero poder ayudarte.