Tipos de frameworks

10 respostas
T

Olá a todos!

Gostaria de saber se existem diferentes tipos de frameworks.
Por exemplo:
Spring, é que tipo de framework? o e JSF é outro tipo?

Ou framework é simplismente um definição?

10 Respostas

J

Bom dia Thiago,

Framework é uma definição. Framework seria uma caixa de ferramentas com vários recursos já criados e disponibilizados.

T

Olá @joaoyuki!

Então não existem difrentes ‘tipos’ de frameworks, é apenas a definição.

Mas será que nesta definição, não existem difrenciação entre elas?
Por exemplo:

O Framework X é ‘estrutural’, vai te auxiliar a criar a estrutura do seu projeto;
O Framework Y é ‘funcionald’, vai apenas disponibilizar funções para auxiliar o desenvolvimento;

P

Acho que o termo correto para o Framework Y é uma biblioteca, e não framework.
Frameworks existem para suprir alguma deficiência da linguagem, e como tal, costumam ser estrutural.

T

Blz @pfk66!

Então penso que o ‘Framework’ seja apenas um conceito,
quase como se fosse um design pattern concretizado.

P

qual design pattern frameworks como spring ou JSF concretizam?

R

Olá ThiagoA, tentarei responder sua pergunta de uma forma que me explicaram uma vez na faculdade e que me ajudou a entender melhor o conceito, ok?

Biblioteca ( ou API ) seria um conjunto de classes criadas com a finalidade de serem aproveitadas por outras pessoas, porém sem um objetivo específico. Exemplo: bibliotecas da linguagem java, como a java.util.*;

Framework: um conjunto de classes criadas porém com uma finalidade específica, aplicadas a um objetivo. Os frameworks Spring, vRaptor, JSF e Struts por exemplo, são frameworks MVC. O objetivo deles é basicamente (é mais complexo que isso mas é isso, rs) separar as camadas de modelo, visualização (view) e controle de uma aplicação.
Um outro exemplo, seria o Maven e o Grails, frameworks voltados a build e empacotamento de projetos. Ou ainda o XNA Game Studio (nem sei se existe mais, mas enfim), era voltado para o desenvolvimento de jogos utilizando C#.

E assim como estes existem vários outros frameworks, ambos voltados a objetivos específicos.

Espero ter ajudado a esclarecer um pouco mais sua duvida.

Abraço e sucesso.

T

Olá @ricardomb2011, obrigado pela resposta,

Esta definição para Framework já está clara para mim.
O que ainda me causa curiosidade, e se existe categorias para os Frameworks.

Por exemplo:

NOME                    TIPO/CATEGORIA
    Spring, vRaptor, JSF    =  Framework arquitetural
    Maven e o Grails        =  Framework construtor
    XNA Game Studio         =  Framework funcional
P

O essencial está implementado na biblioteca de Servlet.

D

Olá, Thiago.

Na verdade sim, existem tipos de frameworks que variam de acordo com a abordagem utilizada para a implementação dos hot spots (pontos que são customizáveis e extensíveis). No caso, de uma forma bem resumida, existem 3 tipos:

  • White box: a instanciação ocorre através da criação de novas classes, onde você utiliza herança e implementa pontos abstratos.
  • Black box: a instanciação ocorre através de scripts ou algum tipo de configuração (e.g. arquivos XML), e diferente do white box, utiliza composição.
  • Gray box: faz uma mistura das abordagens do black box e white box, utilizando tanto herança como composição.
T

@dellex

Obrigado por responder!!
Tem alguma material (livro, post, artigo, etc) que referencia esta definição?

Criado 8 de janeiro de 2016
Ultima resposta 24 de set. de 2018
Respostas 10
Participantes 5