この記事は「ひとりでカンファレンスふりかえりo0h Advent Calendar 2021」のday-16です。

ひとりでカンファレンスふりかえりo0h Advent Calendar 2021 - Adventar

今日振り返るのは、「作って遊ぼう!Composer Plugin」です。 PHP Conference Japan 2021のCfPに応募しました。Regular session (25 mins)の枠になります。

作って遊ぼう!Composer Plugin

概要

PHPを用いたアプリケーション開発においてComposerはすっかり欠かせないものになっているかと思いますが、しかし「しっかり使いこなす」とは何でしょうか? まだまだ「使っていない機能」「知らなかった便利さ・効率化」があるのではないかな、と。

Composerにはプラグイン機能があり、作って使うと便利な可能性(=いま直面している問題に上手くハマるケース)があるかも知れません。ただ、あまり身の回りにプラグインを作ったり、あるいは使って何かを便利にしているという人が少ないかもなーとも感じています。

何ができて、どういう時に使って、どういう風に作れば良いのか?という話を解説してみるぞ!というトークをしてみようかな、と思いました。

Composerプラグインとはなにか?という話として、実際に世の中に出回っているOSSの事例紹介も交えつつ話をします。 その上で、備わっているAPI、先に紹介した例でのAPIの利用のされ方、そして「みんなも実際に作ってみよう!!」という目線での開発方法についての紹介をしてみるぞ〜!というプロポーザルでございました。 また、Composer2.xに入ってAPIの変更点についても言及するかと思います。

動機

「プラグインで何が出来るのか」については、自分も過去に手を出してみたことがあります。(1.x時代)。

これがcomposer-pluginでやること・・?というと、また少し「ど真ん中」ではないのかも知れませんが、何にせよ「出来ること」としてショーケースに並べることは出来るかと思うのです。

https://speakerdeck.com/o0h/phpstudy-128-composer-update-request

「知っていればめっちゃ使ったのに・・・」という事が世の中には沢山あるかと思います。なので、「まだ幅広く知られていない」ことについては、チラチラと出していきたいなと。

これまでに自分はComposerを題材にしてカンファレンスや勉強会で喋らせてもらった事が幾度かありましたが、「まだまだもっと色々あるな」という感覚があります。 これもその1つで、自分自身の動機として「もっと色々と深ぼってみたいな、知りたいな」というのがあるのです。

そうこうして「よし!喋ってみたい!!」ってなりました。