2016年のPHPの傾向はどうですか?

以下のこれらの数行のコードを見つけた場合、あなたは潜在的に最近のPHPの傾向です。



$client = new \Joli\ArDrone\Client(); // use API service (see below) $client->start();
      
      











PHP-ar-droneは、ユーザーがPHPでParrot AR Droneを制御できるようにするnode-ar-droneポートです。 数年前、エイドリアン・バプティストがこの技術を実証したとき、それはいくつかの冗談のように見えるかもしれません:)、しかし今日ではありません。



PHPの世界でよく知られた人格であり、あまり知られていないため、多くの人がインターネットで3つの主要なトピックを議論しています-これらは、HHVMに対するPHP 7、ReactPHPおよびPSR-7による非同期プログラミング、ミドルウェアとしてのマイクロフレームです。



多くの点で、PHP Zend Engineの「直接的な競合」の出現により、PHPの将来に関する議論が激化しています。 そのような競争相手は、サーバーの増加する負荷を解決するためにFacebookによって開発されたJITに基づいて、PHPコードをマシンコードにコンパイルするための仮想マシンであるHHVMでした。 生産性が向上したことで、Zend 2の一般​​的なPHPバージョンと比較して、トラフィックを500〜600%増やすことができました。その後、主にWordPressコミュニティ向けにHHVMが無料でリリースされました。 これが、Zend Engineの創設者がHHVMを直接のライバルとして認識し、2015年12月までにPHP 7のエンジンの第3バージョンを展開した理由です。



ここで 、HHVMと比較して異なるバージョンのPHPをテストした結果のレビューを読むことをお勧めします。



実際には文字通りの意味で競争のような匂いはしませんでしたが、PHPコミュニティは著しく復活し、長年にわたって計画されていた多くのことが短時間で行われました。 今日、これは5つのバージョンすべてと比較してPHP 7のパフォーマンスが100%向上したことに反映されています。 また、PHPの非同期機能およびReactテクノロジーの使用と、人気のあるフレームワークでのPSR 7の統合への関心が大幅に高まっています。



RedditとQuoraで有名なPHPの達人の最も容量の多い引用をいくつか選んで、傾向と予測に関する考察を何らかの形で要約しました。



LaunchKey、Inc.のエンジニアリングディレクターであるAdam Englanderは次のように述べています。



「2016年には、フレームワーク間の互換性がますます高まるでしょう。 Symfony、Laravel、Drupal(CMS)はまだ始まったばかりです。 PSR-7のおかげで、ミドルウェアの概念に基づくフレームワークもより一般的になります。 Slim Frameworkの3番目のバージョンとZend Expressiveは両方とも実際のミドルウェアフレームワークです。 これは、相互作用の原理を中核としたPHPの新しい時代です。



また、特にicicle.ioのおかげで、非同期プログラミングが増加するはずです。 icicle.io開発チームは、JavaScriptのECMAScript 2015のように、PromisesとGeneratorsを使用して非同期プログラミングにアクセスしやすくするための長い道のりを歩んできました。



2016年の最新の予測は、以前の予測に基づいています。 PHPでモノのインターネット(IoT)を開発することで、実際のハードウェアレベルで動きが見られるようになります。 非同期入力/出力を活用する真に非同期でプログラム可能なフレームワークを使用すると、Raspberry Pi、Intel Edison、およびLinuxオペレーティングシステムを実行するその他のIoTデバイスから簡単に入力を取得できるPHPアプリケーションを作成できます。



アムステルダムPHDの作成者であるRafael Dohms氏も次のように述べています。



「今年はPHPにとって興味深い年になると思います。 近年HHVMで見た生産性の飛躍をもたらすPHP 7の発売に加えて、それ自体が既存のプラットフォームに新たな命を吹き込み、多くの企業がインフラストラクチャを節約するのを助けました。さらなる開発に影響を与える要因はPSRです。 7。



HTTPメッセージの標準であるPSR -7は、さまざまな形式のソリューションを作成する機能をもたらしました。 まず、彼は多くの注意を払い、ミドルウェアパターンの使いやすさを示しました。 これにより、ミドルウェアを使用してシステムを作成するNode.jsコミュニティで見られるように、PHPはすでにトレンドを追跡できます。



