
シェア:
スタンダップ・コメディーの学位論文を持つ俳優の訓練を受け、ミートアップ・シーンを経てPHP開発に携わるようになった。技術について話したり書いたり、レコード・コレクションから変わったレコードを再生したり買ったりしています。
PHPUK2022でのボネージ
所要時間:1 分
過去2年半の状況を考えれば、チームがPHPUK2022に大きな期待を寄せていたことは、さほど驚くことではないだろう。この2年半、私たちは何度も挫折を味わった。 ララコンEUに参加する予定だったのですが、アムステルダムが新しいCOVIDの波の震源地であったため、当然のことながら中止となりました。結局のところ、ミートアップやカンファレンスは、人々とつながるための重要な要素なのだ。私たちは、完全なカンファレンス・ブースで武装したチームをイベントに向かわせた。 物事が物事は "正常に "戻り始めているように感じます。
オミクロン・バリアントは、ちょうど私たちが外に戻る準備ができていたときに現れた。PHPUKでは ゲイリー・ホッキンPHPScotlandでの基調講演について PHPScotland昨年末のPHPScotlandでの基調講演について、Gary Hockinに話を聞いた。 ロングホーンPHPを除けば、PHPの大きなイベントとしては唯一のものでした。PHPScotlandは、LonghornPHP以外のPHPの大きなイベントとしては、唯一のものでした。そのため、PHPUKはオミクロンCOVIDの波が終わりつつある時期で、何が起こるかわからなかった。
Our booth at PHPUK 2022
用心のため、私たちのブースではチームマスクを選んだ。私たちが過度に用心するのは理にかなっていたが、大会の参加者の大半はマスクを着用しないことを選んだようだった。
エレファンツについて

