O que é Framework?

13 respostas
Luiz-SP

Já vi muita gente falando, até tenho um idéia do que seja, mas acabem com o meu tormento e expliquem, (de forma reduzida de preferência), o que é um Framework? Outro dia eu estava quase achando que sabia o que era, aí um cara disse MVC é um framework, mas o mvc não é um design pattern??? :? :? :?

13 Respostas

leonardom

Framework é um conjunto de classes e interfaces que cooperam para resolver um tipo de problema de software.

Um framework tem as seguintes características:

  • Um framework compreende múltiplas classes ou componentes, cada um devendo prover uma abstração de um conceito particular.
  • Um framework define como essa abstração trabalha junto para resolver um problema.
  • Componentes do framework são reusáveis.
  • Um framework organiza padrões em alto nível.

Como vc disse MVC e um design patterns, mas existem diversos frameworks que ajudam vc aplicar esse pattern, como por exemplo: Struts, Webwork, vRaptor, etc

pcalcado

“leonardom”:

Como vc disse MVC e um design patterns

Ok, isto é bem polêmico, mas não. O MVC usa o Observer, mas é uma arquitetura, estratégia… não um pattern.

[]s

saoj

Framework é quando vc usa os conceitos de OO para desenvolver uma API que te permita reutilizar uma estratégia para atingir certo objetivo. (Que horrível isso !!!)

Veja o meu post Hibernate ou DBBean. No caso ali o DBBean é um framework de persistencia.

urubatan

MVC é um pattern, pode ser implementado de diversas maneiras diferentes

um framework é um conjunto de classes e bibliotecas que ditam a maneira como você vai trabalhar,
MVC dita como você deve trabalhar, como todos os Design Patterns, mas não é um conjunto de classes/bibliotecas, por tanto, não é um framework :slight_smile:

e MVC não é uma arquitetura por si só, uma arquitetura precisa de muito mais coisa, mas MVC é parte de praticamente todas as arquiteturas de software voltadas a WEB utilizando a linguagem java, e de boa parte das arquiteturas para sistemas Desktop

o proprio Swing utiliza o Pattern MVC :slight_smile:

Hempx

então swing pode ser considerado um framework que ajuda a fazer a interface com o usuario? E qual a diferencia para API( applications programming interface ) e framework ?

Eu acho que até entendo esses conceitos, mas sempre me enrolo quando alguem me pergunta…

urubatan

um framework compreende uma ou mais APIs ou bibliotecas :slight_smile:

por exemplo o Struts
tem a biblioteca dele proprio de classes, commons-beans, commons-logging, commons-xxx

e implementa diversos Patterns, o principal no caso do struts é o MVC, mas também implementa Command, …

pcalcado

“urubatan”:
MVC é um pattern, pode ser implementado de diversas maneiras diferentes

e MVC não é uma arquitetura por si só, uma arquitetura precisa de muito mais coisa, mas MVC é parte de praticamente todas as arquiteturas de software voltadas a WEB utilizando a linguagem java, e de boa parte das arquiteturas para sistemas Desktop

Ok, então troca de mensagens [tipo JMS] seria um pattern?

É o mesmo princípio. Um pattern apresenta uma solução recorrente, MVC é uma estratégia. Utiliza Observer e Façade, é uma aplicação destes em conjunto.

Como falei, é polêmico. meu ponto de vista está mais para a Wikipedia:

Note que pattern e design pattern não são a mesma coisa.

[]s

yung

Um amigo (filipini) disse q uma vez um palestrante mandou mal nessa de conceitos…

"Uma aplicação rodava em um ambiente com Java, mudamos o produto para o produto de nossa marca e melhoramos a performance em 400%…

Olha que beleza, isso que eu chamo de Design Pattern (sic)!"

:smiley:

_fs

shoes, olha a definição de Design Pattern da wikipedia

pcalcado

“LIPE”:
shoes, olha a definição de Design Pattern da wikipedia

“wikipedia”:

Design patterns are standard solutions to common problems in object-oriented software design. The phrase was introduced to computer …encompass a tight interaction of a few classes and objects.

Uhm… sim. Soluções de problemas comuns e tal. Não entendi o que vc quis dizer :roll:

[]s

_fs

Lembrando também do final:

Mas bem … dane-se, não faz a mínima diferença :smiley:

urubatan

bom, dependendo da definição pattern é o que a wikkipedia chama de design pattern, e alguns dividem os patterns em algumas sub classes:

Architecture Pattern
Design Pattern

e assim por diante :slight_smile:

pcalcado

“urubatan”:
bom, dependendo da definição pattern é o que a wikkipedia chama de design pattern, e alguns dividem os patterns em algumas sub classes:

Architecture Pattern
Design Pattern

e assim por diante :-)

Fora os Analiysis Pattern do Fowler…

Sem cotnar os Patterns do Alexander…

Alguém tranco o topic, por favor! :lol: :lol: :lol:

[]s

Criado 18 de agosto de 2004
Ultima resposta 19 de ago. de 2004
Respostas 13
Participantes 8