Zend Expressiveは、このモデルの非常に小さな実装の優れた例です。これにより、モノリシック構造から離れることができ(4〜5年間これを行ってきました)、実際に多くの小さなブロックからソリューションを「構成」し始めます。



これは、マイクロフレームワークとマイクロライブラリの新しい息吹であり、すでに見た傾向です。 少なくとも私にとって、将来のトレンドは、これら、より多くのコンポーネントフレームワーク、およびいくつかのフレームワークの一部を接着することで作成されたソリューションに正確に基づいています。これらはすべて、主にPSR-7とミドルウェアに基づいたシンHTTP実装上に重ねられます」



今年のトレンドに関する私の個人的な意見は、テクノロジー、PHPの第7バージョン、ReactPHP、さらにはHHVMが「大衆に陥る」、つまりメインユーザーに吸収される場合にのみトレンドとなるため、上記と少し対立しています。 しかし、統計によると、メインユーザーが過半数、つまり、WordPress、Drupal、Magentoの小規模プロジェクトであり、トラフィックとサーバーの負荷が許容限度を超えることはほとんどありません。



一方、すべてのWordPress開発者が、HHVMなどの複雑な構成を習得して対処できるわけではありません。 または、たとえば、ホスティングプロバイダーにサーバーまたは共有ホスティングに7-kuをインストールさせることは、中流の開発者にとっては疑わしい性質のタスクです。 少数派を形成する大規模なプロジェクトは、ニーズに応じてサーバーを購入して装備することにより、トラフィックの問題を解決するために経済的な機会を活用するのに非常に実用的であることは言うまでもありません。 そしてもちろん、通常は十分な専門家ベースを持つ大企業のみが、サーバーではなくテクノロジーを最適化するために財務レバレッジをインテリジェントに使用します。



したがって、今年のトレンドは、私の謙虚な意見では、今日あまり注目されていない技術、すなわちPhalcon + Zephirかもしれません。 これはまさにスピードの飛躍をもたらすテクノロジーであり、使いやすさにおいては最新のフレームワークよりも魅力的です。



Phalconを使用して15分でアプリケーションを作成する方法に関する短いビデオをご覧ください。







Ubuntuのユーザーにわかるように、Phalconのインストールも同様に複雑です。



 $ sudo apt-add-repository ppa:phalcon/stable $ sudo apt-get update $ sudo apt-get install php5-phalcon
      
      







Zephirのインストール:



 $ git clone https://github.com/phalcon/zephir $ cd zephir $ ./install -c
      
      







PHP用のいくつかのパッケージをコンパイラーにプリインストールします。



 $ sudo apt-get update $ sudo apt-get install git gcc make re2c php5 php5-json php5-dev libpcre3-dev
      
      







これで、15分でアンケートアプリケーションを作成する準備が整いましたが、簡単にするために、アプリケーションで投票を計算するための独自の計算機を作成します。



 namespace Myframework; class Calculator { public function add(int a, int b) { return a + b; } }
      
      





PHP開発者にとって、すべてはかなりホームスタイルです。覚えておくべき主なことは、コンパイルのデータ型を指定することです(宣言を使用するか、int、bool、charを静的に登録できます)。



Zephyr bin / zephir compileにCで拡張機能をコンパイルするよう指示し、いくつかの簡単なコマンドでPHP環境に返します。



 $ cd ext/ $ phpize $ ./configure $ make $ sudo make install $ echo "extension=/usr/lib/php5/20100525/myframework.so" | sudo tee -a /etc/php5/cli/conf.d/myframework.ini
      
      







Phalconの拡張機能を用意しました! テスト:



 $ php -a Interactive mode enabled php > $calc = new Myframework\Calculator; php > var_dump($calc->add(2, 1)); int(3)
      
      







すでにこの魔法に興味を持っている人は、 ここでドキュメントを掘り下げることができます



Phalconの革新的な方法では、フレームワークがマシンの拡張機能を備えていることさえありませんが、ZephirはPHP開発者にネイティブ言語でフレームワークの機能を拡張する強力な力を与えます。

そして、これにより、PHP開発者がIoTの世界へのチケットを受け取り、それを象で快適に入力するときに、この記事の冒頭で説明したトレンドの概念に目立たなくなります。



エキサイティングですが、エキサイティングなものには、トレンドになるためのすべての前提条件があります!



All Articles