Executando verificação de segurança...
7

Dúvida sobre o significado prático de "Framework"

Sabemos que um Framework é um conjunto de bibliotecas, regras, padrões e outras funcionalidades que aceleram o desenvolvimento.

Poderiamos dizer, de uma forma simples e até rude que um Framework nada mais é que um "template" flexível e já pronto de um projeto?

Carregando publicação patrocinada...
11

Se for para adotar algo informal e sem estabelecer regras de até onde pode ir a informalidade podemos dizer isso sim. Estritamente está errado, e se flexibilizar demais podemos dizer que é um parafuso ou outro termo. Por isso que é melhor usar a definição correta. Quando cada um começa ter sua própria, ninguém se entende. Eu prefiro não chamar de template porque isso é uma coisa diferente nos vários contextos que usamos na área, mas todos levam para o mesmo conceito, o framework não funciona da mesma forma, é diferente você copiar um padrão e invocar um padrão.

https://pt.stackoverflow.com/q/17501/101

Em outras áreas podemos definir um pouco diferente, o termo não é só de programação.

Faz sentido para você?

Espero ter ajudado.


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

1

Tem razão, template foi uma escolha errada de palavra embora seja algo similar o que eu estava perguntando.

Tenho salvo este link que você me mandou em outra pergunta Maniero, agradeço muito, mas é que ainda tenho algumas dúvidas.

Reformulando minha pergunta (peço desculpas de novo por pedir informalidade, é somente para compreensão) podemos dizer que um Framework oferece um modelo genérico de projeto customizável a ser seguido?

2

Eu acho que isso está mais parecido com padrão de projeto.

Veja bem, não é absurdamente errado, mas se você falar essa definição e pedir o nome do termo eu vou errar.

Ele é quase uma aplicação que você "se enturma", informalmente falando. Informal dá margem para falar várias coisas.

1

É... Talvez se definirmos como "um padrão de suporte ao nosso projeto, onde ele pode ser organizado e desenvolvido."

Não é tão informal mas o melhor mesmo é fazer o que disse, deixar de lado essas explicações e definições informais que o significado em si é bem amplo e dá brechas para interpretações erradas, e ficarmos com a definição correta, bola pra frente.

2

A definição do que é um framework vai além de definições, pois no cotidiano da programação nos deparamos com tecnologias que são chamadas de framework, mas que nem elas mesmas se consideram, como é o caso do React que se descreve como:

React é a biblioteca para interfaces de usuário web e nativas

E o Flutter:

Flutter é um kit de desenvolvimento de interface de usuário

Já o Bootstrap:

Bootstrap é um framework web de código-fonte aberto para o desenvolvimento de componentes de interface e front-end para sites e aplicações web, utilizando HTML, CSS e JavaScript

Perceba que as definições e o uso do conceito no cotidiano podem entrar em conflito.

0
0

Acho que a gente nunca deve se preocuapr demais com essas definições. Está tudo bem misturar frameworks e bibliotecas no linguajar do dia a dia. Até porque eles tem cada vez mais se parecido um com outro.

Framework é uma moldura, um arcabouço. Sem ele voce não pendura um quadro! Se há um conjunto de código que sem ele o seu não funciona, que voce precisa dele para "ser chamado", é um framework. Se é "apenas" um conjunto de código que voce apenas chama, e poderia substituir por outro para chamara/invocar, é uma biblioteca.

Por esse motivo não gosto de colocar React como biblioteca: Seu código javascript,jsx não funciona em lugar algum sem o React. Diferente de um código JavaScript que faz chamadas para jQuery (que esse sim é/era uma biblioteca)

1
-4
-2

Você esta absulutamente correto, framework é literamenlte "estrutura de trabalho", ou em uma tradução mais livre e elegante um framework é uma "forma de trabalhar" e esta definição é a melhor definição que você vai encontrar.