Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

Programação (II) - Modularização
Linux user
edlonewolf
05/05/2008
Continuando a série sobre programação, vamos falar sobre modularização. Como dividir adequadamente um sistema? Qual a unidade ideal? Como quebrar funções? Como saber se um módulo está realmente bom? Esse artigo vai tentar responder algumas dessas questões e dar argumentos para pensarmos em muitas outras.
Por: Edvaldo Silva de Almeida Júnior | Blog: http://sociedadeantireligiao.com
[ Hits: 18573 ]
Conceito: 10.0   7 voto(s)7 voto(s)7 voto(s)7 voto(s)7 voto(s) + quero dar nota ao artigo

Introdução

"Será que essa função está realmente boa?"

Essa dúvida ocorre ocasionalmente na mente de todo programador, exceto talvez os que já perderam completamente o juízo... rsrsrs

A verdade é que muitos consideram que programar é arte. Sendo assim, como qualquer disciplina em estado-de-arte, a programação desafiaria as técnicas e padronizações, não existindo um critério único para definir qualidade. Quem pode dizer, por exemplo, se um quadro de van Gogh é melhor ou pior que um de Matisse? São pintores diferentes, com estilos diferentes. Não há melhor nem pior nesse caso, apenas o gosto pessoal de quem aprecia.

Acredito, porém, que a coisa não é bem assim. Há naturalmente questões de estilo a considerar, mas existem SIM critérios bem definidos para avaliar um bom programa de computador e para comparar qualidade entre programas. Um bom exemplo disso está nos programas Perl que incluí no primeiro artigo dessa série (Programação (I) - Planejamento e Otimização). Não há como negar que a última versão é mais eficiente que as duas primeiras, sendo que o estilo de ambas é similar.

Dito isso, vamos tentar então conhecer esses critérios!

Próxima página >>




Páginas do artigo

Outros artigos deste autor

Leitura recomendada

Comentários
[1] Comentário enviado por bjaraujo em 05/05/2008 - 14:04h:

parabéns, cara; acho que ainda tenho sequelas pela exposição ao BASIC. ahuahuaha

[2] Comentário enviado por stremer em 05/05/2008 - 19:03h:

excelente. O dificil é mesmo conhecendo tudo isto conseguir implementar nos prazos malucos que os gerentes de TI e pessoal do marketing impõe (rs)

[3] Comentário enviado por rafastv em 05/05/2008 - 19:17h:

De leitura agradável e rápida, parabéns!

[4] Comentário enviado por kabalido em 05/05/2008 - 21:53h:

Parabéns cara! Continue assim, os seus artigos são muito bons.
Valeu!!

[5] Comentário enviado por edlonewolf em 06/05/2008 - 08:51h:

stremer,

Tem de fazer ouvido de mercador para os caras que ficam pressionando para acelerar o trabalho. Se você foge dos esquemas bem definidos, acaba perdendo mais tempo no final.

Abraço e oobrigado a todos!

[6] Comentário enviado por douglascrp em 06/05/2008 - 09:04h:

excelente artigo... assim como o primeiro artigo, depois que se começa a ler, é impossível parar até terminar...

parabéns

[7] Comentário enviado por leowalker em 06/05/2008 - 15:18h:

muito bom, estou esperando o proximo para dar continuidade...

Abraço e parabens.


[8] Comentário enviado por vodooo em 07/05/2008 - 09:57h:

Cara, parabéns, realmente de leitura muito agradável!

Abraços

[9] Comentário enviado por edlonewolf em 07/05/2008 - 19:12h:

O próximo artigo já está no forno... deve estar pronto para ser postado no início da semana que vem. Aí é só esperar a fila andar. Mais uma vez obrigado pelos comentários e pelo apoio de todos.

[10] Comentário enviado por rl27 em 09/05/2008 - 11:14h:

Parabéns pela série de artigos. Muito boa mesmo!

Estou ansioso pela continuação. Com certeza ainda darei minhas contribuições à comunidade.

Valeu!


[11] Comentário enviado por joaomc em 09/05/2008 - 13:53h:

O princípio da caixa preta é bonito na teoria, mas na prática a coisa não é bem assim. Muitas vezes você *precisa* saber o que há por trás daquele método que está chamando, para, por exemplo, saber os efeitos colaterais, se o método é thread-safe, etc.

Mas estou só sendo chato, o artigo ficou bom, parabéns :)

[12] Comentário enviado por edlonewolf em 09/05/2008 - 19:43h:

joaomc,

Concordo em parte. Mas saber se um método é thread-safe não viola necessariamente o princípio da caixa-preta. O que viola é escrever código que dependa do algoritmo usado por essa ou aquela função. Isso é uma violação grave, que cria dependência. A questão de ser ou não thread-safe é mais relacionada com o conhecimento dos requisitos do módulo. Vamos discutir isso quando formos falar em análise de requisitos.


rl27,

Obrigado pelo comentário. E tenho certeza que em breve estarei também lendo seus artigos aqui. Basta estudar e estar com a mente aberta para aprender.


Ed

[13] Comentário enviado por marcio_paim em 14/02/2012 - 22:14h:

Excelente série de artigos.


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.