PHP 8.2 : Quoi de neuf ?
La nouvelle version de PHP arrive à grands pas. Quelles sont les nouvelles implémentations que vous devez connaître ? Consultez cet article pour le savoir !
En tant que développeur PHP, je me souviens encore de l'époque du PHP4, de la première implémentation GC (optionnelle !) dans le PHP5, et j'ai vécu la _hype_ de l'avènement du PHP7 et de ses ramifications.
Au fil des ans, de nombreuses personnes m'ont demandé pourquoi je me donnais la peine d'écrire des articles sur le sujet. la programmation en PHPet pendant de nombreuses années, j'ai entendu comme un mantra deux arguments récurrents expliquant pourquoi je devrais arrêter et commencer à écrire des logiciels commerciaux dans des langages comme le Java ou C#.
Aujourd'hui, je vais citer ces arguments et tenter de vous faire changer d'attitude à l'égard de l'Europe. PHP au moins un peu. Oui, le titre de cet article est un clickbait absurde.
PHP se meurt d'année en année. Le langage web autrefois le plus populaire perd aujourd'hui de sa popularité mois après mois, principalement à cause de JavaScript.
Lorsque l'on examine les chiffres, la vérité donne à réfléchir ! Au cours de l'année écoulée, PHP a perdu 1,6% de sa part de marché en tant que langage de base du Web.
Si PHP poursuit cette tendance à la baisse, en 18 ans PHP passera sous la barre des 50% de la technologie Web dorsale !
Mais d'accord, blagues à part - bien que les chiffres soient réels tel que rapporté par W3CTechs.
La première mention que PHP est en train de mourir peut être trouvé sur le web depuis 2013. A l'époque Software Gunslinger a publié un article (que je recommande vivement, soit dit en passant) en disant que PHP mourra parce qu'il ne prend pas en charge les processus de longue durée et parce qu'il manque d'asynchronisme.
Et c'est un fait, PHP n'est pas fait pour ça !
si vous n'avez qu'un marteau, tout ressemble à un clou
Mais revenons aux chiffres : examinons les données de l'année dernière sur les points suivants PHP utilisées dans les paquets Packagist. Les données les plus récentes sont disponibles sur le site source packagist.org
Est-ce la courbe d'adoption des nouvelles versions d'un langage de programmation en voie de disparition ?
Si cela ne suffit pas, vérifions notre "taux de mortalité du PHP" par rapport à d'autres langues.
Les données utilisées pour l'analyse proviennent deGitHut 2.0qui génère un graphique du nombre de git push
par langue sur Github depuis 2012, selon le schéma - "La répartition des langues en pourcentage dans le graphique linéaire montre les 10 premières langues (ou les langues sélectionnées manuellement) depuis 2012/Q2".
Comme vous pouvez le constater PHP ainsi que d'autres langages populaires tels que Ruby, C/C++, Python ont connu une baisse significative de leur popularité sur Github ces dernières années, mais la tendance est à la hausse et nous nous attendons à ce qu'ils reviennent à des positions élevées après une longue période de latence. (il ne s'agit pas d'un conseil en investissement)
La première battage médiatique
pour le langage Javascript. Je vous laisse d'ores et déjà, cher lecteur, le soin d'en tirer les conclusions et d'en faire l'analyse.
Mais d'un autre côté, une langue en voie de disparition ne devrait pas avoir tendance à augmenter le nombre d'offres d'emploi pour les programmeurs, n'est-ce pas ?
Au moment où j'écris cet article, je peux choisir parmi 171 offres d'emploi sur l'un des principaux portails de l'emploi en Europe. Polognedont pas moins de 50 pour les juniors. PHP est en train de mourir, n'est-ce pas ?
En parlant d'argent, saviez-vous que PHP et sa source code est maintenue depuis novembre 2021 par le indépendant Open Source communautéLa Fondation PHP qui verse des sommes importantes aux développeurs de logiciels libres pour leurs contributions à php-src
?
Contrairement à d'autres langages et cadres de travail, qui sont souvent la propriété de grandes entreprises, le cœur du développement, c'est-à-dire l'ensemble de la chaîne de valeur, n'a pas été modifié. équipe est versée directement sur le compte de la fondation, qui est alimenté par les contributions d'entreprises privées telles que JetBrains et Symfony Corp.de petites contributions de la part de développeurs individuels.
L'Open Source dans toute sa splendeur !
Oui, cet argument vient toujours de la bouche des développeurs qui se sont familiarisés avec des langages fortement typés et comparables.
En examinant le graphique des données collectées au cours de laEnquête StackOverflow de 2021, on constate que pas moins de 10 834 répondants représentant près de 60% du total ont trouvé PHP "épouvantable".
En tant qu'ancien Programmateur PHPJe comprends pourquoi il en est ainsi. Il me vient immédiatement à l'esprit un exemple classique de problèmes de mémoire dans le domaine de la santé. PHP:
<?php
classe FOO {
public $f ;
}
class BAR {
public $f ;
}
while(1) {
$a = nouveau FOO() ;
$b = nouveau BAR() ;
$a->f = $b ;
$b->f = $a ;
print "Utilisation de la mémoire : " . number_format(memory_get_usage(true)) . "bytesn" ;
unset($a) ;
unset($b) ;
}
Pour les non-initiés - oui, le code ci-dessus provoque une erreur de mémoire. Et ce n'est pas tout. De l'appellation idiote des méthodes à l'absence totale de logique dans l'ordre de leurs paramètres (oui, nous aimons tous les str_
et array_
) au bogue le plus célèbre de PHP T_PAAMAYIM_NEKUDOTAYIM
- Le PHP est plein de bizarreries et de vices des anciennes versions. Cela ne signifie pas que ce que nous avons entendu à propos du PHP il y a quelques années est toujours d'actualité. Le langage a subi une énorme métamorphose et aujourd'hui je suis heureux de regarder mes définitions d'objets :
readonly class NotificationEvent
{
public function __construct(
public string $context,
public User $user,
public string $body,
public DateTime $issuedAt,
) {}
}
De plus, la Ecosystème PHP s'est considérablement développé, et nous avons maintenant des possibilités incroyables de créer un code de qualité, hautement typé et bien testé. Nous pouvons utiliser Symfony développer des applications DDD sans problème majeur, et nous pouvons contourner le problème de synchronisation de PHP en utilisant le bus de messages.
Et bien que je ne pense pas moi-même PHP est adapté à la création de processus backend de longue durée et présente d'énormes problèmes de performance en ce qui concerne la synchronisation des états.a créé un jeu de console PHP en utilisant Symfony + Docker de mes propres mains comme exemple que PHP peut encore avoir des utilisations non conventionnelles.
Autre avantage de PHP est sa faible barrière à l'entrée pour les nouveaux développeurs. Les documentations de deux frameworks populaires Symfony etLaravel et PHP La documentation en elle-même est suffisante pour entrer dans le monde du backend avec leur aide. Un monde qui n'est pas parfait en PHP mais qui permet beaucoup de choses. En utilisant des bibliothèques supplémentaires telles que Laravel Nova, nous sommes en mesure de créer presque n'importe quel composant de notre système avec seulement deux commandes.
Est PHP mourant ?
Non, mais il a un problème d'image et a besoin de beaucoup de travail pour l'améliorer. Nous, les programmeurs, devons faire ce travail en enseignant à la nouvelle génération et en transmettant les meilleures pratiques sous forme d'articles, de bibliothèques et d'astuces.
En tant que langue qui a été sur la marché depuis vingt ans, qui a déjà survécu à plus d'une battage médiatique
(Je pense qu'il s'en sortira et qu'il trouvera sa place.
Et qui sait, peut-être que mes prévisions se révéleront exactes et que le PHP 10.x connaîtra un nouvel essor dans deux ans ?