Save 37% off PRO during our Black Friday Sale! »

コーディング規約で悲しみを生みたくない話

006f2a0e31ac47eebf799326b665c2b2?s=47 miya
September 13, 2019

 コーディング規約で悲しみを生みたくない話

第一回 RubyでLTしちゃわナイト(https://corundum.connpass.com/event/140161/) で発表したLTの資料です。

006f2a0e31ac47eebf799326b665c2b2?s=128

miya

September 13, 2019
Tweet

Transcript

  1. Copy Right © Taimee.inc 2019 - 1 コーディング規約で悲しみを生み たくない話 株式会社タイミー

    宮城 広隆
  2. Copy Right © Taimee.inc 2019 - 2 自己紹介 - 宮城広隆

    - GitHub/Twitter @MH4GF - 株式会社タイミー - Ruby/Rails歴は1年半
  3. Copy Right © Taimee.inc 2019 - 3 コーディング規約 みなさんのプロジェクトにはコーディング 規約はありますか?

  4. Copy Right © Taimee.inc 2019 - 4 コーディング規約あるある - 悲しみを生みがち

  5. Copy Right © Taimee.inc 2019 - 5 コーディング規約あるある プロジェクトに特化したものであるほど辛 くなっていく

  6. Copy Right © Taimee.inc 2019 - 6 コーディング規約あるある 作りたくない

  7. Copy Right © Taimee.inc 2019 - 7 コーディング規約あるある しかし、複数の答えがある場合、チーム としてどれかを選択したくなる時がある

  8. Copy Right © Taimee.inc 2019 - 8 コーディング規約あるある その小さな例を紹介します

  9. Copy Right © Taimee.inc 2019 - 9 Time型のオブジェクトをstringに変換する

  10. Copy Right © Taimee.inc 2019 - 10 Time型のオブジェクトをstringに変換する Time::DATE_FORMATSを定義するとDRYだよ、と新しくチームに参加 したエンジニアが教えてくれた

  11. Copy Right © Taimee.inc 2019 - 11 Time型のオブジェクトをstringに変換する こうできる

  12. Copy Right © Taimee.inc 2019 - 12 Time型のオブジェクトをstringに変換する - 記述量が少ない

    - 設定を一つのファイルで管理できる 良さそう
  13. Copy Right © Taimee.inc 2019 - 13 Time型のオブジェクトをstringに変換する 数ヶ月後、新しく入ってきたエンジニアが出してくるPR にはstrftimeが使われていた

    ↓ FYIとしてto_sで変換できるよとレビューをした
  14. Copy Right © Taimee.inc 2019 - 14 Time型のオブジェクトをstringに変換する これが新しいエンジニアが入るたびに続く…

  15. Copy Right © Taimee.inc 2019 - 15 Time型のオブジェクトをstringに変換する 別の方法としてI18nがある

  16. Copy Right © Taimee.inc 2019 - 16 Time型のオブジェクトをstringに変換する 別の方法としてI18nがある

  17. Copy Right © Taimee.inc 2019 - 17 Time型のオブジェクトをstringに変換する - DATEFORMATより記述量は多いが、I18nはRails

    を使う開発者なら馴染みがある
  18. Copy Right © Taimee.inc 2019 - 18 チームでの議論が続いた - strftime

    - DATE_FORMAT - I18n
  19. Copy Right © Taimee.inc 2019 - 19 ここまで プロダクトの価値には何も寄与していない

  20. Copy Right © Taimee.inc 2019 - 20 チームでの議論が続いた チームで議論した結果、基本的にはI18nを使うのがい いだろうが、強制はしない、という結果になった

  21. Copy Right © Taimee.inc 2019 - 21 終わり - コーディング規約を作るなら、驚き最小な方を選ぼ

    う - 本当に強制するメリットはあるのか