segunda-feira, 2 de março de 2020

Como eu faço o meu controle financeiro

Tudo começou porque eu não encontrava um aplicativo que me permitisse mudar o dia que iniciava o período, me obrigando a ter o balanço mensal iniciando no dia primeiro de cada mês.

Eu recebo no dia 25 então era relevante pro meu controle que o período começasse nesse dia, além disso os eventos recorrentes não me dava flexibilidade de mudar o dia e até mesmo ignorar.

Eu também precisava ter uma previsão mais precisa do meu balanço futuro.

Juntando todas essas necessidades acabei desenvolvendo meu próprio aplicativo de controle financeiro.

A primeira versão desenvolvi uma aplicação desktop em .net Windows Forms. Fiquei usando ela por uns 2 anos, mas ter que depender do computador acabou tirando a praticidade na hora de lançar os eventos, e como os apps para celulares já estavam mais populares decidi fazer uma versão pro iPhone.

Porém, portar toda a regra de negócio que eu havia criado no desktop para o celular deu bastante trabalho, além disso eu queria que os dados ficassem sincronizados nas nuvens, mas ao mesmo tempo não queria ter que criar uma API especificamente para isso.

Por isso decidi usar o CloudKit, que já tinha integração nativa com o iOS. Depois de mais de 1 ano desenvolvendo a versão para iOS no meu tempo livre, consegui finalmente migrar o controle que eu fazia no desktop e passar a usar o celular.

Mas com isso veio outro problema, pois fazer a sincronização dos dados do celular com o CloudKit era uma tarefa complexa e cheia de detalhes que acabou dificultando o desenvolvimento dessa funcionalidade de forma segura com o tempo que eu tinha.

Nesse tempo eu acabei publicando na App Store a primeira versão mas ela tinhas muito desses bugs por contra da sincronização com as nuvens forçando eu tirar a versão do ar.

Felizmente na WWDC de 2018 a Apple anunciou um SDK que fazia essa sincronização com o CloudKit de forma mais automática, então iniciei novamente uma refatoração completa do código utilizando esse novo sistema de sincronização.

Dois anos se passaram e finalmente a versão atual está muito melhor. Longe ainda de ser perfeita, porém todos os dados estão sendo sincronizados de forma segura e todo o controle financeiro que eu precisava fazer eu consegui.

De quebra coloquei outro recurso que são os eventos planejamos, ou seja, eu consigo colocar no aplicativo, por exemplo, que eu tenho um gasto mensal de combustível, com isso eu consigo ter uma previsibilidade melhor do meu saldo futuro.

Em breve irei publicar um vídeo no YouTube mostrando o funcionamento completo do aplicativo.
Por hora deixo aqui um print da tela principal e o link do aplicativo na App Store.

Nenhum comentário:

Postar um comentário