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

modo espagueti?

Estas en el tema de modo espagueti? en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola como estan. Esta vez los consulto por algo que me inquieta. En un curso de PHP OO me enseñaron a programar php aparte de ...
  #1 (permalink)  
Antiguo 18/11/2006, 14:15
Avatar de paopao  
Fecha de Ingreso: junio-2004
Mensajes: 72
Antigüedad: 19 años, 10 meses
Puntos: 0
Información modo espagueti?

Hola como estan.

Esta vez los consulto por algo que me inquieta.

En un curso de PHP OO me enseñaron a programar php aparte de HTML es decir en archivos distintos y en el HTML solo se colocan "echos" para mostrar los resultados.
Pero resulta que escuche de otra boca que de esta manera no era conveniente porque se demora mas la aplicacion web en responder. Que tan cierto es esto?
Ademas tengo entendido que separando el codigo html del de php se simula mucho mas lo de "PHP orientado a objetos" fuera de lo que en si se aplica de OO.

Gracias .
__________________
:si: El Mundo Merece Mejoras Instantaneas :si:
  #2 (permalink)  
Antiguo 19/11/2006, 20:47
Avatar de enriqueplace  
Fecha de Ingreso: mayo-2005
Ubicación: Uruguay / Argentina
Mensajes: 1.102
Antigüedad: 18 años, 11 meses
Puntos: 32
Cita:
Iniciado por paopao Ver Mensaje
En un curso de PHP OO me enseñaron a programar php aparte de HTML es decir en archivos distintos y en el HTML solo se colocan "echos" para mostrar los resultados.

Bueno, no se te entiende nada. Si hablas de "php aparte de html" y luego en "html colocan echos"... yo debo dejar de tomar alcohol.

Que separes en "capas" distintas responsabilidades (podrían ser directorios distintos o un fuente para cada cosa, no sé) quiere decir que una hace una tarea y que a la otra no le corresponde, y viceversa.

Puedes hacer una "capa de presentación" que trabaje con html y no necesariamente con esto quiere decir que no pueda estar desarrollada en PHP. El punto es: si tienes la lógica de tu sistema (desarrollada en PHP) no la mezcles con la parte encargada de la presentación (que puede estar a su vez desarrollada en PHP).

No es si usa o no PHP, es cuales son sus responsabilidades, y que estas no se mezclen.

Cita:
Iniciado por paopao Ver Mensaje
Pero resulta que escuche de otra boca que de esta manera no era conveniente porque se demora mas la aplicacion web en responder. Que tan cierto es esto?
Deberías haber preguntado: "¿y que significa todo esto?" y yo te habría podido responder "que dejaras de escuchar bocas ajenas".

Asumo que tal vez puedas usar un sistema de templates (como Smarty) donde no tengas código PHP y sí un seudo-lenguaje propio + html, y que este maneje un sistema de optimizaciones (cache) que lo haga más rápido. Pero de que ahí se note que demore desde PHP, tendrás que o traer muchos datos a lo bruto, o hacer muchas chanchadas en el código.

Cita:
Iniciado por paopao Ver Mensaje
Ademas tengo entendido que separando el codigo html del de php se simula mucho mas lo de "PHP orientado a objetos" fuera de lo que en si se aplica de OO.
¡Aghh! Me dolió mucho eso... sácame la estaca del pecho!

[GAME OVER] [INSERT COIN]
__________________
Blog phpsenior.com Cursos a Distancia surforce.com
  #3 (permalink)  
Antiguo 20/11/2006, 09:27
Avatar de paopao  
Fecha de Ingreso: junio-2004
Mensajes: 72
Antigüedad: 19 años, 10 meses
Puntos: 0
Oops

Cita:
Iniciado por enriqueplace Ver Mensaje
Bueno, no se te entiende nada. Si hablas de "php aparte de html" y luego en "html colocan echos"... yo debo dejar de tomar alcohol.

Que separes en "capas" distintas responsabilidades (podrían ser directorios distintos o un fuente para cada cosa, no sé) quiere decir que una hace una tarea y que a la otra no le corresponde, y viceversa.

Puedes hacer una "capa de presentación" que trabaje con html y no necesariamente con esto quiere decir que no pueda estar desarrollada en PHP. El punto es: si tienes la lógica de tu sistema (desarrollada en PHP) no la mezcles con la parte encargada de la presentación (que puede estar a su vez desarrollada en PHP).

No es si usa o no PHP, es cuales son sus responsabilidades, y que estas no se mezclen.



Deberías haber preguntado: "¿y que significa todo esto?" y yo te habría podido responder "que dejaras de escuchar bocas ajenas".

Asumo que tal vez puedas usar un sistema de templates (como Smarty) donde no tengas código PHP y sí un seudo-lenguaje propio + html, y que este maneje un sistema de optimizaciones (cache) que lo haga más rápido. Pero de que ahí se note que demore desde PHP, tendrás que o traer muchos datos a lo bruto, o hacer muchas chanchadas en el código.



¡Aghh! Me dolió mucho eso... sácame la estaca del pecho!

[GAME OVER] [INSERT COIN]
No me exiplique?
Pa mas salí trasquilada

mmm que te digo ... "Pero no te enojes"
Soy hipernueva con esto de PHP.

Mi pregunta era: que es mejor al programar con php? si mezclarlo con el html o hacer archivos php "puros" por aparte y html igualmente por aparte, Claro está que para poder ver los resultados de los procesos hay que mostrarlos y por eso te dije que en lo html's solo irian los echos, pa imprimir los resultados.

