Hola Max, te contesto entre lineas:
2012/12/17 Max Ponce <
maxpon...@gmail.com>:
> Hola, soy nuevo con web2py, tengo algunas dudas que seria de gran valor el
> que alguien pudiera contestarmelas, desde ya gracias...
>
>
> Hay algun sitio o documento que sirva como manual de buenas practicas para
> el desarrollo con web2py?
Quizás el libro.
> Si se requieren funciones complementarias para utilizar en los
> controladores, estas donde es mejor codificarlas? en los mismos archivos de
> cada controlador? en algun archivo ubicado en model?
Llas funciones es mejor ubicarlas en un módulo (sobre todo si son
genéricas y no usan la sesión o db).
> Las declaraciones que estan en Model veo que pueden ser accedidas en
> cualquier parte del entorno de ejecucion, esto significa que si creo
> funciones y variables, estas ocupan memoria en el server
> en cambio si se codifican en los controladores, solo existen cuando la
> funcion controlador es llamada, es asi con web2py o estoy entendiendo mal?
Estás entendiendo bien, igualmente el tiempo de vida es lo que dura el
request (a diferencia de otros frameworks que en general persisten los
objetos instanciados en el modelo porque los módulos quedan
importados).
Por este tema, en general el uso de la memoria no es un tema
importante (por supuesto, depende del caso).
> Segun mi experiencia en frameworks en java, soliamos usar MVC y codificar
> todas las funciones que tenian que ver con los datos, ya sea para busquedas,
> consultas, reportes en la capa de modelo y usar los controladores solo para
> llamar estas funciones y poner los resultados a disposicion de los archivos
> de vista (html)
Puedes hacer lo mismo en web2py, pero como te decía, las funciones en
general es mejor que esten en los módulos.
> me queda la duda de como funciona web2py al respecto, ya que segun el book,
> es un framework MVC, pero he visto en varios sistemas y ejemplos que estan
> en la web sobre web2py
> el mismo problema que existe en PHP, me refiero a que incluso se realizan
> consultas a BDs desde la vista, lo cual rompe el paradigma y el fin que
> persigue, no se si estas practicas
> son la norma, me queda la duda y por eso recurro a ustedes para aclarar bien
> estos temas.
web2py no rompe el "paradigma", en todo caso lo rompe el programador :-)
La norma es dividir en capas y usar buenas prácticas.
Igualmente todo depende del caso, y es mi humilde opiñon, quizás otros
usuarios tienen otra forma de trabajar.
Sds
Mariano Reingart
http://www.sistemasagiles.com.ar
http://reingart.blogspot.com