Quelles sont les alternatives de PHP, le cas échéant?

Meilleure réponse

En toute honnêteté, si vous cherchez à faire des scripts côté serveur de niveau simple / moyen, alors vous devriez optez pour PhP. Cest lun des meilleurs scripts de serveur qui soient, Hands Down! Cest le langage côté serveur le plus populaire jamais créé!

Si vous cherchez à gérer des charges immenses comme Facebook ou Google, alors vous devriez vous pencher sur les scripts Python. Ou même en utilisant la programmation C côté serveur.

Voici un aperçu des langages côté serveur couramment utilisés

CGI / Perl

Perl existe depuis plus longtemps que le World Wide Web lui-même. La version 1 est sortie le 18 décembre 1987, soit une décennie complète avant même que les autres langues couvertes dans cet article soient conçues! Si vous êtes novice dans ce domaine, vous vous probablement vous demandez comment un langage de développement Web côté serveur aurait pu exister avant le Web lui-même. Vous voyez, Perl na pas été créé en tant que langage de développement Web. Perl est, en fait, un langage de script polyvalent qui a été conçu pour gérer des tâches qui impliquent beaucoup de manipulation de texte. Perl est très doué pour jongler avec des morceaux de texte provenant de diverses sources et les combiner pour former des documents complets, ce qui est exactement ce qui est impliqué dans le développement Web côté serveur. Dans la décennie et demie qui a suivi sa création, Perl a été étendu au moyen de modules , des éléments de fonctionnalités parfois complexes qui peuvent être connectés au langage pour sadapter à diverses fins spécialisées. Lun de ces objectifs est la création de contenu Web dynamique via linterface de passerelle commune (CGI) prise en charge par la grande majorité des serveurs Web. CGI est un moyen standard par lequel le logiciel serveur Web peut transmettre la demande dun navigateur pour une page Web à nimporte quel programme. À vrai dire, les programmes CGI peuvent être (et ont parfois été) écrits en C / C ++ si nécessaire. Cependant, grâce à sa gestion pratique du texte, Perl a toujours été mieux adapté au travail, et maintenant que Perl est livré avec le module CGI.pm intégré, la plupart des détails de la gestion des choses comme les soumissions de formulaires HTML sont traités pour vous. Enfin, le Comprehensive Perl Archive Network (CPAN) a été créé pour fournir une source centralisée de modules complémentaires, dexemples de scripts et, dans certains cas, de développé des applications Web. Aujourdhui, les versions de Perl sont disponibles gratuitement sur tous les principaux systèmes dexploitation (de Windows grand public à la variante Unix la plus obscure), et si vous voulez faire quelque chose de compliqué, il y a de fortes chances que quelquun ait déjà écrit un module pour vous faciliter la tâche. . Le seul inconvénient de ce langage est que, comme il n’a pas été spécialement conçu pour le développement Web, il n’a pas été optimisé pour la vitesse, l’évolutivité ou la facilité d’utilisation dans un serveur Web. Il existe des langages beaucoup plus faciles à apprendre qui peuvent faire tout autant dans larène du développement Web, mais Perl vous permettra également de faire beaucoup plus que le développement Web si vous en avez besoin. Avantages:

  • Un langage mature avec plus dune décennie dhistoire, vous êtes moins susceptible de rencontrer des bogues en Perl que dans nimporte quel autre langage côté serveur.
  • Cest GRATUIT, même si un bon livre pour vous montrer les cordes peut vous faire perdre un peu de temps.
  • La plupart des bons hébergeurs supportent Perl, donc vous naura probablement pas à payer un supplément pour lhébergement.
  • Un vaste réseau de développeurs Perl dédiés dans le monde entier est à votre disposition. Non seulement ils répondront à vos questions sur dinnombrables groupes de discussion et listes de diffusion Perl, mais larchive CPAN (entre autres) vous donnera de nombreux exemples sur lesquels travailler.

Inconvénients:

  • Bien que certaines options existent pour améliorer la situation, Perl ne sadapte pas particulièrement bien sur les serveurs occupés. Si vous cherchez à créer une application Web capable de générer de nombreux appels en peu de temps, vous voudrez peut-être chercher ailleurs.
  • Perl est connu pour avoir cinq façons différentes de faire même le chose la plus simple, qui peut rendre difficile lapprentissage du travail des autres sils nutilisent pas la même méthode que vous avez lhabitude de voir. De plus, les développeurs Perl sont connus pour trouver le moyen le plus court décrire un programme donné, vous serez donc peut-être surpris de regarder un exemple de script uniquement pour constater quun script complet de panier de commerce électronique a été écrit en trois lignes de code, dont la plupart est des gribouillis et des barres obliques inverses.
  • Perl est optimisé pour la plate-forme Unix sur laquelle il a été créé, donc si vous prévoyez de travailler sur un serveur Windows, vous aurez probablement de meilleurs choix en termes de performances.
  • Perl est un logiciel Open Source, ce qui signifie quil ny a pas de support formel pour celui-ci.Malgré lénorme communauté dassistance à votre disposition, si quelque chose ne va pas, la seule personne sur laquelle vous pouvez vraiment compter est vous-même.

