En raison de la rédaction de PHP en C, depuis longtemps, la seule façon de le prolonger était de compter sur la génération actuelle d'objets greys enthousiastes, soit de prendre C. pour beaucoup, ce dernier n'était pas une option. Nous, les développeurs de haut niveau d'aujourd'hui, sommes beaucoup trop paresseux pour prendre une langue aussi merveilleusement précise, exigeante et de bas niveau et centrée sur le TOC. La plupart d'entre nous qui ont commencé nos carrières de programmation dans des langages de haut niveau - en particulier les langages de haut niveau qui sont, pour être honnêtes, des hacks sur des hacks sur des hacks comme JavaScript et PHP - sont franchement complètement désintéressés par l'apprentissage de tout ce que la magie C vous demande. Cela ne veut pas dire que nous sommes des développeurs pires que ceux qui traitent exclusivement de niveaux faibles - ce ne sont que deux mondes différents - nous aimons simplement la satisfaction instantanée du développement Web. Il me faudrait tout aussi longtemps pour traverser un programme C intermédiaire que ce serait un développeur expérimenté de bas niveau pour développer un menu contextuel JS Radial compatible compatible JS assez compatible. Alors, comment, alors, un développeur PHP est-il censé enrichir PHP lui-même avec des fonctionnalités indispensables?
Il y a quelque temps, j'ai mentionné le cadre Phalcon dans un article. PhalCon est un cadre qui offre plus que la plupart des frameworks actuels, mais qui est enveloppé comme une extension PHP que vous installez comme IMAP, iconv, mcrypt ou tout autre. Je n'entrerai pas dans les détails pour le moment, les liens ci-dessus fournissent des informations nombreuses, mais ce qui est important ici, c'est l'ampleur de la jalon que l'équipe Phalcon a atteinte.
Phalcon est un merveilleux hybride créé par de merveilleux hybrides
Phalcon est un merveilleux hybride créé par de merveilleux hybrides - les gens qui sont excellents à la fois à PHP et à C. Phalcon est le terrain d'enfant doré, un cadre PHP aussi bas que possible (gains de performance incommensurables par rapport à d'autres cadres) Mais son API est encore suffisamment élevée pour que tout développeur PHP expérimenté puisse utiliser comme dans n'importe quel autre cadre.
Alors, qu'est-ce que Zephir et qu'est-ce que cela a à voir avec Phalcon? Il s'avère que les développeurs de Phalcon ont réalisé que les demandes de traction dans un projet C comme Phalcon arrivent beaucoup trop lentement par rapport à la vitesse de croissance de la popularité de Phalcon - en grande partie en raison de la rareté des orientations ouvertes de haute qualité C développeurs. Craignant un goulot d'étranglement, ils ont entrepris une autre aventure qui est prête à redéfinir le monde du développement PHP tel que nous le connaissons. Ils ont décidé de construire Zephir.
Si phalcon est le terrain doré entre C et PHP, Zephir est en platine. Zephir sera (note que je dis sera car il est encore en phase alpha très précoce) le seul langage qui permet aux développeurs de haut niveau de développer des extensions de PHP de faible niveau.
Zephir permet aux développeurs de haut niveau de faire des extensions de PHP de faible niveau
ZEPHIR sera un langage typé statique / dynamique qui se compile en C. Il aura une gestion automatique de la mémoire et appliquera strict et explicite sur un comportement flexible et implicite. L'objectif est de masquer la complexité C inutile des développeurs, de rendre le code plus débordonnable et de produire des bibliothèques orientées objet qui peuvent être utilisées directement dans PHP comme n'importe quelle autre extension installable. L'équipe PhalCon réécrit actuellement l'intégralité du cadre Phalcon à Zephir, se préparant pour la version 2.0, ce qui permettra à l'énorme pool de développeurs PHP utilisant Phalcon pour l'étendre sans savoir C.
En plus d'être utilisé pour développer et maintenir Phalcon, Zephir est déjà utilisé ailleurs. Le projet d'apigilité de l'équipe Zend intégrera Zephir afin de permettre aux utilisateurs d'améliorer les performances des API construites avec l'apigilité. De plus, sachant que Zephir aura l'avantage supplémentaire de vous permettre d'écrire toute votre application Web, de le compiler à C et de l'installer dans les serveurs de votre client sans exposer votre code à personne. Zephir prend la protection du code, les performances des applications PHP et le développement des extensions de PHP à des niveaux entièrement nouveaux.
Zephir vous permet de fermer vraiment la source de votre application PHP, protégeant votre propriété intellectuelle
Il est important de noter que Zephir ne remplace aucun langage Web actuel. Ce n'est pas non plus un remplacement pour C. Il s'agit d'une passerelle entre C et PHP, vous permettant d'écrire des extensions de PHP haute performance et des applications PHP de source fermée sans les maux de tête et le temps de développement d'un cycle de développement C. Il ne reproduira ni toutes les fonctionnalités de PHP, ni toutes les fonctionnalités de C - elle n'est pas destinée à une alternative non plus. En fait, toutes les applications ne doivent pas être réécrites avec Zephir, car cela pourrait ne plus être une perte de temps - les applications qui devraient être réécrites sont, par exemple, celles que vous vous souciez de la ferme Trop intensif pour l'interprète PHP. La réécriture de quelque chose comme WordPress à Zephir, par exemple, serait une course de fou car WordPress est un énorme fil de code spaghetti de basse qualité, et d'autres seraient gagnés en le réécrivant à un PHP5.5 orienté objet moderne et moderne.
Il y a quelques exemples ici et dans la documentation. Essentiellement, c'est assez similaire aux langues que vous connaissez déjà - JavaScript, PHP, peut-être même C, faire de Zephir un candidat idéal pour ramasser et essayer rapidement.
Maintenant, beaucoup s'interrogent sur l'impact des performances. Si Phalcon est si rapide car il est écrit en C, ne le réécrira pas dans un langage de niveau supérieur le ralentisse? Eh bien, oui et non. Bien qu'il ne permette pas aux développeurs de plonger dans le réseau de l'allocation de l'espace de mémoire manuelle et de tout ce qui leur permettra de fonctionner plus rapide , ce qui les permettra à son tour de les itérer plus rapidement et d'améliorer la conception plutôt que d'améliorer uniquement la mise en œuvre existante. Naturellement, certaines pièces resteront écrites en C simplement parce qu'il n'y a tout simplement aucun moyen de les réécrire et de garder leur qualité.
Certains repères initiaux de l'implémentation actuelle de Phalcon par rapport à sa version Zephir peuvent être trouvés ici.
pour essayer Zephir pour vous-même (ou, si vous êtes un développeur C incroyable et que vous souhaitez vous aider), vous pouvez consulter le référentiel GitHub. De là, vous pouvez également télécharger, créer et installer la langue - suivez simplement les instructions ReadMe. Une documentation préliminaire peut être trouvée sur la page d'accueil du projet Zephir et leur blog est également disponible. Pour ceux qui utilisent Textmate ou Sublime Text, un surligneur de syntaxe peut être trouvé ici.
Essayez Phalcon et Zephir, et faites-le nous savoir dans les commentaires ci-dessous comment vous les aimez. Si vous essayez Zephir et développez une extension avec elle, n'hésitez pas à me laisser une ligne pour le transformer en tutoriel.
Si vous avez toujours voulu améliorer PHP par vous-même, mais que vous n'avez jamais pris C correctement pour le faire, Zephir est pour vous. Si vous souhaitez protéger votre code contre les yeux indiscrets et le piratage, améliorez simplement les performances de vos applications ou étendez PHP avec des fonctionnalités qui ne peuvent pas être répliquées efficacement via PHP lui-même, Zephir est pour vous.
J'espère que vous avez enrogé ce bref aperçu de ce nouveau projet prometteur, et que vous êtes aussi excité que nous les avantages qu'il pourrait apporter.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!