Ver Mensaje Individual
  #20 (permalink)  
Antiguo 06/02/2007, 12:59
Avatar de enriqueplace
enriqueplace
 
Fecha de Ingreso: mayo-2005
Ubicación: Uruguay / Argentina
Mensajes: 1.102
Antigüedad: 19 años
Puntos: 32
Re: autenticacion de usuario

Cita:
Iniciado por JePaFe Ver Mensaje
Primero gracias por las respuestas, no queria armar esta polemica, y otra no pude ver los archivos de ejemplo, uso linux y no tengo como abrir rar, usen zip para intercambiar cosas
Te aclaro, tu no armaste ninguna polémica, y yo también uso GNU/Linux, así que instala el "unrar" o alguno similar

Cita:
Iniciado por JePaFe Ver Mensaje
Enrique gracias por lo que me dijiste, lo que necesito son conceptos, la sistaxis ya la vi en la pagina de PHP y codigo de ejemplo, hice los que dijiste comence a armar objetos pequeños que responden bastante bien a la idea general, aunque siempre me queda la duda estoy haciendo las cosas bien???
Bueno, siempre tendrás esa duda. Pero que eso no te detenga, no te obsesiones con la confirmación de los demás sobre un diseño particular, concéntrate en lo medular, si estás siguiendo los conceptos correctamente o no.

Aprende a hacer objetos pequeños bien diseñados, y luego crece de a poco.

Cita:
Iniciado por JePaFe Ver Mensaje
Como para que tengan en cuenta, yo programo en PHP procedural y estoy pasando a objetos y no encuentro conceptos simples sobre cosas que deberian ser simple como un objetos para conectarse a mysql, o son una cosa tan simple que no sirven o patrones recomplejos que necesito estudiar dias para entender que no me sirven para lo que yo necesito
Bueno, exactamente lo que trato de combatir, pero expresado con otras palabras

Sugerencia: no busques "traducir" procedural -> objetos, es una forma completamente distinta de razonar. Razona el problema completamente de cero. Piensa en objetos, aisladamente, una responsabilidad única para cada uno.

Ejercicio

PHP no cuenta con un conjunto de "clases base" como en Java: Date, String, Number, etc. (espero que algún momento existan). Por lo pronto puedes observa la documentación existente de la API de Java y ver las clases bases que existen y como fueron diseñadas. Ahí te darás cuenta las funcionalidades clásicas que se les pide que esas clases resuelvan.

Por ejemplo, la responsabilidad de la clase String solo es resolver problemas con string, o sea: contar cantidad de caracteres, pasar mayúsculas a minúsculas, etc.

Si tu creas tu clase String, la usarás siempre para esa tarea, toda operación con cadenas de caracteres. Si tu te creas luego una clase Date y tiene alguna operación que tenga que ver con manejo de "cadenas de caracteres" (poner la fecha del día en mayúsculas, etc), usarás dentro de Date la clase String para resolverlo.

Cuando tu quieres una cadena de caracteres, como todo son objetos, creas una instancia de String, la cual ya incorporará toda la funcionalidad que necesitas

Nota: en este último párrafo me estoy refiriendo como si del entorno Java estuviéramos hablando, pues es 100% Orientado a Objetos y tiene "clases base". Como la filosofía de PHP es distinta y maneja un "tipado dinámico" no lo hacemos de esa forma, pero bien podríamos hacer lo mismo.

Nunca harás ninguna operación con cadenas de caracteres fuera de esa clase base, esa es la idea (muy a grandes rasgos) con los objetos.

Busca la api de Java en www.gotapi.com, la sección es java.lang, busca "class String" y verás la lista de métodos (method) y sus atributos.

Ahí puedes ver como se diseña un objeto sin reinventar la rueda y sin meterse en diseños complejos.

Cita:
Iniciado por JePaFe Ver Mensaje
Para los que recien empezamos con el tema de OO en PHP, se hace dificil encontrar documentacion que nos guie en los primeros pasos y el hecho de que Uds discutan y no den, no digo soluciones, pero si consejos de como proceder o que seria necesario aprender a programar de forma profesional
[ironía on] Y yo pensé que con solo código ya estaba todo resuelto. [ironía off]
__________________
Blog phpsenior.com Cursos a Distancia surforce.com

Última edición por enriqueplace; 07/02/2007 a las 06:54