Développeur cible : La plupart des développeurs Web qui travaillent encore avec Perl aujourdhui ont tendance à être des administrateurs et des utilisateurs Unix qui font également fonctionner Perl dans dautres domaines de leur système. Pour des personnes comme celles-ci, Perl est un outil réconfortant pour «aller nimporte où, faire nimporte quoi» sur lequel on peut toujours compter. Si vous êtes un développeur inexpérimenté confronté à la tâche de maintenir un site qui a été initialement écrit en Perl, alors prenez quelques bons livres et préparez-vous à ajouter un outil vraiment puissant pour votre arsenal.

ASP

Avant daller plus loin, préparons quelque chose pour les puristes. Microsoft Active Server Pages (ASP) nest pas une langue. Au contraire, ASP est un framework qui vous permet de combiner lun des nombreux langages de script (VBScript et JavaScript étant les choix les plus populaires) avec un ensemble extensible de composants logiciels . Ces composants sont traités comme des objets par le langage de script de votre choix lorsquil est utilisé dans le cadre du framework ASP. En substance, la puissance dASP réside dans sa capacité à combiner des langages de script relativement simples tels que VBScript et JavaScript avec des composants logiciels puissants qui sont normalement utilisés par les développeurs C / C ++. Daccord, cest largumentaire de vente Microsoft à lécart. Regardons maintenant les faits en face: à toutes fins pratiques, ASP pourrait tout aussi bien être un langage. Vous avez simplement le choix entre écrire VBScript ASP ou JavaScript ASP. Étant donné que la plupart des exemples de code sont écrits en VBScript, votre choix est pratiquement fait pour vous. Ainsi, ASP est généralement considéré comme un langage pour développer des sites Web dynamiques à laide de VBScript, et sous ce parapluie, il excelle. ASP est facile à apprendre, assez puissant pour la plupart des développements Web côté serveur et assez bons en termes de performances. ASP est étroitement lié au système dexploitation Windows (la plupart des composants logiciels sur lesquels ASP sappuie pour ses fonctionnalités sont spécifiques à Windows) et au logiciel serveur Web Microsoft Internet Information Services. Pour ces raisons, il nest ni pratique ni souhaitable dexécuter un site Web basé sur ASP sur autre chose quun serveur Windows. Si vous configurez votre propre serveur Web, cela signifie que vous devez investir dans une copie de Windows 2000 Server (bien quune grande partie dASP sexécute sur Windows 2000 Professionnel, IIS nest pas aussi évolutif sur cette plate-forme). Si vous payez pour lhébergement Web, cela signifie payer pour un serveur Windows, qui est généralement plus cher. Quel que soit votre point de vue, ASP vous coûtera de largent à exécuter. Il existe des versions dASP qui peuvent être exécutées sur un serveur Apache fonctionnant sous Linux, mais à moins que votre objectif spécifique ne soit de déplacer un site Web ASP existant vers un Serveur Linux, il ny a pas grand chose. Une autre préoccupation pour les développeurs ASP est la nature relativement limitée des composants fournis avec ASP. Si tout ce dont vous avez besoin pour votre application est la connectivité de la base de données, un moteur de recherche, des services de gestion des e-mails, le traitement de base des formulaires et le suivi des sessions, alors ASP vous conviendra parfaitement. Cependant, toute fonctionnalité moins courante vous obligera généralement à installer des composants logiciels supplémentaires sur votre serveur. Il existe de nombreuses entreprises qui produisent des composants à utiliser avec ASP qui génèrent des fichiers PDF, interagissent avec des serveurs FTP, gèrent les téléchargements de fichiers binaires et bien dautres choses. Malheureusement, ces composants, comme ASP, ont tendance à être des solutions commerciales qui vous coûteront de largent. Lavantage de tout cela est que lASP est une technologie très bien prise en charge, avec tout le soutien de la communauté de développement Microsoft derrière elle. MSDN , le réseau de développement Microsoft fournit une multitude darticles techniques et de documents de référence pour les développeurs ASP, et le personnel du support technique de Microsoft se fera un plaisir détudier tous les problèmes que vous rencontrez dans vos efforts de développement (pour un prix). Si à tout moment vous avez absolument besoin dune réponse à une question, vous pouvez être assuré quil y aura quelquun là-bas dont le travail est de vous donner la réponse. Avantages:

  • Assez facile à apprendre, même si la programmation est nécessaire.
  • Intégré à Windows 2000 Server – aucun problème dinstallation.
  • Assistance professionnelle disponible.

