Lembre-se de que esta mensagem eu escrevi justamente como uma réplica à postura que você propõe.
Ou seja, em certo grau era um ataque justamente ao que você escreveu.
E por isso introduzi, no início do artigo, um breve texto explicando de onde vem esta discussão.
Por isso, você não deveria ter esperado uma resposta complacente.
Deixando isso de lado, acho que, em certa medida, você entende o sentido dos frameworks, mas entrou com uma postura justamente contrária. E também acho que deveria se aprofundar mais neles, por exemplo, entendendo a essência do design GOF e os princípios SOLID
www.blackwasp.co.uk
es.wikipedia.org
Porque isso é o que verdadeiramente simboliza um Framework. Não as bibliotecas nem os "atalhos de código". Isso são só acréscimos.
No fundo, visto de uma perspectiva mais técnica, um Framework só simboliza uma camada de abstração ainda acima da POO. O que também se denomina "arquitetura orientada a serviços, ou POS"
es.wikipedia.org
Isso nas Universidades quase não se vê, se é que se vê. Em algumas disciplinas optativas, e em algumas universidades privadas, que tentam estar um pouco mais atualizadas. Nas Universidades te ensinam constantemente que, se você entende a base, entende tudo, e isso é falso. Cada conceito novo requer tempo e muita maturação. Obviamente, se você passa de 4 a 6 anos estudando a mesma coisa, vai ter um grau de conhecimento superior ao de um garoto que tem 4 meses estudando programação. Por pura lógica e puro tempo. Mas, se você tivesse dedicado esses 6 anos a estudar por conta própria e a trabalhar em projetos profissionais a mesma quantidade de tempo que um estudante de engenharia dedica às suas aulas e aos seus estudos, teria um conhecimento de programador muito superior ao de um garoto que acabou de terminar a faculdade.
E isso eu vivi na própria pele: um programador que contratei há alguns anos varria dezenas de engenheiros que havia na minha empresa, os quais eram mais velhos que ele e tinham mais experiência que ele. Não quero continuar me aprofundando nessa questão, porque nos afastamos muito do assunto original, e talvez fosse bom criar um tópico à parte para discuti-la, mas, na minha opinião, o sistema Universitário precisa de uma reforma em muitos cursos, especialmente em informática, onde outros modelos mais "avançados" estão demonstrando ser muito mais eficazes a longo prazo. O mesmo ocorre nos cursos de marketing, e pergunte a qualquer especialista em marketing por este fórum, para ver se algum egresso de um curso desses chega à altura dos seus tornozelos. Alguns cursos não estão bem desenhados de acordo com as novas necessidades do mercado. Dito isso, se quiser continuar com esse assunto, criamos um tópico novo e pronto.
Então, voltando ao assunto principal, no fundo, embora na primeira mensagem eu tenha simplificado muito tudo para dar uma visão bem simples do que significa um Framework, para um programador um pouco mais avançado o que ele tem que entender é que um Framework não é uma questão de bibliotecas.
No fundo, o que acontece hoje em dia é o mesmo que aconteceu no final dos anos 90, início dos 2000: muitos programadores especialistas em programação monolítica, funcional e estruturada resistiam a aceitar a entrada da POO.
Hoje em dia, você fala com qualquer programador e, para qualquer programação empresarial, dizer que vai programar de forma estruturada é como querer se jogar pela janela: uma autêntica loucura
Em contrapartida, existem aplicações, como o próprio kernel do Linux, cujo sucesso reside justamente nesse estilo de programação, afastado de abstrações, para conseguir o desempenho perfeito.
Mas a diferença entre um kernel do linux e uma aplicação empresarial é que, no kernel do Linux, colaboram vários milhares de pessoas para otimizar cada linha de código ao máximo, e, em um produto empresarial, designam uma equipe de 5 programadores e querem que o projeto esteja terminado em 4 meses... com o que, quanto mais abstração, melhor
Essa abstração eles conseguem graças à programação de milhares de programadores que, dia após dia, otimizam o código abstrato.
E a velocidade de colaboração eles conseguem graças aos paradigmas GOF E SOLID, entre outros, com os quais os 5 programadores podem se entender à perfeição e saber onde está cada coisa, porque está tudo perfeitamente estruturado.
No fundo, tudo está programado em PHP, com as funções do PHP. Mas de forma estruturada e ordenada, sob um mesmo framework. Isso é o que faz com que um Framework seja uma necessidade hoje em dia e que aprendê-lo, para um programador intermediário, seja prioritário.