Slide 1

Slide 1 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. Storageを使うとなにがいいの? 1 虎の穴ラボ Kengo Yoshida

Slide 2

Slide 2 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. アジェンダ 2 1. 自己紹介 2. TL;DR 3. なぜこのテーマにしたのか 4. コーディングの観点からの良し悪し 5. まとめ

Slide 3

Slide 3 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 1. 自己紹介 3 Kengo Yoshida ● 虎の穴ラボ / 通販チーム ● 入社理由 ○ スキルを高め合える勉強熱心な仲間が欲しい ○ 周りが つよつよエンジニア ばかりな状況で揉まれた い ○ 自分の大好きなオタクという文化になにかしらの形で 関わって、発展に貢献したい twitter: @samurai_se

Slide 4

Slide 4 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 補足 虎の穴ラボとは 4 クリエイター支援プラットフォーム 世界最大規模の同人EC

Slide 5

Slide 5 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 5 5 補足2 …というより宣伝 カジュアル面談 Connpass : blessing software 採用ページ

Slide 6

Slide 6 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 2. TL;DR 6 Storageを使うことでコードが受ける良 い影響について

Slide 7

Slide 7 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 3. このテーマを話すきっかけ 7 Before After ファイルの実体があるかないか →ないならAfterの画像のパスを返す

Slide 8

Slide 8 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 3. このテーマを話すきっかけ 8 パスをソースの中に ハードコードしてるのは どうなんだ…? 似たような関数ができたら 同じようにハードコードが増 える

Slide 9

Slide 9 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 3. このテーマを話すきっかけ 9 ● パスを一箇所に集めて管理したい ● パスやファイルの保存先がローカルでは なくクラウドになったら? ● 存在チェックだけでなく、「登録・削除が増 えたら」というのを考えるとクラスにしてお きたいよね 将来的にこういうところで困っちゃう

Slide 10

Slide 10 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 4. コーディングの観点からの良し悪し 10 それ、 Storageクラス使えばいいよ!!

Slide 11

Slide 11 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 4. コーディングの観点からの良し悪し 11 ● config / filesystems.phpでパスを一元管理 ○ file_existsだと関数化してもいつかハードコードした引数がパスに入ってくる ○ するとソースのあらゆるところにパスが散らかり始める ○ 一方でStorageを使っていればfilesystemsに書かないとStorageクラスは動かないので、パスを 一元管理できる ● Storage.phpにクラスを定義し、ファイル操作の処理を一元管理 ○ クラスの関数の中から config / filesystems.phpに定義したパスを呼ぶので、ソースにパスが散 らかりにくい ○ ファイル操作の処理がクラスの中に集まるので、同じような関数が乱立しない 詳しくはこちらを参考に

Slide 12

Slide 12 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 4. コーディングの観点からの良し悪し 12 file_exists 同じようなことをする関数が乱立す ↓ 同じパスが散らかる

Slide 13

Slide 13 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 4. コーディングの観点からの良し悪し 13 Storage

Slide 14

Slide 14 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. まとめ 14

Slide 15

Slide 15 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. まとめ ● Laravelのほうで「こういうところで困るよね」を見越して用意し てくれていることがある ● コードを書く前にまずはLaravelが機能提供していないか?を ググってみるのがよさそう ● あえて素のPHP関数を使ってみると、Laravelのライブラリを 使った場合に受ける恩恵を理解することができる

Slide 16

Slide 16 text

Copyright (C) 2023 Toranoana Inc. All Rights Reserved. EOF 16