sábado, 23 de agosto de 2014

Projeto FinDt: Release 3.0.0


Hoje eu disponibilizei a versão 3.0.0 do módulo FinDt.

Decidi mudar o número de versão maior de 2 para 3 pois alterei a nomenclatura de praticamente todos os métodos do módulo para lower-case, para que o módulo fique mais compatível com o sistema de nomenclaturas do Python. Embora os nomes dos métodos tenham ficado muito parecidos com os anteriores, além de passá-los para lower-case, em nomes compostos por mais de um nome, separei-os com sinal underline.

Sei que isto vai provovar alguns transtornos, mas, conforme fui me aprofundando no aprendizado do Python, descobri que a maior parte dos módulos e pacotes seguem um sistema de nomenclaturas e versões. Quando publiquei as primeiras versões do FinDt eu estava apenas começando a usar a linguagem e ainda não tinha todo este know-how. Com a aquisição de novos conhecimentos, achei que seria correto aplicá-los ao módulo, mesmo que venham a causar algumas incompatibilidades.

É também por este motivo que ainda estou mantendo o módulo como uma versão 3-Alpha: sei que existem muitos pontos a serem aperfeiçoados, quer na estrutura do módulo, na melhoria das funcionalidades, quer na compatibilidade com os padrões mais usados para nomenclatura e distribuição de pacotes Python.

Assim, conforme eu for ampliando estes conhecimentos, pretendo aplicá-los aqui, em primeira mão (afinal este foi o primeiro módulo que publiquei no PyPI), até que eu atinja um tal maturidade que possa considerar o módulo como versão estável ou madura.


sábado, 15 de março de 2014

Blog Revisado


Hoje fiz uma série de alterações no layout deste blog para tentar torná-lo mais organizado e com visual mais elegante: sei que não tem nada a ver com Python ou Matemática e Finanças, mas nada mal para quem tem só um pouquinho de conhecimento de HTML5 e CSS.

Para quem estiver interessado:

segunda-feira, 3 de março de 2014

Projeto FinCDB


Dando continuidade no meu projeto de criação de um módulo ou pacote Python Python é uma linguagem de programação de alto nível, interpretada, imperativa, orientada a objetos, funcional, de tipagem dinâmica e forte. capaz de propiciar ferramentas para simulações de títulos de renda fixa do mercado financeiro brasileiro, em 15.02.2014, coloquei à disposição no PyPI a primeira versão do módulo FinCDB (versão 0.1.0), ainda sem documentação e com vários bugs e implementações clamando por uma solução (O módulo FinDt é requisito básico para o seu funcionamento).

Apesar de todos os bugs, esta versão já é capaz de simular a evolução de um CDB contratado a uma dada taxa (por exemplo, 102% do CDI) por um dado período (1 ano), e que não tenha tido resgates parciais durante sua vida, com diferença na casa dos decimais quando comparado com o resultado do extrato de um CDB de um Banco qualquer, que usei como exemplo.


Alteração no Setup.py


E hoje, fiz upload da versão 0.1.1, que na verdade não tem nada de novo; apenas a usei para implementar meu arquivo setup.py, o qual ainda não tinha a capacidade de incluir no pacote para distribuição os arquivos auxiliares ao projeto (readme.txt, changes.txt, license.txt). Solucionada esta questão, preciso descobrir como fazer com que o setup.py seja capaz de resolver as dependências do projeto (por enquanto, somente o módulo FinDt). Desta forma, consegui deixar meu arquivo de setup mais próximo da requisições do pacote distutils, responsável por construir, instalar e distribuir projetos Python. 

Consegui chegar num modelo que talvez ainda não seja o ideal, mas que funcionou perfeitamente para meu propósito. Você não consegue encontrar um tutorial completo de como preparar um arquivo setup para seu projeto Python; cheguei à minha versão final após consultar várias fontes na internet. Aí vão minhas dicas:


Agora, preciso começar a fazer vários aprimoramentos e correções de bugs, além de criar a documentação básica para uso do módulo.