Allons droit au but et disons que PHP est un langage bizarre. Ce n'est ni rapide ni syntaxiquement beau. Les bonnes pratiques de développement de logiciels ne sont pas non plus suivies. Mais je développe encore beaucoup de logiciels en l'utilisant. La question devient alors évidente : pourquoi PHP est-il encore utilisé aujourd’hui ?
Il existe de nombreuses raisons autres que la préférence idéaliste personnelle. C’est le cadre de notre discussion. Pourquoi choisir PHP comme langage de développement web ?
Qu'est-ce que PHP ?
"Que signifie PHP ?" Ou demandez : "Qu'est-ce que PHP ?" PHP est un langage pour écrire des pages Web. La couche inférieure est implémentée en langage C et utilise une balise HTML. syntaxe. PHP s'exécute généralement côté serveur, fonctionne en conjonction avec le serveur Web et est responsable du traitement du code HTML et de son renvoi au visiteur.
PHP signifiait à l'origine « Page d'accueil personnelle ». Parce que cela limite complètement le sens et l'opportunité d'utiliser le langage pour un usage général, le langage signifie désormais « PHP : Hypertext Preprocessor ». Cette façon d'écrire est appelée abréviation récursive (une abréviation qui se réfère à elle-même dans le nom complet). Les geeks adorent ce genre de prénom.
Que peut faire PHP ?
À quoi peut servir PHP ? D'une manière générale, PHP peut faire tout ce que vous souhaitez implémenter sur un serveur Web. Par exemple, créez un blog. La mise en œuvre d’une application SAAS est également un jeu d’enfant. Il est également pratique d'écrire un script pour traiter temporairement les données. Ou écrire un script complexe qui se transformera un jour en une entreprise de logiciels prospère ? Cela s'est souvent produit dans le passé.
Si vous ne me croyez pas, vous pouvez consulter le site officiel de PHP pour lister les scénarios d'utilisation :
Script côté serveur
Script de ligne de commande
Écrire des applications de bureau
Je n'encourage pas vraiment la dernière solution, mais cela fonctionne. Mais les deux premières sont de très bonnes raisons.
Cela nous amène à un fait important et inévitable...
PHP est partout
Apprenez et aimez PHP Il y a de nombreuses raisons, et peut-être la raison la plus puissante et la plus efficace est la suivante : il peut être utilisé et exécuté n'importe où sur le réseau. Si vous regardez attentivement, vous pouvez probablement acheter un compte d'hébergement pour aussi peu que 3 $ par mois pouvant exécuter des applications Web Python ou Ruby. Mais il peut certainement exécuter PHP. Cela signifie que vous pouvez toujours compter sur PHP.
Parce que PHP peut s'exécuter n'importe où et qu'il est facile à utiliser, de nombreux logiciels très populaires sont écrits en PHP. WordPress est l'exemple le plus influent et le plus familier pour moi, outre ces outils comme Joomla, Drupal, Magento, ExpressionEngine, vBulletin (oui, il existe toujours), MediaWiki, etc., ils sont tous là. PHP exécute sur le serveur.
Non seulement cela, il existe d'innombrables frameworks d'applications PHP, tels que : Symfony, Zend, Laravel, Aura, CakePHP, Yii et même l'ancien framework CodeIgnitor. Bien sûr, vous pouvez dresser une liste tout aussi longue de frameworks Web pour n’importe quel autre langage. Par exemple, pour les langages Web courants comme Python, Ruby ou Node/JavaScript, vous pouvez même accumuler une liste de compétitions numériques à comparer avec PHP. Mais le nombre de sites Web exécutant PHP est écrasant.
WordPress revendique fièrement avoir 30% d'utilisateurs sur Internet. Vous n'avez même pas besoin de croire cette affirmation pour comprendre que de nombreuses applications Internet doivent utiliser PHP, même si cette affirmation est vraisemblablement vraie.
Avantages de PHP
Fonctionnalités dynamiques
PHP et HTML peuvent fonctionner très harmonieusement ensemble. Modifiez file.html en file.php, vous pouvez écrire du code PHP dans les balises , et la configuration par défaut de la plupart des serveurs Web consiste à exécuter directement des scripts PHP. C'est précisément parce que le seuil est très bas que les programmeurs débutants qui n'ont pas besoin de connaissances approfondies en programmation peuvent se lancer directement, ce qui entraîne beaucoup de code de mauvaise qualité.
En raison de sa facilité d'apprentissage, un grand nombre de programmeurs débutants ont afflué, révélant un autre problème pour lequel PHP a été critiqué : PHP n'a pas une vision claire d'être le meilleur langage côté serveur Web. Bien sûr, il n’existe pas non plus de bonne conception pour cela. Cela a conduit à un autre résultat, une collaboration lâche de partout dans le monde, un mélange de code et d'idées contribuées, et inévitablement, de mauvaises idées s'y sont infiltrées.
Avoir une gestion puissante des paquets orientés objet est désormais un standard en PHP
Composer est un plus pour PHP.
Dans le développement de PHP, des choses étranges sont souvent publiées. L'exemple le plus célèbre est l'introduction de l'instruction goto dans PHP 5.3 (largement considérée comme la première version moderne de PHP).
Des problèmes similaires sont apparus au cours de la croissance de PHP : l'orientation objet a été initialement implémentée comme un concept imparfait et limitatif, la bibliothèque standard était remplie de noms et d'ordres de paramètres incohérents, et (pour citer le châtaigne Concerned récemment critiqué) dans PHP 5.3 , lorsque l'opérateur :: n'est pas reconnu, l'analyseur renvoie un message d'erreur peu lisible : erreur de syntaxe (T_PAAMAYIM_NEKUDOTAYIM) Si vous ne lisez pas la documentation, vous pouvez comprendre cette marque T_PAAMAYIM_NEKUDOTAYIM en anglais. Que voulez-vous dire ?
Mais désormais, PHP prend entièrement en charge la POO. Peu de langages ont une implémentation POO de type Java comme PHP. De plus, contrairement à Java, PHP dispose d'un gestionnaire de packages distinct et largement pris en charge appelé Composer. Il est très simple à utiliser, et une chose qui ne peut être ignorée est qu'il peut facilement référencer des bibliothèques de haute qualité et bien entretenues, ce qui le rend très facile à utiliser.
Le développement rapide de PHP
A travers ces faits, on constate que PHP se développe de manière intéressante. Il devient progressivement un langage orienté objet complet comme Java (pour le meilleur ou pour le pire) et fournit des abstractions simples pour la programmation fonctionnelle, ce qui peut être considéré comme le point chaud actuel. Et il y a un très bon ensemble d'outils en cours de développement, et PHP adore Composer, et pour cause --- parce qu'il fait un travail louable en faisant fonctionner ensemble de grands projets open source.
Bien sûr, nous il ne faut pas oublier ce qui est à la mode en ce moment : le développement de PHP dans la série PHP7 a permis d'améliorer la vitesse. On pensait généralement que cela était dû à l'émergence de HHVM sur Facebook. Dans un court laps de temps, il y avait un risque que HHVM se développe à un rythme qui détruirait la communauté PHP, mais ce n'était pas le cas. a grandi à un rythme beaucoup plus rapide, au point que les gens ont presque oublié l'existence de HHVM.
PHP a une énorme communauté et est adapté aux débutants.
Si vous décidez d'utiliser une nouvelle technologie intéressante, je pense que ce qui retient souvent peu d'attention, c'est la façon dont vous acceptez le langage. Qu'est-ce que ça fait d'apprendre PHP ? Les tutoriels PHP sont faciles à trouver et généralement de bonne qualité.
L'un des inconvénients de la popularité de PHP est que vous trouverez des instructions moins bonnes de la part de personnes qui ne connaissent pas suffisamment l'outil. Ou encore, les « meilleures pratiques » que vous avez apprises de quelqu'un datent d'il y a dix ans. Mais dans l’ensemble, c’est rare et je pense que cela ne doit pas vous décourager. Ou découvrir soudainement que la meilleure pratique que vous utilisez depuis des mois n’est pas la meilleure est rare et ce n’est pas grave.
Comparaison de PHP avec d'autres langages
Ensuite, nous comparerons PHP avec d'autres langages. Ces langages doivent répondre aux exigences suivantes :
Open source : signifie que vous pouvez utiliser ou visualiser le langage ou le programme sous-jacent librement et gratuitement ; appliqué au domaine du développement Web : pas nécessairement axé sur le développement Web, mais a des applications relativement importantes dans le développement Web ; Langage dynamique de haut niveau : possède les caractéristiques d'un langage dynamique, la plupart des langages pour applications Web ont cette caractéristique ; communauté assez grande : il existe de nombreux langages qui remplissent les conditions ci-dessus, mais ne sont utilisés que dans une petite gamme ; , nous utilisons cette dernière condition pour les filtrer Perdre.
Pourquoi utiliser PHP ? Au lieu de JavaScript ?
Le langage le plus important à comparer à PHP est peut-être JavaScript. Le développement moderne nécessite que chaque projet connaisse au moins un peu de JavaScript pour le développement et l'interaction côté client. Avec Node, cela rend l'utilisation de JS sur le serveur relativement simple. Il est très intéressant d'utiliser le même langage "isomorphiquement" sur le serveur et le client.
Comme PHP, JavaScript est un langage éclectique mais parfois laid avec de nombreux défauts et "pièges", mais JavaScript est devenu très rapide au cours de la dernière décennie, c'est donc vrai. Pourquoi choisir PHP plutôt que JavaScript ? Vous avez déjà une expertise ou utilisez des bibliothèques en PHP. Sinon, je pense que JavaScript pourrait être un meilleur choix.
PHP vs Dynamic Server Pages (.Net Core)
Dynamic Server Language provient d'un langage Microsoft utilisé pour la programmation des internautes. C'est très directement similaire à PHP. Mais il fonctionne dans un environnement serveur Windows. Cela a été remplacé par ASP.net. Maintenant remplacé par ASP.NET Core. Ces deux derniers sont désormais des langages open source comme PHP. Et personnellement, je n’ai jamais écrit un seul morceau d’ASP, quelle que soit sa variante.
Je préférerais ASP si j'utilisais et préférais les serveurs Microsoft. Sinon, donne-moi PHP. L'échelle et la taille des deux communautés ne sont pas comparables.
Dois-je utiliser Ruby ou PHP ?
Ruby, en particulier Ruby on Rails, était très populaire au cours de la dernière décennie. Ruby est toujours un langage très apprécié et, à mon avis, il est plus élégant que PHP. Cela dit, sa communauté est plus petite. En même temps, j'ai réalisé que Ruby n'était plus un « langage chaud » (ce rôle a été repris par JavaScript). Ruby est élégant et suffisamment de gens savent l'utiliser pour que je ne l'évite pas. Mais recruter des personnes déjà familiarisées avec Ruby est encore plus difficile que d'embaucher PHP. (Même si je pense que le développeur Ruby moyen est meilleur que le même développeur PHP.)
Python vs PHP : qui est le meilleur ?
Le dernier qui a du sens dans une comparaison individuelle avec PHP est Python . Python propose plus de scénarios d'utilisation que PHP, qui se concentre sur le développement Web (notamment dans les statistiques et l'analyse des données). Et les gens ont généralement le sentiment que c’est un langage plus stable et plus élégant.
Comme Ruby et JavaScript, Python est légèrement plus lourd à exécuter sur le serveur que PHP. Mais c'est un langage très parfait, et son utilisation est plus diversifiée que PHP. Je pense que c'est l'un des langages les plus populaires que PHP, et dans d'autres aspects (tels que : diverses bibliothèques tierces, technologie professionnelle). Acquisition de connaissances, recrutement et recherche d'emploi) sont identiques.
Langage PHP vs Go ? Langage Scala ? Langage Java ? Etc.
Comme mentionné au début, de nombreuses langues seront plus ou moins similaires lorsqu'on les compare. Il existe de nombreux langagesqui peuvent être utilisés à des fins de comparaison, je vais donc en parler brièvement de quelques-uns :
java est très populaire et très efficace. Généralement utilisé pour créer des applications Android, des applications de bureau et des applications Web. Cependant, il n'est pas typé dynamiquement, il offre de meilleures garanties de performances, mais est bien adapté à la programmation Web.
Go est un nouveau langage en cours de développement pris en charge par Google. Il se concentre sur les services Web. Cependant, ce domaine présente encore quelques lacunes par rapport au PHP (plus proche du langage C). Sa vitesse d'exécution est très rapide, mais la communauté est relativement limitée.
Scala est un langage en mémoire populaire (compatible Java) qui semble gagner en popularité. Il est plus élégant que PHP, mais au-delà de cela, il ne semble pas y avoir grand-chose de plus.
Aussi, je pense que ces analyses suffisent pour faire un choix, mais vous avez plus d'options à considérer, mais au final mon alternative serait d'envisager PHP.
Vous devez choisir le langage de programmation en fonction de vos besoins
Avec la comparaison ci-dessus, pourquoi devriez-vous utiliser PHP ? J'ai mentionné quelques mauvaises conceptions en PHP ci-dessus, et certaines d'entre elles sont souvent rencontrées. Par exemple, dans "Rechercher des fonctions de type", l'ordre de ces fonctions aiguille et botte de foin est incohérent dans un environnement sans complétion de code. tomber dans la fosse.
Si vous construisez un nouveau projet Web qui n'a pas besoin d'interagir avec d'autres systèmes et que vous êtes le seul à travailler dessus, vous souhaitez essayer un autre langage, comme Python ou quelque chose du genre. Cependant, ce que vous devez savoir, c’est que même pour un projet comme celui-ci, il existe de nombreuses raisons pour lesquelles vous choisissez PHP.
N'importe quel langage moderne vous permet de créer une application Web. Chaque langage a ses défauts, comme PHP, PHP nécessite que vous compreniez clairement ses défauts avant de pouvoir décider de l'utiliser dans votre projet. Mais pour moi, je choisirai toujours PHP pour construire mon projet Web, comme Keith Adams l'a mentionné dans son discours :
L'efficacité de développement de PHP est vraiment extraordinairement élevée.
Si vous avez une équipe Python, utilisez Python. Si vous avez un partenaire familier avec Java, utilisez Java pour écrire votre programme SaaS. La langue n’est jamais la chose la plus importante.