Executando verificação de segurança...
Em resposta a [Não disponível]
3

Talvez a melhor lição que vc pode ter é aprender que não existe essa história de "melhor" (não pelo menos da forma que pintam por aí). Em computação, tudo depende.

Frameworks são uma faca de dois gumes: por um lado podem dar produtividade e permitem que se consiga resultados de forma rápida e fácil. Por outro, te tornam dependente e limitado, se vc não souber a linguagem por trás dele.

Se for para seguir o caminho mais "correto", o ideal seria aprender primeiro os conceitos básicos (lógica, algoritmos, estruturas de dados) e a linguagem na qual o framework é feito. Tenho visto muita gente fazer o contrário, e aí temos uma legião de configuradores de framework, do tipo "só sei fazer no [framework da moda], não sei em [linguagem na qual o framework é feito] puro".

Entendo que, devido a vários fatores, muita gente precisa de emprego urgente e só quer algo que a faça entrar no mercado de qualquer jeito. Aí de fato, um "curso" rápido do framework da moda pode até ajudar. Mas no médio e longo prazo, seria bom se preparar estudando os fundamentos: sabendo os conceitos, independente da linguagem, vc aprende rapidamente qualquer framework novo que surgir. Já se aprender somente o framework, vai ter que recomeçar do zero quando a moda mudar (e ela sempre muda, mais cedo ou mais tarde).

Como já dito aqui, os fundamentos da computação não mudam há décadas. Já frameworks vêm e vão. Mas sabendo o primeiro, vc domina rapidamente o segundo (o contrário não). Mais ainda, tendo uma boa base conceitual, vc consegue inclusive avaliar se precisa mesmo de um framework (pois é, nem sempre precisa, às vezes é um canhão pra matar mosca).

Carregando publicação patrocinada...
2

Por outro, te tornam dependente e limitado, se vc não souber a linguagem por trás dele.

Acho que o ponto que eu mais tenho refletido sobre nos últimos tempos é a dependência. Mas não no sentido de não saber usar a linguagem, e sim no sentido de ficar dependente do framework. É algo como ficar dependente de uma biblioteca que pode ser abandonada, só que com um peso maior.

Por exemplo, se o React Native parar de ser desenvolvido, em pouco tempo os aplicativos desenvolvidos com ele deixam de ter atualizações aceitas nas lojas (App Store e Play Store) por causa das versões do iOS e Android. Algo similar pode acontecer com o Electron, deixando de funcionar com novas versões do sistema operacional.

Esse é um motivo pelo qual eu observo a adoção como um fator importante antes de escolher o framework. Por exemplo, Tauri é um framework que tem sido relativamente comentado ultimamente, e teoricamente é melhor que o Electron, mas será que vale a pena criar um projeto nele, sendo que o Electron tem uma equipe sólida por trás (desenvolvido pela OpenJS Foundation), e mais projetos dependendo dele (como o Visual Studio Code e o Discord)?

Ao adotar um framework novo você corre esse tipo de risco, e com o passar do tempo o risco se concretiza, ou diminui.

Essa questão da dependência é um dos motivos pelo qual não cheguei a experimentar o NestJS para o Node.js ainda. Sinto que o Express (biblioteca) me atende muito bem, e no máximo experimentaria o Koa ("concorrente" do Express).

Para projetos de vida curta isso não é uma preocupação. Para projetos simples, também não é, mas aí a questão seria "preciso usar um framework?"