Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

implementar 3 capas

Estas en el tema de implementar 3 capas en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola gente. Ya casi ni veo de leer y leer teoria de las 3 capas , pero ningun manual de los que he encontrado da ...
  #1 (permalink)  
Antiguo 19/10/2005, 06:56
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
implementar 3 capas

Hola gente. Ya casi ni veo de leer y leer teoria de las 3 capas , pero ningun manual de los que he encontrado da un ejemplo concreto de como implementar un sitio en php con esa estructura. Puede alguien orientarme un poco respecto a este tema?
Estoy trabajando con dreamweaver en windows con php5 y mysql.
como empiezo?, separo las capas en diferentes carpetas? después como las llamo?.
dreamweaver separa la conección en una carpeta aparte dentro del site, yo puse los formularios en otra y restaría otra que contenga lo referido a negocios. yo lo he hecho en visual basic creando un proyecto diferente para cada capa, pero aca sinceramente no se por donde arrancar.
Les agradezco desde ya su preocupación por ayudarnos a los que recien estamos empezando con esta tecnología.

saludos
  #2 (permalink)  
Antiguo 19/10/2005, 14:37
 
Fecha de Ingreso: mayo-2003
Mensajes: 148
Antigüedad: 20 años, 11 meses
Puntos: 0
Hola amigo soy un poco nuevo también en el tema de la programacion orientada a objetos en php (poo) y a tu respuesta he encontrado algo que quizás te pueda servir, aunque no trata en concreto sobre php si no en general en el tema de la programación.

Visita el siguiente enlace: http://blackshell.usebox.net/archivo/586.php

Si los ya sabios en el tema pueden mejorar o añadir algo al respecto seria de agradecer por parte de los que nos estamos iniciando. Gracias.

Este enlace es para visual studio .net pero se aplica creo a todos los lenguajes de programación:

http://www.elguille.info/colabora/pu..._Multitier.htm

Última edición por NTrance; 19/10/2005 a las 14:42
  #3 (permalink)  
Antiguo 19/10/2005, 14:49
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
Muchas gracias por el aporte hermano. Le dí una leida rápida y suena interesante. Mañana lo examino en detalle.
Esperemos que alguien mas nos tire una soga a quienes recién nos iniciamos, ya que como dice en el artículo. Hay muy poco claro respecto al tema.
saludos man.
  #4 (permalink)  
Antiguo 21/10/2005, 11:32
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
Como seguramente habra gente que tiene mi misma duda, comento lo que estoy haciendo para que si alguno le interesa la pueda utilizar y si alguno quiere hacer alguna modificación o corregirme si estoy equivocado, que lo exponga en este post, será muy bienvenido.

Separé las capas en 3 carpetas diferentes, y dentro de ellas voy creando las clases.
desde el archivo en el que estoy trabajando en la capa cliente, voy haciendo el include once dinamicamente con la función __autoload a medida que la necesito (esta funcion esta comentada en este foro).
En resumen, eso seria todo. Tal vez para alguien que maneja el tema debe sonar muy facil, pero para los que recién empezamos y no tenemos ni la mas minima idea, encontrar mensajes entendibles es lo que nos ayuda a seguir.

Ese es mi pequeño aporte.
Saludos

Última edición por moron; 21/10/2005 a las 12:00
  #5 (permalink)  
Antiguo 11/11/2005, 14:00
Avatar de Webstudio
Colaborador
 
Fecha de Ingreso: noviembre-2001
Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 22 años, 5 meses
Puntos: 69
Muchachos, para separar las 3 (o X) capas de una aplicación, no es necesario separarlos en distintas carpetas, la separación es más Lógica que Física. La cuestión de la separación está en las responsabilidades de cada capa. Que los objetos de una capa, no hagan ni más ni menos que las cosas que deberían hacer perteneciendo a esa capa. El resto, se delega en objetos de otra capa, y asi. Pero para que esto funcione, incluso podría estar todo mezclado en el mismo directorio. Es cierto que determinado nivel de separación es bueno para cuestiones de ordenamiento como programador, ubicar las cosas más fácilmente, etc, pero no es por esto precisamente que la separación se da.

Si hablamos de Presentación, las responsabilidades son simples : aceptar comandos, y representar entidades de alguna manera. Entonces, muy al pesar de ciertos puristas del código, esto incluye a las Vistas y al Controlador. Estos siempre estuvieron MUY ligados, y entre si separados del Modelo. El controlador en un ambiente de escritorio, es una capa aparte, pero en ambientes Web, el controlador es el encargado en parte de controlar la entrada de datos, ligándolo mucho con la capa de presentación.

Si hablamos de Modelo, entonces hagamos la diferencia, entre las capas de negocio y las de persistencia, ahi tenemos dos capas más. Negocio, solo aplica algoritmos a datos. Nada más. Solo eso, no le busquen más patas al gato de las que tiene. Persistencia solo tiene que encargarse de tomar un objeto, y saber como guardarlo en algún lado ( sea base de datos, archivo serializado, xml, mandarlo por telégrafo a tu casa, lo que sea ).

Si comprenden esto, verán como la separación se da sola, por las responsabilidades mismas de sus objetos. Ya sabe, cualquier duda, comenten.

Saludos.
__________________
Tutoriales Photoshop | Web-Studio.com.ar
Artículos PHP | ZonaPHP.com
  #6 (permalink)  
Antiguo 13/11/2005, 10:40
 
Fecha de Ingreso: septiembre-2005
Mensajes: 30
Antigüedad: 18 años, 6 meses
Puntos: 0
Recomiendo algo de patrones de diseños

Hola :

Esta todo muy bien dicho por webstudio. Solo añadir que el conocimiento de patrones de diseño ayuda a tener una vision mas clara de la propuesta de solucion; las capas que necesitara, como implementar determinadas funcionalidades en capas ( como en la capa de datos por ejemplo ), etc..

Les propongo que revisen el tema.

Saludos
__________________
Alojamiento Web - Alojamiento web y Servidores dedicados. Servidores en USA y Londres.
Hosting,PHP,Java,CSS,SEO BLOG - Web Hosting, Posicionamiento Web, Programacion en PHP, Java, CSS y mucho mas.
  #7 (permalink)  
Antiguo 24/01/2006, 09:32
 
Fecha de Ingreso: enero-2006
Mensajes: 1
Antigüedad: 18 años, 2 meses
Puntos: 0
Una buena forma de aprender de patrones de diseño y MVC para PHP es revisando uno de los tantos Frameworks que existen para ese lenguaje. En mi sitio publico regularmente sobre el tema. (www [punto] estadobeta[punto] com)
  #8 (permalink)  
Antiguo 01/02/2006, 05:23
 
Fecha de Ingreso: enero-2006
Mensajes: 22
Antigüedad: 18 años, 2 meses
Puntos: 0
Para separar el contenido de la presentación te puede ayudar el utilizar Smarty, que es un motor de plantillas para PHP, cuyo objetivo es separar el contenido de la presentación en una página web, se encuentra bajo la licencia GPL por lo que puede ser usado libremente.
Url: smarty.php.net

Salu2.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:31.