Inconvénients:

  • Ce nest pas gratuit (sauf si vous utilisez déjà un serveur Windows)
  • Les fonctionnalités spécialisées peuvent vous obliger à acheter des composants commerciaux ou à les développer vous-même en C / C ++ ou Visual Basic.
  • Si vous êtes habitué à la syntaxe de style C (partagée par C / C ++, Java, Perl, PHP, etc.), vous pouvez trouver les particularités de VBScript difficiles à maîtriser.

Développeur cible: Si vous avez réalisé des développements avec VBScript ou Visual Basic, ou avez développé des objets COM sous Windows avant, alors cest définitivement la plateforme de développement Web quil vous faut. De plus, ASP est à peu près aussi convivial pour les non-programmeurs quun langage de programmation peut lêtre (mais si vous détestez vraiment la programmation, consultez Cold Fusion, à côté). Si vous êtes à laise de vous engager dans Windows pour votre plate-forme de serveur Web et que vous pouvez assumer les coûts impliqués, ou si lentreprise pour laquelle vous travaillez exige simplement le niveau de support que Microsoft peut fournir, alors ASP est une technologie formidable à apprendre. Cold Fusion Pour le concepteur Web qui na jamais écrit de programme auparavant, le choix dune plate-forme de développement Web côté serveur peut être redouté. Quelle que soit votre voie, vous êtes confronté à un gros langage de programmation diabolique à apprendre et vous commencez à vous faire mal à la tête… Créé à lorigine par Allaire en 1995 et récemment racheté par Macromedia , Cold Fusion a été conçu pour être différent. Au lieu dun langage de script, Cold Fusion vous propose un ensemble de balises à apprendre. Oui, les balises – tout comme les balises HTML que vous avez appris à connaître et à aimer! Prenons lexemple de la publication dinformations stockées dans une base de données sur le Web. Avec la grande majorité des langages côté serveur, vous devez ajouter du code à votre Page Web pour sortir du mode HTML, vous connecter à la base de données, demander les entrées de la base de données que vous souhaitez afficher et traiter les résultats que la base de données vous envoie pour les afficher dans le cadre de la page Web. Dans Cold Fusion, ceci La tâche courante se fait avec deux balises: une balise , dont les attributs donnent un nom à la requête et indiquent les informations à récupérer dans quelle base de données. Une deuxième balise, fait référence à la requête et vous permet dutiliser du HTML standard pour formater et afficher les résultats de la requête. Pour le programmeur expérimenté, ce système basé sur des balises peut sembler restrictif et inflexible, mais avec une bibliothèque intégrée de plus de 300 balises dans la dernière version, et la possibilité dajouter des balises personnalisées avec langages de programmation plus traditionnels comme C / C ++ a nd Java, Cold Fusion est tout mais restrictif. Cold Fusion 5.0 comprend des balises qui génèrent automatiquement des graphiques à partir des données de base de données, fournissent de manière transparente des fonctions de recherche sur votre site Web et génèrent même des formulaires HTML avec un code de validation JavaScript complet. Pour le concepteur qui est obligé dacquérir des compétences côté serveur, Cold Fusion est livré avec la promesse utopique de navoir à apprendre que quelques nouveaux tags! Comme ASP, Cold Fusion est une plate-forme de serveur commerciale, ce qui signifie quil vous en coûtera de largent pour lexécuter, que vous installiez votre propre serveur ou louiez de lespace chez un fournisseur dhébergement Web. Contrairement à ASP, cependant, Cold Fusion nest pas lié à la plate-forme Windows. Cold Fusion peut sintégrer aussi facilement à Apache sous Linux quà IIS sous Windows 2000. Avantages:

  • Extrêmement facile à apprendre – aucune programmation requise!
  • Puissant et très évolutif (la dernière version prend en charge la mise en cluster de serveurs logiciels et matériels).
  • Assistance professionnelle de Macromedia.
  • Multiplateforme.

