ハマログ

株式会社イーツー・インフォの社員ブログ

自動コードフォーマットは悪・・・?

コードを綺麗に保つ為に、普段から意識して書くのはもちろん、ツールを使ってフォーマットしている人もいると思います。

IDEのコードフォーマット機能を使っていますが「コードフォーマットを実行」という作業も省きたくなり、自動化できないか調べてみました。

下記の方法があると思いますが、自分のコードだけを自動化したかったので、①を選択しました

  1. IDEの機能を使う
  2. プッシュされた時に、リポジトリ側で行う
  3. 配布時やバッチ等で、定期的にフォーマットツールを実行する

今使ってるIDE、PhpStormでできないか調べたところ、GUIでのコミット時に自動でフォーマットする機能がありますが、コンソールからコミットしている為、却下

次にマクロ機能でも実現できるということで、下記を参考に「ファイルを保存したらフォーマット実行」マクロを作って、CTRL+sで保存した際にフォーマットされる設定を使っていました。

https://junkbox.wicurio.com/index.php?%E3%82%B3%E3%83%BC%E3%83%89%E4%BF%9D%E5%AD%98%E6%99%82%E3%81%AB%E8%87%AA%E5%8B%95%E7%9A%84%E3%81%AB%E6%95%B4%E5%BD%A2%E3%81%97%E3%81%A6%E4%BF%9D%E5%AD%98%E3%81%99%E3%82%8B

しかし、新しい案件にアサインされた際、下記の問題が発生

  • フォーマットされてこなかったファイルを編集した際、コミット時に大量の変更が残り、どこをフォーマットして、どこを改修したのかがわからなくなる
  • 元々アサインされていた人たちから、読みづらいから戻せと言われる(フォーマットのルールは社内の規約に沿っているが、長い間見ていたファイルの見栄えが、急に変わった為と思われる)

どちらもコードフォーマットが徹底されていれば防げることですが、下記の理由で徹底されていない

  • 自動フォーマットの仕組みが整備できていない
  • 各自が手でフォーマットを実行する為漏れる
  • 場合によってはフォーマットしないほうが見やすい

上記から、ひとまず「自分が1からファイルを作った場合、手でコードフォーマットを行う」という自分ルールに落ち着きました・・・

code

  fuji   2019年9月26日


関連記事

AWSのVPCとサブネットの予約済みIPv4アドレスについて

今月より、レガシーなOSで動作しているウェブシステムをAWSに移行する作業をして…

Laravel出力ログファイルの切り替え(またはローテーション)

Laravelの標準ログ(storage/logs/laravel.log)は単…

Laravelの勉強中

入社して1か月ちょっと経ちました。最初はgitと戦ってましたが、最近はLarav…


← 前の投稿

次の投稿 →