Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Aprendiendo programación con python
#1
Hace un tiempo estuve aprendiendo los fundamentos básicos de programación con python, y para ponerme a prueba programé esta aplicación.

CARFOIN$ es una sencilla utilidad multiplataforma para la gestión de múltiples Carteras de Fondos de Inversión. Permite crear fácilmente Carteras personalizadas y seguir su evolución. Opera rápidamente con los Fondos para consultar, actualizar y archivar sus valores liquidativos.
Las funciones principales del programa son:
  • Permite crear múltiples Carteras personalizadas de Fondos de Inversión y seguir su evolución.
  • Verifica el código ISIN de los Fondos con el dígito de control.
  • Actualiza vía internet la última cotización y archiva los valores liquidativos. Permite editar los valores e incorporar el capital de suscripción.
  • Consulta la evolución de los valores guardados y muestra algunos índices de rentabilidad.
  • Hace copias de seguridad de las Carteras y exporta el histórico de valores a un archivo csv para abrir con hoja de cálculo.
Web del proyecto y descarga: CARFOIN$. Software libre bajo Licencia Pública General de GNU (GPL) versión 3.
#2
Me parece una buena aplicación para aprender, he aquí un poco de feedback:

- Las ventanas de los mensajes de error/información son enormes.
- El código contiene muchas instrucciones comentadas, supongo son para debugear, aunque en la version final no deberían existir.
- Algunas instrucciones se podrían refactorizar*
- Tiene muchos valores hardcodeados (nombres de tablas).
- No funciona correctamente con python 3.5**
- Si se tuviera el código en una plataforma git/svn online como GitHub o Bitbucket seguro tendrías más feedback.

_____

*Por ejemplo, esto es redundante:

Código:
if len(fieldnames) > 2:
   capital_existe = "SI"
   ...
else:
   capital_existe = "NO"

"len(fieldnames) > 2" ya devuelve un valor booleano, se podria cambiar a:

Código:
capital_existe = len(fieldnames) > 2
if capital_existe
   ...
else:
   ...

O de manera más explícita.

Código:
capital_existe = len(fieldnames) > 2
if capital_existe is True
   ...
else:
   ...

_____

**Lanza esta excepción
[spoiler]
Código:
Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib/python3.5/tkinter/__init__.py", line 1549, in __call__
    return self.func(*args)
  File "carfoins.py", line 3146, in control_cartera
    nuevo_win.destroy()
  File "/usr/lib/python3.5/tkinter/__init__.py", line 2144, in destroy
    self.tk.call('destroy', self._w)
_tkinter.TclError: can't invoke "destroy" command: application has been destroyed
Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib/python3.5/tkinter/__init__.py", line 1549, in __call__
    return self.func(*args)
  File "carfoins.py", line 3198, in control_cartera
    mensaje_win.transient(nuevo_win)
  File "/usr/lib/python3.5/tkinter/__init__.py", line 1834, in wm_transient
    return self.tk.call('wm', 'transient', self._w, master)
_tkinter.TclError: bad window path name ".140531202115792"
[/spoiler]
WWW
#3
Gracias por los apuntes, los tendré en cuenta. De todas maneras, se trata de mi primera aplicación con python, que hice hace un tiempo como reto personal (no soy informático ni nada parecido), aprendiendo sobre la marcha con tutoriales en la red.

Aparte de algo de HTML5, CSS y JavaScript (también autodidacta, por ejemplo el juego del ahorcado) no tengo ni idea de programación. Esta aplicación de python ya la tengo abandonada y no creo que siga actualizándola ni mejorándola.

Me gusta la programación como afición, pero creo que para dominar un lenguaje hay que practicar mucho y no dejar de programar, cosa que yo no hago.

Gracias por tus comentarios. Saludos
#4
...yo la unica cartera de inversion que tengo es la mia y esta en numeros rojos casi siempre. Exceptuando las primeras horas del mes..
#5
Muchas felicidades por tu primera aplicación en Python, se ve interesante, seguro las actualizaciones mejorarán mucho tu aplicación Sonrisa
WWW
#6
Excelente aplicación, para ser la primera vez que programa con python. mucho talento.
#7
Excelente, aparte comentas que no eres informático lo que tiene más valor aún... saludos y éxito!!!
#8
(05-07-2016, 03:49 PM)escuelasegura escribió: Excelente, aparte comentas que no eres informático lo que tiene más valor aún... saludos y éxito!!!

Gracias, lo hago como afición, sin ninguna pretensión seria.

He prodabo algunos lenguajes de programación, y como práctica con python desarrollé esta pequeña aplicación, aunque ahora lo tengo un poco abandonado.

Saludos.
#9
Soy un ignorante totalmente con relación a python, ¿para que se usa?, ¿qué se puede hacer con ello?, ¿es dificil de aprender? Si alguien tuviese una guía o los conceptos básicos no estaría de más Lengua siempre he tenido la curiosidad de aprender nuevas cosas entre esas cosas lenguajes de programación, creo que en estas vacaciones comenzaré a hechar un vistazo. (Por cierto no tengo la oportunidad de probar la aplicación, pero he visto que tiene buenos comentarios en este tema Lengua suerte con eso, sigue así)
WWW
#10
A seguir aprendiendo, te deseo toda la suerte!  ¡Me gusta! el conocimiento es poder Cansado
WWW


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Material para aprender programación C++ Posits 8 127 06-05-2018, 05:36 PM
Último mensaje: brettavz
  nuevos lenguajes de programacion. easy english 4 186 03-05-2018, 05:44 PM
Último mensaje: fercol
  lenguaje de programacion. easy english 3 96 05-03-2018, 09:47 AM
Último mensaje: efbsfcd
  lenguaje de programacion. easy english 5 309 11-06-2017, 03:05 AM
Último mensaje: mispracticas2009
  [Duda] Un buen IDE para python? Kamasado 4 364 02-06-2017, 05:20 AM
Último mensaje: AbaddonOrmuz
  Futuro de la programacion. efbsfcd 5 467 01-06-2017, 08:02 PM
Último mensaje: avdarie
  [Tutorial] Aprendiendo Python habacuc78 12 786 29-05-2017, 05:14 AM
Último mensaje: pipectm40
  Programacion en swift efbsfcd 3 267 09-03-2017, 07:55 AM
Último mensaje: efbsfcd
  Alguna idea para un programa en Python? Kamasado 1 277 06-02-2017, 05:36 PM
Último mensaje: toledano
  Aprendiendo a programar con Ruby + Gtk3 Posits 4 373 02-01-2017, 11:39 PM
Último mensaje: onspot



Usuarios navegando en este tema: 1 invitado(s)