a lo que me refiero es a esto:
<html>
...
<body>
...HTML
<?php los procesos que uno desea realizar
consultas, insesiones lo que sea de procedimientos con el servidor?>
...Mas HTML
</body
</html>
^
|

Esa forma que medio coloque arriba es mejor que trabajar de esta manera:
**archivo.php
<?php
los procesos que se quieren realizar
?>

**achivo.html
<html>
<body>
todo lo relacionado con la vista o plantillas en si. formularios, etc
</body>
</html>


y ahora sigo igual de enredada para explicar? creo que sip...

bueno me recojo con mi cuento...

Pero si puedes opinar nuevamente no hay problema .

Chaop
__________________
:si: El Mundo Merece Mejoras Instantaneas :si:
  #4 (permalink)  
Antiguo 21/11/2006, 12:19
 
Fecha de Ingreso: abril-2005
Mensajes: 49
Antigüedad: 19 años
Puntos: 0
Si estás programando OO, probablemente tengas clases. No está bueno definirlas en el mismo archivo que muestra los formularios y todo lo que sea presentación, así como no es bueno meter en un mismo archivo distintas funciones o clases de PHP que no tienen ninguna relación una con la otra.

Si estás haciendo un HTML y necesitás una función simple en PHP que es muy específica para esa página (es decir, no te sirve para ninguna otra) podés poner la función en el mismo archivo que muestra el HTML. Si no, conviene poner la función en un archivo aparte, e incluso agruparla con otras funciones relacionadas, en una clase o simplemente en un módulo (llamo módulo a un archivo .php), dependiendo del uso que vayas a darles.
  #5 (permalink)  
Antiguo 21/11/2006, 19:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Pues para responder tu pregunta, siempre es mejor separar lo mas posible, asi abstraes mas tu codigo y es mucho mas facil de mantener (por decir imaginate si tu cliente te pide cambiar el diseño).

Mezclar PHP y HTML hasta cierto punto es bueno pero cuando haces:
Código:
<html>
<?php
//codigo php
?>
<head>
<?php 
mas codigo php
?>
</head>
Inclusive al leer el codigo es mas complicado.
  #6 (permalink)  
Antiguo 21/11/2006, 22:14
Avatar de paopao  
Fecha de Ingreso: junio-2004
Mensajes: 72
Antigüedad: 19 años, 10 meses
Puntos: 0

Ok, Muchas gracias GabiaPF y GatorV por sus comentarios.
pues la programacion que intento hacer es OO y por esa razon preguntaba, pero veo que por el camino que me dirijo voy bien.

Muchisimas gracias.
__________________
:si: El Mundo Merece Mejoras Instantaneas :si:
  #7 (permalink)  
Antiguo 22/11/2006, 07:19
Avatar de enriqueplace  
Fecha de Ingreso: mayo-2005
Ubicación: Uruguay / Argentina
Mensajes: 1.102
Antigüedad: 18 años, 11 meses
Puntos: 32
Cita:
Iniciado por paopao Ver Mensaje
No me exiplique?
Pa mas salí trasquilada

mmm que te digo ... "Pero no te enojes"
Soy hipernueva con esto de PHP.
No me enojo, pero estás repitiendo argumentos poco lógicos sin razonar. Cuando todo falla, ve a los libros.

Cita:
Iniciado por paopao Ver Mensaje
Mi pregunta era: que es mejor al programar con php? si mezclarlo con el html o hacer archivos php "puros" por aparte y html igualmente por aparte, Claro está que para poder ver los resultados de los procesos hay que mostrarlos y por eso te dije que en lo html's solo irian los echos, pa imprimir los resultados.
Conceptualmente es un tema de dividir un sistema en capas o partes y que cada una cumpla con una responsabilidad o tarea concreta. Lo tradicional para desarrollar un sistema es hablar de por lo menos "3 capas": presentación, dominio y persistencia.

En la capa de presentación se hace únicamente el trabajo de la interfaz, de html, por lo que no quiere decir tampoco que no uses código PHP.

Prueba de usar herramientas como Smarty, para la capa de presentación, que te resuelven el problema de usar código html. Es simple y sencillo (si lees el manual).

Cita:
Iniciado por paopao Ver Mensaje
a lo que me refiero es a esto:
Código HTML:
<html>
...
<body>
...HTML
<?php los procesos que uno desea realizar 
consultas, insesiones lo que sea de procedimientos con el servidor?>
...Mas HTML
</body
</html> 
Evita este tipo de codificación. Busca en Google información sobre "programación 3 capas php" o "sistema web modular php".

Actualización: fui a la sugerencia mecánica, busca primero en este foro con estas palabras que te saltarán muchas discusiones sobre estos temas.

Cita:
Iniciado por paopao Ver Mensaje
y ahora sigo igual de enredada para explicar? creo que sip...

bueno me recojo con mi cuento...

Pero si puedes opinar nuevamente no hay problema .

Chaop
Trata de ser ordenada, usa el tiempo necesario para aclarar tus ideas y revisa lo que escribes pensando si los demás -que no conocen tu contexto- pueden entenderte.

Lo fundamental que hay que tener siempre para poder hacer sistemas es: "orden".
__________________
Blog phpsenior.com Cursos a Distancia surforce.com
  #8 (permalink)  
Antiguo 22/11/2006, 13:27
Avatar de paopao  
Fecha de Ingreso: junio-2004
Mensajes: 72
Antigüedad: 19 años, 10 meses
Puntos: 0

O.k Muchas Gracias enriqueplace estoy de acuerdo contigo, reevaluaré mi orden.
Que estes bien.
__________________
:si: El Mundo Merece Mejoras Instantaneas :si:
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 10:17.