Uma grande atualização de uma linguagem de programação é sempre um grande evento no mundo do desenvolvimento de software. Um desses grandes dias foi 26 de novembro de 2020 — a data de lançamento do PHP 8.0.
Por que isso é importante? PHP está presente nos principais CMS, como WordPress, Joomla, Magento, OpenCart, Craft CMS, entre outros. Além disso, essa linguagem de programação de código aberto, independente de plataforma, poderosa, flexível, rápida, bem documentada e fácil de aprender é usada em sites sem nenhum CMS. No total, de acordo com as estatísticas da w3Techs, o PHP funciona em 78,8% dos sites cuja linguagem de programação do lado do servidor é conhecida.
As principais mudanças e otimizações na versão merecem uma boa visão geral, e é sobre isso que falamos neste artigo!
O PHP iniciou como um projeto modesto de código aberto que, ao longo do tempo, evoluiu conforme mais pessoas descobriam suas utilizações. A primeira versão foi lançada em 1994 por Rasmus Lerdorf.
A abreviatura PHP inicialmente significava Personal Homepage. Mas agora é um acrônimo recursivo para Hypertext Preprocessor — é recursivo no sentido de que a primeira palavra em si é uma abreviatura, portanto, o significado completo não segue a abreviatura.
A linguagem agora chegou em sua versão 8.0, lançada em novembro de 2020, como dissemos. De qualquer forma, a versão 7 continua sendo a mais usada.
O PHP é executado no motor Zend, que é a implementação mais popular. Existem também algumas outras implementações, como parrot, HPVM (Hip Hop Virtual Machine) e Hip Hop, criado pelo Facebook.
A linguagem é usada principalmente para fazer servidores web. Ela é executada no navegador e também pode ser executada na linha de comando. Portanto, se você não quiser mostrar a saída do código no navegador, pode mostrá-la no terminal.
O PHP tem algumas vantagens que o tornaram tão popular e é a linguagem preferida para servidores da web há mais de 15 anos. Aqui estão alguns dos benefícios da linguagem.
O PHP é independente de plataforma. Você não precisa ter um sistema operacional específico para usá-lo, porque ele roda em todas as plataformas, seja Mac, Windows ou Linux.
PHP é código aberto. O código original é disponibilizado para todos que desejam desenvolvê-lo. Esta é uma das razões pelas quais um de seus frameworks, o Laravel, é tão popular.
A linguagem não é difícil de aprender para iniciantes. Você pode aprender muito se já tiver conhecimento de programação.
O PHP sincroniza com todos os bancos de dados
Você pode conectar facilmente o PHP a todos os bancos de dados, relacionais e não relacionais. Portanto, ele pode se conectar rapidamente ao MySQL, Postgress, MongoDB ou qualquer outro banco de dados.
PHP tem uma comunidade online de muito apoio. A documentação oficial fornece guias sobre como usar os recursos e você pode facilmente consertar seu problema enquanto estiver travado.
Quais os principais novos recursos do PHP 8.0?
Foram necessários 5 candidatos e o trabalho de centenas de pessoas para lançar a versão do PHP 8.0. De acordo com o roteiro, muitos recursos e melhorias há muito esperados chegaram com o lançamento. O PHP 8.0 adiciona muito mais consistência, clareza, transparência e eficiência ao desenvolvimento e dá aos desenvolvedores a chance de construir sites e aplicativos melhores, mais rápidos e mais seguros.
Isso é obtido por meio de grandes melhorias de sintaxe, grandes mudanças de núcleo, atualizações significativas de API, várias correções de bugs, melhores abordagens para tratamento de erros e muito mais. Vamos explicar com mais detalhes sobre as mudanças mais importantes da versão.
JIT (Compilador Just-In-Time)
Entre as melhorias que lidam com o desempenho está a adição do novo compilador JIT do PHP 8 ao núcleo do PHP. Por exemplo, podemos considerar os resultados dos extensos testes de velocidade realizados pelo engenheiro de software Pedro Escudero com e sem JIT para diferentes versões do PHP. Ele descobriu uma melhoria de desempenho impressionante de 45% com o JIT Compiler.
Isso é especialmente útil para melhorar o desempenho de aplicativos com uso intenso da CPU. É muito útil para o PHP como para uma linguagem interpretada que tradicionalmente é interpretada linha por linha. Ao contrário, o PHP 8 JIT compila e armazena em cache algumas partes do código PHP durante o tempo de execução. Essa compilação just-in-time também é conhecida como compilação dinâmica. O compilador JIT não é habilitado por padrão, mas você pode escolher habilitá-lo e configurar para obter os resultados finais.
Uma das maiores novidades do PHP 8 é que ele suporta tipos de união. Isso permite que os desenvolvedores atribuam vários tipos de valores a uma variável. Isso é semelhante a como funciona no TypeScript. A principal restrição para declarar tipos de união em suas classes ou argumentos é que você não pode usar o tipo void. Antes do PHP 8, os desenvolvedores tinham que especificar combinações de tipos nas anotações PHPDoc.
Ao discutir o suporte a tipos de união no PHP 8, precisamos prestar atenção especial ao novo tipo misto. Mixed é um pseudotipo no PHP 8 que representa todos os tipos com os quais o PHP trabalha. Quando você declara mixed, isso significa que os parâmetros, retornos e propriedades podem ser de qualquer tipo. Não há necessidade de excluir informações de tipo de valor. É possível usar o tipo misto em união com outros tipos.
Com argumentos nomeados no lançamento do PHP 8, os desenvolvedores podem passar argumentos para uma função adicionando o nome do parâmetro antes de seu valor. O nome do parâmetro em vez da posição do parâmetro torna-se o mais importante. A introdução de argumentos nomeados torna o código mais fácil de entender porque os nomes dos argumentos são descritivos. Esse recurso também permite que os desenvolvedores especifiquem apenas os argumentos necessários, sem precisar especificar os padrões.
Os desenvolvedores apreciarão muito que o lançamento do PHP 8.0 também traz uma nova versão de atributos. Anteriormente, a única opção para adicionar metadados a declarações de classes, propriedades, etc., era por meio de anotações PHPDoc. Os novos atributos do PHP 8 são metadados estruturados que os desenvolvedores podem usar com a sintaxe nativa do PHP. Eles podem facilmente adicioná-los às declarações de classes, propriedades, métodos, funções, parâmetros de função ou método e constantes do PHP.
O lançamento do PHP8 apresenta uma nova expressão de correspondência que é semelhante à opção clássica. Comparado ao switch, o match faz verificações mais rígidas. A nova expressão possui uma sintaxe mais concisa.
Ele suporta expressões de uma linha e permite que você especifique vários elementos separados por uma vírgula. Não há necessidade de escrever a declaração tradicional de "pausa", pois ela é adicionada implicitamente após cada braço. O resultado da expressão de correspondência pode ser passado como argumento ou armazenado em uma variável.
Por fim, se você está começando do zero, pode iniciar com a versão 8. Isso reduz quaisquer custos associados à migração de uma versão anterior. Enquanto sua equipe está trabalhando, novas versões secundárias serão lançadas e você estará seguro para passar para a produção quando estiver pronto.
Novas melhorias no PHP 8.0 permitirão que sua equipe escreva um código mais limpo, resultando em melhor desempenho desde o início. E tenha em mente que quanto mais código sua equipe escreve em versões anteriores do PHP, mais migração você precisará fazer quando decidir atualizar para a versão 8.
Gostou do conteúdo e quer acompanhar outras novidades do mercado da tecnologia? Siga nossos perfis nas redes sociais — estamos no Twitter, Facebook, Instagram e LinkedIn.