[Python-es] PyViewPredicate, críticas

Miguel Ángel Alarcos Torrecillas miguel.alarcos en gmail.com
Mar Mar 5 17:57:23 CET 2013


Tengo intención de reescribir el código bajo TDD. Si alguien desea
contribuir de alguna forma, que se ponga en contacto conmigo. Gracias.


El 4 de marzo de 2013 17:35, Miguel Ángel Alarcos Torrecillas <
miguel.alarcos en gmail.com> escribió:

> Muchas gracias Chema, no esperaba tanto. Agradezco todas las
> recomendaciones que me das.
>
> En principio sólo esperaba críticas respecto del propósito de la librería,
> de la API, y no que se buceara en el código que está un poco patas arriba.
> Una vez más muchas gracias.
>
>
> El 3 de marzo de 2013 14:51, Chema Cortes <pych3m4 en gmail.com> escribió:
>
> El día 1 de marzo de 2013 19:11, Miguel Ángel Alarcos Torrecillas
>> <miguel.alarcos en gmail.com> escribió:
>> > Hola a todos, me gustaría dar a conocer un proyecto al que he dado el
>> nombre
>> > de PyViewPredicate. Se trata de crear GUIs de manera declarativa, y
>> además
>> > reactiva. Con esto quiero decir que la GUI recibe los nuevos datos a
>> mostrar
>> > después de que se hayan modificado en el mismo u otro computador.
>> >
>> > De momento he implementado un visualizador de objetos BasicView
>> (visualiza
>> > una fila de una tabla de BDD) y un visualizador Table que visualiza un
>> > predicado más complejo que es realmente una SQL.
>> >
>> > La wiki del proyecto tiene un ejemplo explicativo:
>> >
>> > https://bitbucket.org/miguel_alarcos/pyviewpredicate/wiki/Home
>> >
>> > Admito todo tipo de críticas, pero especialmente las constructivas.
>> > Responderé a cuantas dudas o cuestiones me planteéis.
>> >
>> > Espero no robaros mucho tiempo, saludos pythónicos desde Murcia :)
>>
>> He estado revisando el código un rato hasta que me he cansado, por lo
>> que solo puedo darte una impresión superficial.
>>
>> Lo primero, es recomendarte que siguas un mismo estilo para nombrar
>> las clases. No resulta cómodo ver mezclados los estilos "CamelCase" y
>> unix.
>>
>> Se ve que has invertido muchas horas en crear este código. Pero
>> necesita bastante refactorización, sobre todo deberías hacer un
>> paquete con el monolítico 'wxpython_gui' y, de paso, darle otro nombre
>> que lo diferencie mejor del paquete wxpython general.
>>
>> Por otro lado, deberías limpiar el código. Al repositorio puedes
>> indicarle que no versione los ficheros .pyc (sobra designable.pyc),
>> quitar ficheros de pruebas (wxApp1.py, wxApp2.py,...) y que no
>> aparezcan otras versiones que no tienen nada qué ver ahora
>> (tkinter_app.py, tkinter_gui.py). Así mismo, asegúrate que estás
>> versionados todos los ficheros que usas (falta 'pubsub.py', que
>> supongo es una dependencia externa).
>>
>> Siguiendo con cuestiones de estilo, nunca deberías usar 'from modulo
>> import *'. Está totalmente desaconsejado fuera de su uso en la línea
>> de comandos. En un código normal deberías siempre indicar
>> explícitamente qué objetos estás importando.
>>
>> En cuanto a mejorar la compresión, creo, por lo que he visto, que
>> intentas implementar algo similar al patrón Actor. Localizar todo el
>> código relativo a la creación de actores en su propio módulo puede
>> ayudar más a entender lo que hace el código, así como localizar más
>> rápido los mensajes a los que responden los actores (por ejemplo, en
>> con un diccionario).
>>
>>
>> --
>> Hyperreals *R: http://ch3m4.org/blog
>> Quarks, bits y otras criaturas infinitesimales
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20130305/61ad1984/attachment.html>


Más información sobre la lista de distribución Python-es