Upgrade to Pro — share decks privately, control downloads, hide ads and more …

rails "all" stats

ykpythemind
December 10, 2024
190

rails "all" stats

ykpythemind

December 10, 2024
Tweet

Transcript

  1. rails stats : もっと価値を得たい • 今を知る ◦ 「コード行数」以外の定量的な情報を一覧できると良い。コードの歩き方が分かる。 • 過去を知る

    ◦ コードベースが歩んできた過程を知ることで”エモく”なれると良い • 未来を知る ◦ 自分たちがこのコードベースをどうしていけばいいのかのインサイトが得られると良い 11 rails “all” stats
  2. rails stats : 今を知る • 主要クラス ◦ コアな事業ドメインは何か 17 ・予約!

    ・Resourceは予約ページのこと 🫣 ・アプリのバーコードを読み取ったりポイント付与したり… ・Push通知の雛形が ShopMessage
  3. rails stats : 今を知る • 主要エンドポイント ◦ ユーザーが使うコンテキストが分かる 18 ※

    railsプロジェクトの tmpディレクトリにスクリプトを転送 し、rails runner で実行させる ※ 雰囲気で集計する
  4. rails stats : 今を知る • 主要エンドポイント ◦ ユーザーが使うコンテキストが分かる 19 ・設定画面が多い

    ・/adminは社内のオペレーション、振込業務など ・購入者が使う /api, /stores/:store_name ・設定画面が多い (予約ページの設定画面) ・購入者が使う /api/v2, /api/reservation_flow
  5. rails stats : 今を知る • 設定より規約 ◦ Railsデフォルトから外れた独自の設定は何か 20 Rails

    アップグレードガイド https://railsguides.jp/upgrading_ruby_on_rails.html
  6. rails stats : 今を知る • 設定より規約 ◦ Railsデフォルトから外れた独自の設定は何か 22 ちゃんとやるのは

    色々大変そう 古いrailsアプリで対応されてないがちのbelongs_to_required_by_defaultはオンにしよう!
  7. rails stats : 今を知る • テーブル数 ◦ アプリケーションの複雑さはデータの複雑さ • 主要クラス

    ◦ コアな事業ドメインは何か • 主要エンドポイント ◦ ユーザーが使うコンテキストが分かる • 設定より規約 ◦ Railsデフォルトから外れた独自の設定は何か 23 https://github.com/ykpythemind/rails_all_stats ➜
  8. コードの歴史を辿って”エモ”くなろう 28 ykpythemind/rails_all_stats ➜ $ ruby version_history.rb /path/to/rails_app => 日付

    Railsバージョン コード行数 テストコード行数 「育ってきたな〜」 「このバージョンアップしんどかったな〜」 と振り返る
  9. STORESのRailsアプリ、これからどうしていくか 36 • すでに10年選手のRailsが3つ ◦ STORES ネットショップ/レジ, STORES 予約, STORES

    ブランドアプリ • 1つの「STORES」へ • 被っているドメイン … 注文履歴、顧客、分析機能、振込、審査 etc…
  10. 未来と戦うためにrails newをする。赤ちゃんのRails 38 赤ちゃんのRails • 👍 よくも悪くもコードベースのドメインが明確になる(例:顧客) • 👍 テストが軽い

    • 🙁 社内の認証・認可の定型的な処理を書くのだるい • 🙁 デプロイ方法など運用を他アプリと統一したい