PHPは[収集可能なおもちゃの大規模なセット( https://elephpant.me/)が手に入る唯一の言語であるという漠然とした誇りを感じていました。 ゴランを使うのは初めてでしょう!)。ショートコントの 短いコメディの瞬間黄色いエレファント・パンツの登場に 世界最大のコレクター即座にDMをくれた。
実はそうではなかった。前の会社で使っていたブランドのものが残っていたんだ 以前の会社からVonageの限定版ゾウの新しいロットを注文するか?という疑問が湧いた。チームの答えは「イエス!」だったようだ。
もちろん、どれも素晴らしいものだった。
PHP8.1について
よし、認めよう:PHP8.1の新機能をチェックするのをかなり怠っていた。私のマシンにPHP8.1が入っている唯一の理由は、PHP8.1のネイティブ・ファイバーを使う実験的な記事を書いたからです。 PHP8.1のネイティブ・ファイバーを使う実験的な記事を書いたからです。の実験的な記事を書いたからだ。
デレクが語った中で、私が印象に残ったことが3つある。
列挙
最初のものは、ネイティブ・クラスの導入である。 Enumクラスの導入である。これは Vonage PHP SDKの中で、そして実際に私の開発キャリアを通して、 多くの静的定数を持つクライアント/サービスクラスをコーディングしてきました。これらの定数はクラスの状態を表すことが多く、例えばSMSオブジェクトは'dispatched'、'delivered'、'pending'などとなります。もう1つの典型的な例は、編集フローを持つブログ記事で、'下書き'、'レビュー中'、'編集者のデスク'、'公開'などです。
Enumsは、クラスをより型安全にするための非常に良いソリューションだ。その実装については こちらまた Laravel 9の記事で見たように、主要なフレームワークではすでに導入されています。
array_is_list()
PHPの世界では、配列がどのように構造化され、そのために開発者がどのように使用するのかについて、定期的に苦情が出ます。PHPでコーディングを始めたばかりのころは、"ハッシュ配列 "や "連想配列 "と言われてもピンと来ませんでした。しかし、長年の経験、弱いコードベースからの傷跡、そして他の言語(この場合は Python)からの洞察によって、PHPのデータ構造としての配列の実装は、それが何であるかを理解するようになりました: 多くの問題を引き起こす可能性のあるハックです。.
の導入は array_is_list()の導入は、配列に対するより直感的なアプローチへの歓迎すべき動きである。これで、配列が実際に、他の言語では listすなわち、連続した整数のキーを持つハッシュ配列です。これが実際に使用されている例は を参照してください。.
イニシャライザの新しいキーワード
これはおそらく、依存性注入を使用するサービスを定期的に作成している、通常のフレームワークユーザーに最も響くものでしょう。PHP8 の コンストラクタのプロパティプロモーションが導入され、コンストラクタの引数括弧内で newキーワードをコンストラクタの括弧内で使用できるようになりました。null ロジックを削除して、次のようにすることができます:
class Article
{
public function __construct(
protected WorkflowState $workflowState = new WorkflowState('draft'),
)
}つまり Articleオブジェクトを WorkflowStateとして昇格させることもできる。 $this->workflowState.
アレクサンドラ・ホワイト
VonageのDeveloper Relationsチームには、専門のドキュメント作成チームがあります。なぜでしょうか?なぜなら、良いドキュメントを書くのは難しいからです。開発者が探している正しい情報をできるだけ早く入手できるようにすることが絶対に必要だからです。 アレクサンドラ・ホワイトアレクサンドラ・ホワイト氏は、落とし穴、怒りを誘うリリースノート、読者を考慮する方法(ネタバレ:過去の自分、現在の自分、仲間、コミュニティのためにドキュメントを書くこと、そしてそれを常に意識すること)について、頭を悩ませる旅に連れて行ってくれた。
また、次のことにも触れている。 知識の呪いこれは私が定期的に遭遇していることです。Vonageでは、この問題を常に考えなければなりません。 多くのそのため、ドキュメントを書いたりブログ記事を書いたりするときは、決して知識を前提としないように注意しています。 知識を前提としない.例えばJavaScriptの世界でのソフトウェア開発は、開発者に無限の選択肢の海を与えるので、部屋を読むことを認識することが重要です。
ローナ・ジェーン・ミッチェル、オープンソースについて
ここ5年ほどで、資金力のあるスタートアップ企業が、企業やパス/SaaS製品の一部としてプロプライエタリなコードを保持しながら、コア・ソフトウェアをオープン・ソースとしてリリースするというビジネス・モデルを採用するケースが非常に増えている。オープンソース "とは、アップロードされたプロジェクトがすぐに忘れ去られてしまうような "フリーでGithubにある "という意味ではありません。オープンソースとは、メンテナンス、コラボレーション、コミュニティへの貢献を意味し、「MITライセンスをチャックして忘れる」のではなく、そのソフトウェアに最も関連するライセンスを意図的に選んだソフトウェアのことだ。
Vonageで使用しているオープンソースSDKにはどのようなライセンスがあるのでしょうか?それらは正しいライセンスなのでしょうか?(このことについて話し合った結果、そうです!)。しかし、あなたのソフトウェアが何を構成しているかも文書化されるべきです。 SBOMあるいは ソフトウェア部品表の一部として コード・インベントリ.オープンソースソフトウェアのこれらの側面はすべて、私たちがもっと考慮すべきものです。 PHPは、本当に最後の真のオープンソース言語の一つです。.
ミルコ・コストゥルコフ、ファイバーについて
非同期PHPは、PHP5.6でジェネレータが導入されて以来、開発者が利用できるようになりました。ジェネレータによってコ・ルーチンを導入できるようになり、 その結果、以下のようなさまざまな非同期PHPフレームワークが生まれました。 Swoole, amphpや ReactPHP.
今の違いは、繊維がネイティブであることだ。 ミルコMilkoは、イベントループを実際にどのようにコーディングするかについて、しっかりとした実装コードをスライドで見せてくれた。正直、かなり難しい内容だが、重要なのは、PHPで非同期プログラミングをする方法を示し、学ぶことだ。 フレームワークXやReactPHPのようなフレームワークの採用率は上がる一方だからだ。
デイブ・リダメント、静的解析について
先日、PHPStanに関する記事を書いた。と並んでよくメンテナンスされ使われている2つの静的解析ツールのうちの1つである PsalmPHP.これらのライブラリの作者がこれらのツールを作成するために費やした労力は驚くべきものです。 Daveの "Jack and Jill "のような語り口で、コードをより堅牢にするためのコーディングの道のりを紹介してくれた。これらのツールは、あなたのPHPコードベースを実質的にコンパイルされた言語に変えることができます。
そして最後がこれだ:ジェームス・セコンド、PHP-VCRについて

今年はCOVIDのせいですでに数字は落ちていたが、私も多少不運だった。 嵐がロンドンに到着し、当然のことながら、人々は早々に帰路についた。後でわかったことだが、この嵐でウェストコースト本線とチルターン鉄道が全線運休となり、私はロンドンから動けなくなった。
このような困難にもかかわらず、私は壇上でPHP-VCRの発見について話すことを大いに楽しんだ。 PHP-VCRを使ったコード例を見せながら PESTテストフレームワーク.質疑応答はかなり長くなり、PHP-VCRをLaravelとPESTに導入するためのコラボレーションの可能性も出てきました(すでに調査を始めています)。
約3年ぶりにようやくステージに戻ることができ、最高の気分だ。皆さんの地元のミートアップグループで、私がまたこの講演をしに現れるかどうか、注目しておいてください!