採択
パンフ記事(2ページ)

PHPマスタリー:初心者から次のレベルへのパスファインダー

kunikiya 原田裕介

世の中に入門書や入門者向けの記事は溢れています。
上級者向けの書籍や記事も増えています。
入門書を終えた後、次のステップに進むために何を学ぼうか悩んでいるビギナーの方は多いのでは無いでしょうか?

PHPを使って業務で開発を行っていくうえで、次のステップとして学ぶと良いことを具体的なケーススタディやコード例を交えてお伝えしていきます。

PHPerKaigiでは上級者向けの面白いトークや記事が沢山ありますが、技術コミュニティとして裾野を広げるためには、初中級者向けのコンテンツも有用と考えます。
これらの方々へ有益な情報をなることを期待します。

◆対象者
・入門書をやり終えた程度のPHP初心者
・簡単なWEBアプリケーションが作れるようになったPHP初中級者

◆書くこと
・バグを生み出しづらい書き方
・チーム開発において読みやすい書き方
・コメントの入れ方
・セキュリティを意識した書き方
・コーディング規約
・エラーメッセージの見方

7
採択
パンフ記事(2ページ)

Composerがパッケージを取得するまでの流れを知る

o0h_ きんじょうひでき

みんな大好きComposer、いつも色んなパッケージを持ってきてくれますよね。
「言われたものを持ってきてくれる」ということは、
「そのパッケージがあるか」「今の環境等に対応しているか」「どのバージョンが良いか」「新しく取得する必要があるか」「どこにあるか」「どこに配置するか」を解決している事を意味します。

これらの情報は、

  • Packagistを始めとした「レポジトリ」の仕組み
  • Composerの実行環境(PHPのバーションや拡張モジュールの有無、vendor以下に存在するディレクトリ)の情報
  • 各パッケージに含まれるcomposer.jsonの提供情報

を再帰的に読み解いていくことで、整合性の取れた情報を組み立てています。

仕組みを知ることで、少し便利に感じたり、トラブルシュート力が上がるかも知れませんね!
ということで、composer install の実行時の動作を例にして、
「どこからどんな情報を取得しているか」「どういう順番で処理を進めているか」の概要を説明します。

具体的なロジックは実際にソースコードを読んでもらうことにして、
本記事では登場人物と役割(持っている情報の範囲)、シーケンスに触れていきます。