Porque ainda não decidiram uma versão final para a linguagem PHP?

Linguagens antigas como c e c++ já tem uma vesão estável, e java já tem poucas atualizações e praticamente já é estável, assim como python mais recente chegou a versão 3 e não ficam inventando muita coisa. Agora PHP assim como a linguagem a cada ano um framework é atualizado. Laravel por exemplo todo ano tem que aprender de novo. O código do laravel fica obsoleto praticamente todo ano. Sem contar uns frameworks que de vez em quando param e voltam como o CodeIgniter.

Mas a pergunta mesmo é porque ainda não decidiram uma versão final para o PHP ?

Não peguei a ideia do seu tópico, você está falando da linguagem em si ou de frameworks? De que serviria uma “versão final” de uma linguagem, além de deixar a linguagem parada no tempo e incapaz de evoluir conforme a demanda?

Maioria das linguagens de programação modernas são atualizadas de tempos em tempos, algumas com mais ou menos frequência, e as coisas que você citou (laravel/codeigniter) são frameworks, não a linguagem php em si.

Se você está falando de frameworks, precisa comparar com frameworks de outras linguagens. Veja quantas vezes o spring ou o nodejs, ou o django ou flask, react e afins são atualizados. Notará que as atualizações podem ser tão frequentes quanto laravel e laminas.

Tenha em mente que:

  • atualizações constantes ocorrem por motivos diversos, normalmente correções de bugs e pequenos ajustes;
  • maioria das alterações dentro de uma determinada versão (ex: php 8.2.***** ) são pequenas;
  • você não é obrigado a sempre usar a última versão de uma linguagem. Não é incomum se deparar por aí com sistema em php 5.3;
  • em muitos casos, versões dentro de um major release são compatíveis entre si (ex: php 8.2.0 ser compatível com 8.2.2);

Isso tanto pra linguagens quanto frameworks.

Você não está aprendendo do zero todo ano, você está aprendendo em cima do que já sabe. Isso faz parte de ser desenvolvedor. Você não aprende a pedalar de novo só porque trocou de bicicleta. :man_shrugging:

Porque esse não é o objetivo. O objetivo é sempre evoluir a linguagem conforme a necessidade, e ter as bases mais sólidas possíveis para que isso seja alcançado.

Abraço.

4 curtidas

Claro que ficam - não necessariamente “inventando”, mas sim evoluindo a linguagem, adicionando novas funcionalidades, corrigindo bugs, e até removendo coisas que se tornam obsoletas.

A “versão 3” na verdade é sub-dividida em várias outras (3.1, 3.2, etc - atualmente estamos na 3.12). E de uma para outra sempre mudam bastante coisa - veja aqui a lista completa de alterações entre uma versão e outra.

E o mais importante, nada garante que será a “versão final” da linguagem. Não há nenhum impeditivo para que continuem lançando novas versões - aliás, a 3.13 está prevista para o ano que vem, com várias alterações. E não há nada que impeça uma versão 4 (e 5, 6, etc) no futuro.

O mesmo vale para Java, C# e outras, que estão constantemente evoluindo. Claro que podemos questionar se precisava mudar tanto assim (Java está lançando uma nova versão a cada 6 meses, que acho meio exagerado, mas enfim), e tem coisas que não parecem ser bem pensadas e só entram por “moda” ou “pressão” (principalmente - mas não exclusivamente - em PHP, mas não quero começar um flamewar).

Mas de qualquer forma, as mais estáveis parecem ser C e C++ mesmo. Já as outras escolheram não ser, e cada uma tem seus motivos para isso (um que eu não gosto muito é o que eu chamo de “concorrência cega”, adicionar features da moda só pra dizer que não ficou pra trás das outras, mas divago).

3 curtidas