Inconvénients:

  • Coûteux à définir votre propre serveur: Cold Fusion Server Professional 5.0 coûte 1 295 $
  • Les programmeurs peuvent ne pas aimer les méthodes de développement basées sur des balises.

Développeur cible: les concepteurs Web qui maîtrisent le HTML mais doivent ajouter des compétences côté serveur à leur répertoire sans avoir à apprendre un langage de programmation. Du point de vue du développeur moyen, apprendre Cold Fusion équivaut à apprendre de nouvelles balises. Les non-concepteurs sont également susceptibles de se familiariser avec la propreté de la programmation côté serveur avec des balises, donc si vous êtes fatigué de déboguer vos scripts côté serveur, Cold Fusion pourrait valoir le coup dœil!

PHP

Un nouveau venu dans larène du développement côté serveur, PHP a gagné un large public parmi les programmeurs avec ses syntaxe familière et bibliothèque de fonctions complète. De plus, sa syntaxe relativement simple et son prix bas et bas (cest gratuit!) En ont fait une alternative intéressante à lASP de Microsoft pour les nouveaux développeurs. PHP a été surnommé par certains comme le «tueur de Perl» du monde des scripts côté serveur. Aux fins du développement Web, PHP peut faire presque tout ce que Perl peut, et le fait généralement plus rapidement et plus facilement. Contrairement à Perl, qui fonctionne généralement comme un programme CGI appelé par le serveur Web pour gérer chaque requête de page, PHP peut sintégrer à votre serveur Web pour quil fonctionne beaucoup plus efficacement.PHP est un langage extrêmement performant, avec un vaste éventail de fonctions intégrées pour tout faire, du suivi des sessions utilisateur à la génération de graphiques dynamiques et même de fichiers PDF à la volée! Aucun module à installer, aucun complément commercial à acheter… PHP gère tout lui-même! En fait, la seule faiblesse de PHP est quil est relativement difficile détendre le langage pour ajouter des fonctionnalités non standard qui ne sont pas gérées par ses fonctions intégrées. Faire cela nécessite une connaissance de la programmation C / C ++ et nest pas pour les âmes sensibles! Heureusement, vous devrez trouver une application Web très ésotérique pour exiger des fonctionnalités qui ne sont pas déjà intégrées à PHP. PHP est un logiciel Open Source gratuit, multiplateforme. Il sintègre à tous les principaux serveurs Web sur tous les principaux systèmes dexploitation. Cest une grande aubaine pour les développeurs à petit budget, car ils peuvent mettre en place un serveur Web complet basé sur Linux avec le support PHP et ne pas payer un centime pour les logiciels! Linconvénient, bien sûr, est quil ny a pas de support formel pour les problèmes que vous pourriez rencontrer avec PHP. De plus, comme PHP est une technologie nouvelle et activement développée, il y a encore des bogues occasionnels trouvés dans les dernières versions. Cependant, ne vous laissez pas décourager par ces inconvénients – PHP a une communauté dutilisateurs extrêmement active (dont une grande partie peut être trouvée dans nos propres Forums SitePoint !) qui est toujours prêt à vous aider avec toutes les pierres dachoppement, et les versions actuelles de PHP sont assez stables et fiables. Avantages:

  • Assez facile à apprendre, en particulier pour les développeurs ayant une expérience C / C ++, Java ou Perl.
  • Une communauté dutilisateurs active prête à vous aider à démarrer.
  • Tout est intégré à la langue.
  • Cest gratuit!
  • Multiplateforme .

Inconvénients:

  • Ce langage a été conçu pour être convivial pour les programmeurs, ce qui le rend malheureusement un peu moins convivial pour les non-programmeurs.

Développeur cible: Développeurs Web à petit budget qui apprécient programmation simple (par exemple JavaScript), ou cela ne vous dérange pas dapprendre comment. PHP vous donne beaucoup de puissance avec une structure de code relativement simple, mais peut ne pas convenir aux applications très haut de gamme qui ne sont pas prises en charge par les fonctionnalités intégrées de PHP.

Java

