Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-10-2012
agustinbus agustinbus is offline
Miembro
 
Registrado: ago 2007
Posts: 44
Poder: 0
agustinbus Va por buen camino
Duda - Desarrollo OOP en capas

Buenas compañeros! como están? Abro este hilo debido a que quiero cambiar la forma de trabajar y hacerlo de una manera mas correcta.
Estuve buscando mucho y vi varios post en el foro y en otros lados pero ninguno me aclaró mucho.

Actualmente realizo mis trabajos de forma orientada a eventos y muy desordenada, y me gustaría comenzar a desarrollar aplicando la arquitectura en 3 capas, me refiero a Datos, Negocio y Presentación para poder separar la lógica del GUI. Ademas quiero comenzar a desarrollar librerias de clases, para utilizar en futuras aplicaciones, por ejemplo TClientes, TProveedores, TFacturas, TArticulos, etc.

Tengo varias dudas al respecto y se las menciono a continuación:

1- Es conveniente crear un Unit para cada clase, es decir crear un Unit para TClientes uno para TProveedores, etc.. y referenciarlos segun mi necesidad? o uno solo con todas las clases?

2- Para un alta por ejemplo de un cliente, quien seria el responsable de hacer el insert en la BBDD? La capa de datos? la de Negocio? El Unit TCliente con un metodo propio de la clase?

3- Cual es el rol de la capa de Negocio?


Tenia pensada otra forma de trabajar pero no se si esta bien, esta forma seria:

- Crear Units para cada clase por ejemplo TCliente
- Cada clase tendra sus datos privados (nombre, apellido, fecha nacimiento,etc...)
- Cada clase tendra sus propios metodos get y set para acceder a los datos privados.
- Cada clase tendra sus propios metodos para mantener la base de datos(es decir altas bajas modificaciones). Me refiero a crear un metodo insertar que guardara los datos en la base de datos por lo tanto cuando quiera guardar los datos del cliente hare:
Código Delphi [-]
cliente.Insertar(nombre,apellido,...);

y la definicion del metodo seria mas o menos asi:
Código Delphi [-]
cliente.Insertar(nombre,apellido,...);
begin
  QClientes.Close;
  QClientes.SQL.Clear; 
  QClientes.SQL.Add('INSERT INTO Clientes (NOMBRE, APELLIDO,...) values (:nom, :ape...)');
  QClientes.ParamByName('nom').Value := nombre;
  QClientes.ParamByName('ape').Value := apellido;
  QClientes.ExecSQL;
end;

Es correcto el razonamiento anterior? Un problema que encuentro es al momento de reutilizar la clase TCliente tendre que utilizar el mismo nombre para el TZQuery es decir QClientes.

Perdon por tantas preguntas, pero es un tema que no tengo muy claro.
Espero puedan ayudarme y desde ya muchas gracias a todos!!!
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
desarrollo WEB vs. desarrollo tradicional _iceman Debates 42 28-02-2013 17:36:00
Duda sobre OOP y capas AzidRain OOP 4 04-08-2007 00:25:35
aplicacion 3 capas en c# cuscus .NET 2 15-11-2005 21:06:57
Clipper en 3 Capas ???? AGAG4 Providers 3 30-06-2005 19:03:17
Dibujando en capas blueicaro Gráficos 1 26-04-2005 09:46:02


La franja horaria es GMT +2. Ahora son las 10:40:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi