Porque usar um framework?

Lendo mais sobre frameworks, comecei a me perguntar, porque eu usaria um framework? E consequi as sequintes respostas:

Qual é o problema que me levaria a usar um framework?

R: Tem que fornecer formas de re-uso que vão além de código: re-uso de análise, design, código, etc.

O que é realmente um framework?

R: Um framework captura as funcionalidades comuns a várias aplicações.

As aplicações devem ter algo razoável e grande em comun(pertencer a um mesmo domínio de problemas);

Um framework deve ser uma aplicação quase completa, mas com pedaços faltando e prover os pedaços que são específicos para uma aplicação.

Qual a diferença entre um framework e uma biblioteca de Classes OO?

R: Numa biblioteca de classes, cada classe é única e independente das outras e em um framework, as dependências(colaborações)estão embutidas;

Com o uso de bibliotecas, as aplicações criam as colaborações;

Obs.: um framework impõem um modelo de colaborações;

Não se pode embutir conhecimento de domíniio numa bblioteca de classe

Qual a diferença entre um framework e Design Patterns?

R: Ambos consistem em Classes, interfaces e colaborações prontas, mas possuem diferenças:

Um framework inclui código, um design pattern não(apenas exemplos).

Devido a presença de código um framework pode ser estudado, executado e reusado(à nível de código);

Um framework contém vários design pattern mas o contrário não;

Vantagens e desvantagens:

Com um frameworkdevemos ter benefícios claros em:

Redução de custos e redução de time-to-market.

Motivos:

Maximização do re-uso;

Concentração em adicionar valor em vez de reinventar a roda(tento reinventar sempre);

Menor manutenção;

Melhor consistência e compatibilidade entre aplicações;

Alavancamento de conhecimentos especiais, possibilitando empacotar o conhecimento de especialistas sobre o domínio de problemas. Desta forma, com a saída de especialistas não se perde o conhecimento.

Desvantagens:

Construir um framework é complexo;

Re-uso não vem sozinho deve ser planejado;

é mais demorado criar uma aplicação tendo que criar um framework em vez de fazer a aplicação do zero;

benefícios são realizados a longo prazo. Isso uma empresa quando opta por criar um framework deve ter em mente.

Já trabalhei com alguns, e acompanhei a criação de uma fábrica de software na criação de um framework, e as coisas ficam complicadas quando os prazos começam a estourar.

Em alguns frameworks, durante o uso(sem um planejamento adequado, claro), Sentimos falta de componentes. Nestes casos criamos opções adicionais, gambiarras, para corrigir esta falta(Nestes casos, nao há possibilidade de implementar o framework, que m… então porque eu uso?:( ).

Uma opção que estou tentando aplicar é usar o menos possível, ainda mais que estou aprendendo java e durante o curso o uso de framework torna-se quase que padrão. Bom para conhecimento e para o  mercado, e bom para o desenvolvedor que em muitos casos, na maioria, facilita muito.

No post anterior frameworks, descrevo os que usei no curso, e são muito bons. Mas lembrando que cada um na sua área.

Fonte:

http://sourceforge.net

http://www.apache.org

Abraço,
Ederson Melo

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s