Java est sans doute la plate-forme la plus puissante pour le développement Web côté serveur aujourdhui. Des petits programmes Java (Servlets) qui gèrent les demandes de pages Web aux JavaServer Pages (JSP) qui combinent HTML avec des balises personnalisées et du code Java, et même jusquaux Enterprise JavaBeans (EJB), des composants logiciels dotés de capacités sophistiquées pour transporter des informations de manière transparente sur les serveurs et réseaux pour accueillir des applications distribuées, Java est vraiment une technologie chaude. Un développeur Web Java expérimenté peut facilement percevoir des salaires supérieurs à 100 000 USD / an. Comme vous vous en doutez, il y a une raison à cela: Java nest pas facile à apprendre! Contrairement aux langages de script comme Perl, ASP et PHP, Java est un langage de programmation à part entière capable décrire de gros programmes! Quelquun avec un peu dexpérience en programmation pourrait sattendre à acquérir une connaissance pratique du langage Java dans un mois ou deux à laide dun bon livre, et dans un autre mois serait probablement en mesure dacquérir les bases de la programmation simple côté serveur. avec Java. Maintenant, si vous souhaitez faire carrière dans la programmation côté serveur, cela peut ne pas sembler beaucoup, mais si vous voulez simplement que quelque chose fonctionne rapidement, un langage plus simple comme PHP peut vous permettre de démarrer en une semaine ou Moins! Java est réputé pour sa philosophie Write One, Run Anywhere (WORA), et en effet Java peut être exécuté sur tous les principaux serveurs Web et tous les principaux systèmes dexploitation. Les applications Web Java peuvent également être regroupées dans des fichiers darchive dapplications Web (.WAR) standard qui peuvent ensuite être installés sur nimporte quel serveur Web compatible Java, quelle que soit la plate-forme. Les fabricants de Java ont prévu dutiliser ce mécanisme pour distribuer des applications Web commerciales à utiliser sur des serveurs Web Java; Cependant, daprès mon expérience, les applications Web Java ont tendance à être des solutions personnalisées à des problèmes complexes, plutôt que des solutions vendables que vous pouvez acheter en ligne. De nombreux fournisseurs différents produisent les plug-ins qui permettent aux serveurs Web comme Apache et IIS dexécuter des applications Web Java, et bien que la plupart dentre eux soient gratuits pour une utilisation et un développement personnels, la majorité doit être payée avant de pouvoir les utiliser pour servir une publicité. Site Internet. Avantages:

  • Extrêmement puissant et évolutif.
  • Multiplateforme.
  • La plupart des plugins de serveur Java sont gratuits à des fins personnelles et de développement.

Inconvénients:

  • Java demande beaucoup de travail à apprendre.Ne commencez même pas si vous nêtes pas sérieux dans lapprentissage de la programmation orientée objet.
  • La plupart des plugins de serveur Java doivent être payés sils doivent être utilisés pour héberger un site Web commercial.

Développeur cible: Les développeurs sérieux qui veulent le summum de la puissance, de la flexibilité et de lévolutivité pour leurs applications Web, et ne craignent pas de payer pour cela dans la sueur, les larmes et le temps de développement. Résumé Dans cet article, nous avons examiné les fonctionnalités, les avantages et les inconvénients relatifs de toutes les principales options de développement côté serveur disponibles aujourdhui:

  • Perl : un langage multiplateforme mature qui peut être difficile à comprendre
  • ASP : le puissant framework Windows de Microsoft
  • Cold Fusion : une option puissante basée sur des balises pour les non-programmeurs
  • PHP : une alternative open source multiplateforme avec de nombreuses fonctionnalités intégrées
  • Java : le summum de la puissance et de la flexibilité, pour les programmeurs sérieux

Cheers

Réponse

PHP nest quun langage de script côté serveur. Nimporte quel langage de programmation peut être utilisé comme alternative tant quil existe un logiciel serveur disponible pour le supporter. Vous pouvez utiliser Python pour Django, JavaScript pour Node.JS, ASP .Net pour IIS, Java pour Tomcat, Php pour Apache et bien dautres. Je ne lai pas encore utilisé.

Mon préféré est ASP .net MVC, car je peux utiliser le puissant Visual Studio pour coder et utiliser C #. Je naime pas php simplement parce quil na pas un très bon IDE (probablement je nen ai jamais eu) aussi puissant que Visual Studio et pour la plupart, php est toujours procédural. Jai codé dans des langages orientés objet dans la majeure partie de ma carrière et lécriture dans des langages procéduraux me semble trop archaïque. Je déteste même JS pour ça, mais au moins jQuery est là pour résoudre la plupart de mes problèmes.

Cest juste mon sentiment que php na pas la structure nécessaire pour un grand projet. Oui, je sais que facebook utilise php, mais il est fortement personnalisé et ils ont des ingénieurs talentueux pour créer leur propre framework et IDE. Jai même essayé des frameworks tels que CodeIgniter et CakePHP. Bien quils soient certainement meilleurs que décrire du code PHP brut, ils ne peuvent pas comparer les luxe décrire du code C #.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *