PHP 8.2:新機能は?
PHPの新バージョンは目前。あなたが知っておくべき新しい実装とは何でしょうか?この記事で確認してほしい!
PHPの開発者として、私はPHP4の時代、PHP5での最初の(オプションの!)GC実装、そしてPHP7の出現とその影響の誇大宣伝の日々をまだ覚えています。
何年もの間、多くの人たちから「なぜわざわざこんなことをするのか」と聞かれた。 プログラミング PHPそして何年もの間、次のような言語で商用ソフトを書くのをやめ、始めるべきだという2つの主張をマントラのように繰り返し聞いてきた。 ジャワ またはC#。
今日は、これらの議論を引用し、あなたの態度を変えようと思う。 PHP 少なくとも少しは。そう、この記事のタイトルは無茶苦茶なクリックベイトなのだ。
PHP は年々衰退している。かつて最も人気のあったウェブ言語は、今や月ごとに人気を失いつつある。 JavaScript.
数字に目を通すと、現実は厳しい!この1年間で PHP ウェブのバックエンド言語としてのシェアは、なんと1.6%を失った。
もし PHP この減少傾向は18年も続いている。 PHP はバックエンドのウェブ技術の50%を下回るだろう!
しかし、冗談はさておき、この数字は事実である。 W3CTechsの報告による.
最初に言及されたのは PHP は2013年以来、ウェブ上で見ることができる。当時のソフトウェアガンスリンガー 記事掲載 (PHPは長寿命プロセスをサポートしておらず、非同期性に欠けるため、このままでは死んでしまうだろう。
それが事実だ、 PHP はそのために作られたわけではない!
ハンマーさえあれば、すべてが釘に見える
しかし、数字に話を戻そう。 PHP Packagist のパッケージで使用されているバージョン。最新のデータはソースサイト packagist.org
これが瀕死のプログラミング言語の新バージョンの普及曲線なのだろうか?
それでも不十分なら、「PHPの死亡率」を他の言語と比較してみよう。
分析に使用したデータはギットハット2.0の数のグラフを作成する。 ギットプッシュ
折れ線グラフの言語比率分布は、2012/Q2以降の上位10言語(または手動で選択した言語)を示しています。
ご覧の通り PHP RubyやC/C++といった他の一般的な言語と同様に、 Python は近年、Githubでの人気が著しく低下しているが、上昇傾向にあり、長い横ばい期間を経て、再び上位に返り咲くと予想される。 (これは投資アドバイスではありません)
最初の 誇大宣伝
Javascript言語については、同じグラフで見ることができる。結論とその分析は、読者の皆さんにお任せする。
でも、死にかけの言語がプログラマーの仕事を増やすことはないでしょう?
この記事を書いている時点で、私は171の求人情報の中から選ぶことができる。 ポーランドそのうち50本がジュニア用だ。 PHP 死にそうなんだろ?
そして、お金といえば...ご存じだろうか。 PHP そしてその源 コード は、2021年11月以降も維持されている。 独立オープンソース コミュニティPHP財団 どの かなりの金額を支払う への貢献に対して、オープンソースの開発者に php-src
?
大企業が所有することが多い他の言語やフレームワークとは異なり、中核となる開発 チーム は、JetBrainsやSymfony Corpのような民間企業からの寄付によって運営されている財団の口座から直接支払われる。個人開発者からの少額寄付.
オープンソースの栄光
そう、この議論はいつも、強く型付けされた比較可能な言語に慣れ親しんだ開発者の口から出てくる。
この期間中に収集されたデータのグラフを見てみよう。スタックオーバーフロー調査 2021年の時点で、PHPを「ひどい」と答えた回答者は、全体の60%に相当する10,834人に上ることがわかる。
オールドスクールとして PHPプログラマなぜそうなるのか、私には理解できる。私はすぐに、次のような記憶問題の典型的な例を思い出す。 PHP:
<?php
クラス FOO
public $f;
}
クラス BAR {
public $f;
}
while(1) { $a = new FOO(); } $f = new FOO()
$a = new FOO();
$b = new BAR();
$a->f = $b;
$b->f = $a;
print "メモリ使用量:" . number_format(memory_get_usage(true)) ." bytesn";
unset($a);
unset($b);
}
そう、上記のコードはメモリーエラーを引き起こすのだ。それだけではない。メソッドの馬鹿馬鹿しいネーミングや、パラメーターの順番にロジックが全くないところから(そう、私たちは皆、メソッドが大好きなのだ。 str_
そして array_
)からPHPの最も有名なバグである t_paamayim_nekudotayim
- PHPは、古いバージョンの癖や悪癖に満ちている。だからといって PHP 数年前のことは今でも真実である。この言語は大きな変容を遂げ、今日、私は自分のオブジェクト定義を見て満足している:
読み出し専用クラス NotificationEvent
{
public function __construct(
public string $context、
public User $user、
public string $body、
public DateTime $issuedAt、
){}
}
しかも PHPエコシステム そして現在では、優れた、高度に型付けされ、十分にテストされたコードを作成する素晴らしい機会がある。私たちは シンフォニー DDDアプリケーションの開発 メッセージバスを使うことで、PHPのシンクロニシティの問題を回避できる。
そして、私自身は PHP は長寿命のバックエンドプロセスを作るのに適しているが、状態の同期に関してはパフォーマンスに大きな問題がある。PHPコンソールゲームを制作 PHPはまだ型にはまらない使い方ができるという例として、私自身の手でSymfony + Dockerを使っています。
もうひとつ PHPの利点 は新しい開発者にとって参入障壁が低いことです。2つの人気のあるフレームワークSymfonyとララベル そして PHP バックエンドの世界に入るには、彼らの助けを借りれば十分だ。PHPでは完璧ではありませんが、多くのことができる世界です。Laravel Novaのような追加ライブラリを使用すると、2つのコマンドだけでシステムのほとんど全てのコンポーネントを作成することができます。
そうなのか? PHP 死ぬのか?
いや、しかし、イメージに問題があり、それを改善するために多くの作業が必要だ。私たちプログラマーは、新しい世代に教え、記事やライブラリ、Tipsの形でベストプラクティスを伝えることで、この仕事をしなければならない。
この言語が、この国の マーケット この20年間で、すでに1回以上生き残っている。 誇大宣伝
(Objective-Cを覚えている?)私は、それが対処し、ニッチを見つけると思う。
そして、もしかしたら私の予想が当たり、2年後にPHP 10.xが再びブームになるかもしれない。