A vida de um desenvolvedor iniciante é cheia de expectativas! Todo desenvolvedor quer criar aplicativos bem sucedidos, mas no início da carreira é um desafio!!!
Primeiro, você precisa aprender a programar, conhecer as tecnologias usadas, entender as regras de negócios e, finalmente, criar excelentes aplicações! Parece simples… Mas é complexo e requer estudo e dedicação!
Mesmo depois de aprender a programar os desenvolvedores novatos tendem a falhar! E a sensação de frustração é enorme…”O aplicativo funciona e não é bem-sucedido, porque?”
No início da minha carreira, pensava que entregar aplicativos antes da data era o que mostrava como eu era competente! Mas eu fazia tudo correndo e meus aplicativos nunca tinham o sucesso planejado. Eles sempre precisaram de várias correções quando entravam em produção, porque alguns nem sequer eram usados. Até que identifiquei 3 erros que eu cometia e que impediam meus aplicativos de serem bem-sucedidos. A loucura maior é que vejo até hoje (15 anos depois) desenvolvedores iniciantes cometendo os mesmos erros, e eu quero compartilhar com você como eu consegui evitar estes problemas.
Qual é o tipo de banco de dados mais adequado?
O primeiro erro é não pesquisar qual tipo de banco de dados é mais adequado às suas necessidades. Temos vários tipos de bancos de dados relacionais e NoSQL, e não podemos acomodar-nos usando bancos de dados relacionais apenas porque são os mais utilizados.
Participei de um projeto simples que deveria consultar o banco de dados e exibir o resultado da consulta em um grid. Tecnicamente falando é muito simples, mas na época eu não tinha conhecimento sobre os tipos de bancos de dados que eu podia usar, e não me atentei ao fato da tabela principal ter muitos e muitos relacionamentos bem complexos. O desempenho nunca alcançou o que era esperado o que acabou tornando o aplicativo inviável.
Se eu tivesse usado um banco de dados orientado a grafos, como o Neo4J, minha aplicação teria sido um sucesso!
Onde está o modelo de banco de dados?
O segundo erro é não modelar o banco de dados. Nós tendemos a criar telas e tabelas sem modelar o banco de dados e arriscar que, no final da construção da aplicação, os dados tenham problemas de consistência. O que é muito pior do que ter erros no código!
Dados são o maior bem da organização e o objetivo das aplicações é essencialmente exibir, manipular e gravar dados que podem ser usados para a organização tomar decisões. Se os dados estão incorretos… Que tipo de decisão a empresa vai tomar?
Você avaliou suas consultas?
O terceiro erro é não avaliar as consultas criadas. Quando terminamos de codificar, é uma boa prática avaliar se as consultas funcionam conforme o esperado, se os índices estão sendo efetivos e se as melhorias são possíveis.
Trabalhei em um projeto onde o banco de dados possuía vários e vários índices, e apenas 10% deles eram úteis para melhorar o desempenho da aplicação e o pior… 4 índices degradavam o desempenho. Não basta criar supondo que melhora… Tem que avaliar!!!
Conclusão
Um aplicativo bem-sucedido tem mais do que o código funcionando! Tem um banco de dados escolhido, modelado e consultado corretamente.
Se você gostou, compartilhe este post! Se você tiver dúvidas, fale comigo.