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.
Como desenvolvedor de software há cerca de vinte e três anos, achei por bem trazer aos colegas do VOL, especialmente aos que se estão iniciando na programação de computadores, algumas dicas interessantes sobre o tema.
Não tenho a pretensão de estar escrevendo o manual definitivo sobre o tema. Só estou relacionando alguns tópicos que podem ajudar a melhorar a qualidade dos programas. Pensem nisso como conselhos de um "tio" idoso para os mais jovens, muito embora os "não tão jovens" (eu sei que não sou a criatura mais velha por aqui...) possam também ler e aproveitar.
Minha motivação para escrever essa série de artigos surgiu ao ler aqui no VOL um artigo intitulado "Esquecendo os valores da Computação", escrito pelo Thiago Branco Meurer (thiagopriest).
Ao ler o artigo do Thiago, de repente me dei conta de que ele tem razão e que em meio a tanto supostos "hackers", tem pouca gente fazendo um trabalho significativo na área de programação Linux, se compararmos com o número total de usuários. A maioria busca a operação e muitos se contentam em jogar.
Uma das razões para isso está no fato de que muitos acham programação algo difícil, um "bicho de sete cabeças". Uma das intenções desse artigo é justamente mostrar que se trata de um bicho de uma cabeça só: a sua! Só que tem que usá-la de forma adequada.
Os artigos trarão sempre um tópico qualquer sobre desenvolvimento de software, com exemplos práticos na forma de código em alguma linguagem.
Este artigo traz dois assuntos aparentemente distintos mas que estão intimamente relacionados, que são o planejamento e a otimização.
[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.