Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
レビューをもらいやすい細かい プルリクの切り分け方 at PHPerKaigi 2018
Search
Kazuki Higashiguchi
March 10, 2018
Technology
5
12k
レビューをもらいやすい細かい プルリクの切り分け方 at PHPerKaigi 2018
PHPerKaigi 2018での発表資料です。
http://khigashigashi.hatenablog.com/entry/2018/03/09/020359
Kazuki Higashiguchi
March 10, 2018
Tweet
Share
More Decks by Kazuki Higashiguchi
See All by Kazuki Higashiguchi
Practical Monitoring for Knative Serving / KubeCon + CloudNativeCon Japan 2025
hgsgtk
0
70
Cell-Based Architecture Design in AWS
hgsgtk
1
180
インフラコストとセキュリティ課題解決のためのリアーキテクチャリング / srekaigi2025
hgsgtk
3
7.3k
Design of a Stateful system for Robust Deployment and Observability
hgsgtk
0
1.4k
A guide to joining operational work in your new DevOps team
hgsgtk
1
1.5k
HTTP Tunneling in Go
hgsgtk
0
1.5k
ブラウザ自動操作技術の深層へ、直接触れて学ぶ WebDriver と Chrome DevTools Protocol
hgsgtk
3
6.8k
HTTP Server on random available port in Go
hgsgtk
0
1.1k
Agile Testingを夢見たテスト自動化 〜ATDDへの挑戦から始まる 1年間の試行錯誤〜 / dreaming agile testing at basebank
hgsgtk
13
8.2k
Other Decks in Technology
See All in Technology
AI × クラウドで シイタケの収穫時期を判定してみた
lamaglama39
1
390
Excelデータ分析で学ぶディメンショナルモデリング ~アジャイルデータモデリングへ向けて~ by @Kazaneya_PR / 20251126
kazaneya
PRO
3
170
PostgreSQL で列データ”ファイル”を利用する ~Arrow/Parquet を統合したデータベースの作成~
kaigai
0
160
"'TSのAPI型安全”の対価は誰が払う?不公平なスキーマ駆動に終止符を打つハイブリッド戦略
hal_spidernight
0
120
機械学習を「社会実装」するということ 2025年冬版 / Social Implementation of Machine Learning November 2025 Version
moepy_stats
2
120
事業状況で変化する最適解。進化し続ける開発組織とアーキテクチャ
caddi_eng
1
7k
AI時代のインシデント対応 〜時代を切り抜ける、組織アーキテクチャ〜
jacopen
4
130
Kubernetesと共にふりかえる! エンタープライズシステムのインフラ設計・テストの進め方大全
daitak
0
450
巨大モノリスのリプレイス──機能整理とハイブリッドアーキテクチャで挑んだ再構築戦略
zozotech
PRO
0
300
DDD x Microservice Architecture : Findy Architecture Conf 2025
syobochim
12
4.3k
生成AIが出力するテストコードのリアル よくあるコードと改善のヒント
starfish719
0
160
レガシーシステム刷新における TypeSpec スキーマ駆動開発のすゝめ
tsukuha
3
680
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Balancing Empowerment & Direction
lara
5
760
Designing for Performance
lara
610
69k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Code Reviewing Like a Champion
maltzj
527
40k
Building an army of robots
kneath
306
46k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Making Projects Easy
brettharned
120
6.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
980
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
1)1FS,BJHJ #"4&גࣜձࣾ ౦ޱᏻʢ!,IJHBTIJHVDIJʣ ϨϏϡʔΛΒ͍͍͢ࡉ͔͍ ϓϧϦΫͷΓ͚ํ
ࣗݾհ !,IJHBTIJHVDIJ౦ޱᏻ w ॴଐɿ#"4&גࣜձࣾ #"4&1SPEVDU%JWJTJPO αʔόαΠυΤϯδχΞ 1)1FSઈࢍେืूதͰ͢ʂʂʂ ڵຯͷ͋Δํ࠙ձʹͯ w ࣄɿ
w ܾࡁ։ൃ w 1)1ɾ$BLF1)1ͷόʔδϣϯΞοϓ
ίʔυϨϏϡʔͰɺ ͜Μͳ͜ͱݴ͏ݴΘΕͨ ͜ͱ͋Γ·ͤΜ͔ʁ
ϓϧϦΫͰ͔͗͢Δ"
͜ͷ࣌ɺ ʮͱʹ͔͘খ͍ͯ͘͜͞͠ʯ ͱ͍͏ࢦఠͰऴΘΓ͕ͪ͡Ό ͳ͍Ͱ͔͢ʁ
ͳͷͰΓํΛཧͯ͠Έ ·ͨ͠#
࣍ w େ͖͍ϓϧϦΫͱ w େ͖͍ϓϧϦΫ͕ͳͥѱ͍ͷ͔ w ͳͥେ͖͍ϓϧϦΫ͕ੜ·ΕΔͷ͔ w Ͳ͏ͬͯϓϧϦΫΛখ͍͔ͯ͘͘͞͠ w
খ͖͘͞͠Εͳ͍ϓϧϦΫΛͲ͏͢Ε͍͍͔
େ͖͍ϓϧϦΫͬͯͲΜͳ ͷʁ
ྫ͑ 'JMFT$IBOHFE %J⒎ ɾྫʢʣ !ϨϏϡʔ͔͔࣌ؒΔɾɾɾ
ྫ͑ ɾྫʢʣ 'JMFT$IBOHFE %J⒎ !ਓྨʹϨϏϡʔͰ͖ͳ͍"
Ͳ͏͍͏ಛ͕͋Δͷ͔
େ͖͍ϓϧϦΫΛղͯ͠ΈΔ !ྫʢ1ʣΛ͚۠ͯ͠ΈΔͱ
େ͖͍ϓϧϦΫΛղͯ͠ΈΔ !͍Ζ͍Ζͳཁૉ͕ҰͭͷϓϧϦΫʹؚ·Ε͍ͯΔ ɾ৽ػೳ ɾόάमਖ਼ ɾϦϑΝΫλϦϯά …etc
ʮେ͖͍ʯϓϧϦΫͷͭͷ ಛ
ʮେ͖͍ʯϓϧϦΫͷͭͷಛ ෳػೳؚ͕·Ε͍ͯΔ ͍ͭͰͷ࣮͕ࠞͬͯ͟Δ Ұػೳͷ࣮ίʔυ͕େ
ಛ̍ɿෳػೳؚ͕·Ε͍ͯΔ ୯ಠͰϦϦʔεͰ͖Δػೳ͕ෳؚ·ΕͯΔ ৽ػೳҰؾʹग़͢ҙຯ͋Δʁ
ಛɿ͍ͭͰͷ࣮͕ࠞͬͯ͟Δ ͍ͭͰͷϦϑΝΫλϦϯάɾόάमਖ਼͕ࠞͬͯ͟Δ ͬͯΒ͑Δͷ͋Γ͕ͨ ͍͕ɾɾɾ
ಛɿҰػೳͷ࣮ίʔυ͕େ ҰػೳͰ݁ߏͳߦͷ࣮Λ͍ͯ͠Δ ͋ͷػೳͰ͔͍ͳɾɾɾ %JGG
ͳͥʮେ͖͍ʯϓϧϦΫ ྑ͘ͳ͍ͷ͔
ͳͥʮେ͖͍ʯϓϧϦΫྑ͘ͳ͍ͷ͔ Өڹൣғ͕େ͖͘ͳΔ ͕ൃੜ͢ΔՄೳੑ͕ߴ·Δ ϨϏϡϫʔͷෛ୲͕େ͖͍
ཧ༝̍ɿӨڹൣғ͕େ͖͘ͳΔ No code is the best way to write secure
and reliable applications. IUUQTHJUIVCDPNLFMTFZIJHIUPXFSOPDPEF ίʔυߦ͕ଟ͚Εଟ͍΄Ͳɺ αʔϏεͷӨڹൣғେ͖͘ͳΔ
ཧ༝ɿ͕ൃੜ͢ΔՄೳੑ͕ߴ·Δ Өڹൣғ͕େ͖͚Ε͕ൃੜ͢ΔՄೳੑߴ·Δ
ཧ༝ɿϨϏϡϫʔͷෛ୲͕େ͖͍ w ϨϏϡʔ͢Δྔ͕ଟ͍ͱͦΕ͚͕ͩ࣌ؒऔΒΕΔ w ʮϦϦʔεͯ͠ͳ͍ʯͱஅΛ͢ΔΈͦͷෛՙ Θ͔ΒΜ
ͳͥେ͖͘ͳΔͷ͔
ҰؾʹΖ͏ͱ͢Δ͔Β"
͡Ό͋Ͳ͏͢Ε͍͍ͷ͔
খ͍͞ཁૉʹͬͯࡉ͔ ͘ϦϦʔε͢Δ#
খ͍͞ཁૉʹͬͯࡉ͔͘ϦϦʔε͢Δ #FGPSFશཁૉΛҰؾʹϨϏϡʔɾϦϦʔε "GUFSখ͍͞ཁૉʹͬͯࡉ͔͘ϨϏϡʔɾϦϦʔε
Ͳ͏ͬͯΓ͚͍ͯ͘ ͔⚔
Ͳ͏ͬͯখ͘͞Γ͚͍͔ͯ͘ w 45&1είʔϓΛఆٛ͢Δ w 45&1είʔϓ֎ΛΓग़͢ w 45&1είʔϓΛࡉԽ͢Δ w 45&1είʔϓ͔ΒΓग़͢
45&1είʔϓΛఆٛ͢Δ ʮͲ͜·ͰΛΒͳ͚Ε͍͚ͳ͍ͷ͔ʯ .VTUͳ෦Λఆٛ͢Δ #FGPSF "GUFS
45&1είʔϓ֎Γग़͢ είʔϓ֎ϓϧϦΫ͔ΒΓग़͢ ϦϦʔεՄೳ୯Ґʹͯ͠ࣄલϦϦʔε
45&1είʔϓΛࡉԽ͢Δ ࣄલϦϦʔεͰ͖Δ୯ҐʹࡉԽ͍ͯ͘͠ طଘͷৼΔ͍Λม͑ͳ͍ൣғ
45&1είʔϓΛࡉԽ͢Δ ͦΕͧΕͷػೳ͝ͱʹෳͷΫϥεʹରͯ͠ɺ मਖ਼ΛՃ͍͑ͯΔέʔε͕ଟ͍
45&1είʔϓΛࡉԽ͢Δ طଘͷৼΔ͍ʹӨڹ͕ͳ͍ൣғΛɺ Γग़͠ରͱ͢Δɻ ྫʣ ɾ৽نΫϥε ɾ*/065͕มΘΒͳ͍طଘϝιουͷ मਖ਼ ʜFUD
45&1είʔϓΛࡉԽ͢Δ ྫʣ৽نΫϥεɾطଘϝιουͷमਖ਼ w ৽نΫϥεͷ࡞ طଘͷৼΔ͍ͷӨڹൣғগ ͳ͍ ˠΓ͚ର ɾطଘΫϥεͷमਖ਼ طଘͷৼΔ͍ͷӨڹൣғ͕͋ Γɻ
ϝιουΛमਖ਼͍ͯ͠ΔΑ͏ͳ ߹ɺطʹϝιουΛࢀর͍ͯ͠ ΔՕॴͷಈ࡞อূ͕ඞཁɻ
45&1είʔϓ͔ΒΓग़͢ #FGPSF "GUFS
45&1ऴྃޙ #FGPSF "GUFS
ͱ͍͑
ͦΕͰͰ͔͍ͷͰ͔ ͍
খ͖͘͞͠Εͳ͍ϓϧϦΫ Ͳ͏͢Ε͍͍͔
ࡉ͔͍୯ҐͰͷϨϏϡʔ#
ࡉ͔͍୯ҐͰͷϨϏϡʔ #FGPSF·ͱΊͯ࠷ޙʹϨϏϡʔɾϦϦʔε "GUFS͋Δఔͷ·ͱ·Γ͝ͱʹϨϏϡʔ
͋Δఔͷ·ͱ·Γ͝ͱʹϦϦʔε w Γํ w τϐοΫϒϥϯνʢҊ݅ઐ༻ϒϥϯνʣΛ׆༻͢Δ w ɺੜϒϥϯνΛͬͯ։ൃ͢Δ w خ͍͜͠ͱ w
ϨϏϡʔ୯Ґ͕Θ͔Γ͘͢ͳΔ w ʢHJUIVCʣϨϏϡϫʔͷίϝϯτΛ͍͍͢ w Ͳ͜·ͰϨϏϡʔࡁΈ͔͕Ұྎવ
·ͱΊ w ෳͷཁૉΛҰؾʹΔ͔ΒϓϧϦΫେ͖͘ͳΔ w খͬͯ͘͞ࡉ͔͘ϦϦʔε͍ͯ͘͠ w খ͘͞Γ͚Δʹͭͷ45&1Λ౿Ή w 45&1είʔϓΛఆٛ͢Δ w
45&1είʔϓ֎ΛΓग़͢ w 45&1είʔϓΛࡉԽ͢Δ w 45&1είʔϓ͔ΒΓग़͢ w খ͖͘͞͠Εͳ͍߹͜·ΊͳϨϏϡʔΛ͢Δ
ͦͷଞৄ͘͠ϒϩάʹͯ# ϨϏϡʔΛΒ͍͍͢ࡉ͔͍ϓϧϦΫͷΓ͚ํ
#"4&גࣜձࣾ ౦ޱᏻʢ!,IJHBTIJHVDIJʣ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