Este é o primeiro de uma série de artigos sobre programação. Não se trata de um manual e nem de conhecimento sobre uma linguagem específica. São tópicos que podem contribuir para uma melhor qualidade dos programas, de uma forma geral. Espero que a série venha a ajudar de alguma forma, em especial aos novatos na área.
Dizem por aí que "uma imagem vale por mil palavras". Torcendo um pouco o ditado, devo dizer "um minuto de planejamento vale por mil minutos de dor de cabeça na hora da manutenção".
O que significa planejar na área de programação?
Em primeiro lugar, significa romper com uma tradição terrível mantida por um grande número de programadores, que é fazer tudo diante do computador, na frente do teclado.
Esse método pode ser um bom exercício para os dedos, mas não é nada eficiente em termos de produto final.
Construir um programa de computador é como levantar um edifício. Não se começa juntando tijolos e argamassa, mas sim fazendo plantas e planos.
Apresento aqui algumas dicas que podem ajudar no seu planejamento.
[5] Comentário enviado por elionw3 em 11/04/2008 - 17:58h
Otimo, em 15 minutos de leitura conseguiste resumir o q os professores tentam nos ensinar por 5 anos na facul, heehauhuh
principalmente em "Engenharia de Software", o problema é q pelo fato de ser uma materia muito teorica o pessoal não da credito, e depois acaba "se quebrando" pra consertar os furos, q poderiam ser evitados no Planejamento :)
Cumprimentos,
e...
quando sai "Programacao (II)" ?
[6] Comentário enviado por removido em 14/04/2008 - 00:28h
Muito bom o artigo e aliás muito bem estruturado.
Só queria deixar registrado, que por causa de vários problemas citados no artigo é que surgiram outras metodologias de desenvolvimento, como XP e SCRUM por exemplo, conhecidas como metodologias ágeis.
Um contato direto com o cliente, mostrando os resultados gradativos, torna a resolução de problemas muito mais rápida e menos "dolorosa".
Como no primeiro caso que você citou, onde após 2 meses apresentaram o projeto e estava tudo errado, se na primeira semana fosse apresentado algum material para o cliente, este poderia detectar diferenças de pensamento no ato, poupando muito tempo (e tempo = dinheiro).
O modelo abordado no artigo, que é conhecido como waterfall (em cascata) tem suas vantagens, mas fazer todo o planejamento antes de iniciar com a mão na massa também acarreta vários problemas, afinal quase todos (para não dizer todos) os projetos estão sujeitos a mudança de escopo no decorrer da implementação ou em um tempo muito curto após ela.
Bom, finalizando gostaria de salientar que não é uma crítica, apenas queria mostrar que existem outras possibilidades nas metodologias de desenvolvimento.
[8] Comentário enviado por EdDeAlmeida em 15/04/2008 - 14:33h
Obrigado pelos comentários! Programação II sai em breve, estou dando meus últimos retoques. Valeu pela dica, agk. Eu já usei o time, mas não sei porque resolvi usar esse método do script. Com certeza o time é mais eficiente.
[9] Comentário enviado por marcio_paim em 14/02/2012 - 20:49h
Muito bom! Acho que a maioria do pessoal que está começando não nota a importância das dicas por que ainda não se deparou com o desenvolvimento de um software cujo tamanho mostre que elas são realmente úteis.