今年こそ諦めないでPHP_CodeSniffer を導入する! by きんじょうひでき

PHPカンファレンス福岡2023
LT(5分)

今年こそ諦めないでPHP_CodeSniffer を導入する!

o0h_ きんじょうひでき o0h_

今や、CIを回して静的解析を活用して、コーディング規約の運用は機械で自動化するのが当たり前です!!
カンファレンスや勉強会に参加している皆さんにとっては、きっと「そうだそうだ!」と強く頷いていただける主張なのではないでしょうか。

・・・本当にやれていますか?
現実には、きっとそんな甘くないぜ!と唇を震わせている人もいるのではないでしょうか。
今まで使っていない方法や仕組みを取り入れるのは、心理的な抵抗感や不安も生じますよね。

まずは「ノーコストで入れてみる」という方法をとれないものでしょうか?それが出来れば、導入に向けた障壁が1つ解消しそうです。

このLTでは、実際にそうしたアプローチを実施して、PHP_CodeSnifferを既存プロダクトに導入した際の話+今後の展望をお話しします。
私の戦略は、「既存コードに影響のないSniffを入れる」「それによって、まずは”CIでスタイルチェックが動いている”状態を作る」「そのために、既存コードの適合状況を機械的に分析する」「自転車置き場の屋根の色の議論を避けるために、トップダウン的にPER Conding Styleをベースにする」「今後の進展のための仕組みを作り、運用・展開を移譲する」などを組み合わせたものでした。

この手立てを使って、「何年もスタイルチェッカーを入れたい声はあったが実現されていなかった、10年以上の歴史を持つプロダクトコード」に対して、今ではCIによるチェックが稼働しています!