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
Rails 移行を支える コードレビュー #finc_mw /support_to_rails...
Search
matsuhisa
February 16, 2017
Business
750
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rails 移行を支える コードレビュー #finc_mw /support_to_rails_from_code_review
2017年2月15日に行われた「Railsを使ってサービスの成長を継続させるぞ!(FiNC×みんなのウェディング)」の発表資料です
matsuhisa
February 16, 2017
More Decks by matsuhisa
See All by matsuhisa
Rails移行のレキシ/mobasif-to-ruby-on-rails2017
matsuhisa
1
1.7k
Railsでつくる 画像アップロード 2017 #railsdm /rails_developers_meetup6_image_upload
matsuhisa
0
1.3k
デザインレビューにエンジニアも参加してみよう/engineers-join-design-review-2017
matsuhisa
0
1.2k
「ふつう」のRuby on Rails ウェブアプリケーション #clipla_mwed /ruby_on_rails_for_minnano_wedding
matsuhisa
1
910
爆速のために 独自フレームワーク から Rails に移行した話/mobasif_to_ruby_on_rails
matsuhisa
3
2.9k
デザインレビューにエンジニアも参加してみよう/engineers-join-design-review
matsuhisa
0
330
1年間で起きたデザイナーとエンジニアの変化/1year-designer-engineer
matsuhisa
0
560
サービス改善のために エンジニアがすること、 しないこと
matsuhisa
0
1.8k
Other Decks in Business
See All in Business
Nealle Company Deck
nealle
0
140
タケウチグループRecruit
takeuchigroup
0
13k
Algomatic | 会社紹介資料
algomatic
PRO
2
150k
Data, Context, and AI. @エンジニア英語キャリア Meetup #2
kekekenta
0
100
株式会社アフェクター会社説明資料(中途/技術職向け)
affectorsaiyo
0
320
サステナブルな成長を支えるセルフマネジメントの技術/Self Management skill for growth
ikuodanaka
1
290
タスク分解も大事だけど、「文脈」を分解するのはもっと大事
masahagiwara
0
130
Copilotで資料を作るようになって仕事のやり方が変わった話
aonomasahiro
2
700
「正しいはずの依頼」が届かなかった理由
geneguchi
0
2.5k
Playwright × AI Agent でE2Eテストはどう変わるか AI駆動テストの可能性と実用検証の結果 _0721
findy_eventslides
2
180
「コーディングだけじゃない」Claude Code活用
ottey0525
0
630
株式会社Fact_Base 会社紹介資料
factbase2022
0
1.5k
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
Rails Girls Zürich Keynote
gr2m
96
14k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
260
Paper Plane
katiecoart
PRO
2
52k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Thoughts on Productivity
jonyablonski
76
5.2k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
180
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
470
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
How to train your dragon (web standard)
notwaldorf
97
6.7k
How GitHub (no longer) Works
holman
316
150k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.6k
Transcript
גࣜձࣾΈΜͳͷΣσΟϯά 3BJMTҠߦΛࢧ͑Δ ίʔυϨϏϡʔ ݄দٱߒ৳
݄ দٱߒ৳ ͋ͳͨͷେͳ͍ͭͰ͔͢ʁ ݄
w ΈΜͳͷΣσΟϯάʹ͍ͭͯ w αʔϏε w ։ൃͷྲྀΕ w αʔϏεΛࢧ͑ΔͭͷϨϏϡʔ w ίʔυϨϏϡʔͷ՝ͱղܾํ๏
w ৽ͨͳ՝ ͓͢͠Δࣄ
ΈΜͳͷΣσΟϯά
ΈΜͳͷʰେͳʱΛ;͢
αʔϏε εϚʔτϑΥϯ൛ ύιίϯ൛
ಛ ສ 6#݄ , ࣜ ສ ޱίϛ ݄ݱࡏ
։ൃͷྲྀΕ
1FSM͔Β3VCZʹҠߦத IUUQTTQFBLFSEFDLDPNNBUTVIJTBNPCBTJGUPSVCZPOSBJMT
w ։ൃ։࢝ w ίʔυϨϏϡʔΛ͏͚Δ w Ϛʔδ w εςʔδϯάʹࣗಈͰσϓϩΠ w ຊ൪ڥʹσϓϩΠ
։ൃ͔ΒσϓϩΠ·ͰͷྲྀΕ
w NBTUFSͷϚʔδʹίʔυϨϏϡʔඞਢ w ΤϯδχΞ͕ίʔυϨϏϡʔΛ͢Δ w ϚʔΫΞοϓ$44ͷΈͷ߹σβΠφʔͰՄ w σβΠϯมߋ͕͋ΕɺσβΠϯνΣοΫΛσβΠφʔ ʹͯ͠Β͏ ։ൃϧʔϧ
αʔϏεΛࢧ͑ΔେϨϏϡʔ
w εϓϦϯτϨϏϡʔ w σβΠϯϨϏϡʔ w ίʔυϨϏϡʔ αʔϏεΛࢧ͑ΔେϨϏϡʔ
w िؒʢεϓϦϯτʣʹճɺશ෦ॺΛूΊ࣮ͯࢪ w Ռɺ༧ఆΛڞ༗͢Δ w ෦ॺʢνʔϜʣҎ֎͔ΒͷϨϏϡʔΛड͚Δ w νʔϜ֎ՌΛઆ໌ʢࣗຫʣ͢Δ w νʔϜ֎͔ΒͷࢦఠΛड͚ೖΕΔɺઆ໌͢Δ
εϓϦϯτϨϏϡʔ
FTBʹ֤νʔϜͷͰ͖ͨ͜ͱɺͰ͖ͳ͔ͬͨ͜ͱɺདྷि ͷݟ௨͠Λॻ͘ εϓϦϯτϨϏϡʔ
w తΛ໌֬ʹ͠తΛୡ͍ͯ͠Δ͔ʁΛϨϏϡʔ w ओʹHJUIVC্Ͱߦͳ͍ͬͯΔʢର໘͋Δʣ w ΤϯδχΞɺσΟϨΫλʔࢀՃͰ͖Δ w υοΫϑʔσΟϯά͠ʹ͍͘αʔϏεͳͷͰϨϏϡʔ Ͱɺิ͏ w
ΤϯδχΞ͔Β͓ئ͍͢Δ͜ͱ͋Δ σβΠϯϨϏϡʔ
σβΠϯͷతͳͲΛॻ͍ͨJTTVF1VMM3FRVFTUΛ༻ ҙͯ͠σβΠφʔ͔ΒϨϏϡʔΛड͚Δ σβΠϯϨϏϡʔ
w εϓϦϯτϨϏϡʔ w σβΠϯϨϏϡʔ w ίʔυϨϏϡʔ αʔϏεΛࢧ͑ΔେϨϏϡʔ ࠓճʮίʔυϨϏϡʔʯʹ͍ͭͯͰ͢
՝
w ίʔυελΠϧ͕όϥόϥ w ίʔυͷଐਓԽ w ίʔυϨϏϡʔʹͳΕͳ͍ w ίʔυϨϏϡʔ͕ऴΘΒͳ͍ w ࣭ͷ্
՝
ίʔυελΠϧ͕όϥόϥ
w 1FSM͔Β3VCZʹҠͬͨͷͰɺ3VCZ3BJMTͬΆ͍͕ Θ͔Βͳ͍ w ϋογϡϩέοτΛ͏PSΘͳ͍ w 5JNFOPXʁ5JNF[POFOPXʁ5JNFDVSSFOUʁ w \^͍Δͷʁ͍Βͳ͍ͷʁ w
ॳΊͯͷ͜ͱͩΒ͚Ͱɺӈԟࠨԟ ՝
w πʔϧΛಋೖ͠ɺઌਓͷܙΛआΓΔ w 3VCPDPQɺIBNMMJOUɺFTMJOUɺCSBLFNBO w $*Ͱ࣮ߦ͍ͯ͠ΔʢFTMJOUΛআ͘ʣ ղܾɿπʔϧͷಋೖ
ίʔυͷଐਓԽ
w ʮ͋ͷਓʯ͡Όͳ͍ͱΘ͔Βͳ͍ίʔυઃܭ w ಠࣗϑϨʔϜϫʔΫ͔Β3BJMTͷҠ২࣌ʹฉ͍ͯҠ ২Λ࣮ߦ w ݁Ռɺ͕ࣗʮ͋ͷਓʯʹͳͬͯ͠·͏ w ෆ۩߹ͷԹচʹͳΓ͍͢ ՝
w ࠷ॳɺίʔυϨϏϡʔϥϯμϜͰIVCPU͕ࢦ໊ w ϥϯμϜ͗ͯ͢ϨϏϡʔͰ͖ͳ͍࣌ʢ3BJMTͷϞϯ Ωʔύονͱ͔ʣ w νʔϜͰϨϏϡʔΛ͢ΔΑ͏ʹͳͬͨ w ෳਓ͕ίʔυΛݟΔ͜ͱʹͳΓɺଐਓԽΛݮΒ͢ ղܾɿνʔϜͰϨϏϡʔ
ίʔυϨϏϡʔʹͳΕͳ͍
w ίʔυϨϏϡʔΛ͓ئ͍͢Δɺͩͱʜ w ʮਃ͠༁ͳ͍ʯײ͕ͰΔ w ਓͷ࣌ؒΛͬͯ͠·͏ w ίʔυͷؒҧ͍Λࢦఠ͞Εͯؾ͕͜Ή ՝
w CPX!ΛΘͳ͍ w ϨϏϡʔϓϩμΫτΛ࡞Δ্Ͱେͳ͜ͱɻؾΛ ্͛Δײ͡ʹ͍͖͍ͯͨ͠ w ͓ئ͍͢Δ࣌ʹɺͦͷਓʹ߹ΘͤͨֆจࣈΛͬͨΓɺ ؾΛ্͛ΔΑ͏ʹͨ͠ w EBOHP"CSFBE#LJNPOP$IFBSU♥
ͳͲ ղܾɿֆจࣈΛΘͳ͍͏
w ࢥ͍ΓΛͬͯɺࢦఠ Λ͢Δ w ݠڏ )VNJMJUZ w ଚܟ 3FTQFDU
w ৴པ 5SVTU ղܾɿ)35
w ྑ͍ߦಈΛ΄ΊΔɻྑ͍ߦಈΛܧଓ͍ͤͨ͞ɻ ղܾɿߦಈΛ΄ΊΔ
ϓϧϦΫΤετʹؾ͔ͮͳ͍
w HJUIVCͷ௨͕ଟ͗ͯ͢ಡΊͳ͍ w ϝʔϧݏ͍ʢݸਓͷײͰ͢ʣ w 4MBDLͷNFTTBHFͰʮ͓ئ͍CPXʯ͞ΕΔ w ݟͨΒिؒલͷϓϧϦΫΤετͩͬͨʂ w ࣮ɺ࠷ॳผͳਓ͕͓ئ͍͞Εͯͨ
՝
w ேձͰ͑Δɺٸ͗ͷ࣌ݴ͏ w +BTQFSΛ͏ʂ ղܾ
ϓϧϦΫΤετ͕ Θ͔Γʹ͍͘
w ϓϧϦΫΤετΛϚʔδ͢ΔͱԿ͕ى͖Δͷ͔Θ͔Βͳ ͍ w త͕Θ͔Βͳ͍ w ҙ͋Δʁ w ͙͢ʹϚʔδ͍͍ͯ͠ͷʁ ՝
w ྑ͍ϓϧϦΫΤετͷॻ͖ํΛFTBʹ༻ҙͨ͠ w ϨϏϡʔ͢Δ࣌ʹɺϓϧϦΫΤετͷॻ͖ํΛ͑ͨ ղܾ
w ϓϧϦΫΤετͷతɺ͑ΒΕΔ͜ͱΛॻ͘ w ද্ࣔͷࠩɺεΫϦʔϯγϣοτΛషΔ w ϨϏϡʔ͢Δਓ͕خ͍͠ɺ͓ͯͳ͕͋͠ΔϓϧϦΫΤ ετ͕ཧ ղܾ
࣭ͷ্
w ಠࣗϑϨʔϜϫʔΫ͔Β3BJMTʹҠΓɺΦϒδΣΫτࢦ ΞϓϦέʔγϣϯͱͯ͠దͳίʔυ͔ʁ w ςʔϒϧઃܭ͕೦ w 42-Ξϯνύλʔϯ͕৭ʑ w δΣΠΥʔΫɺϚϧνΧϥϜΞτϦϏϡʔτɺཧ আ
՝
w ΦϒδΣΫτࢦʹ͍ͭͯৄ͍͠ਓ͔ΒͷϨϏϡʔΛ Β͑ͨ w ؾ͖ͮΛಘΔ͜ͱ͕Ͱ͖ͨ w 4DIFNB͕HJUͰཧ͞ΕͯϨϏϡʔՄೳʹ w 42-Ξϯνύλʔϯʹؾͮ͘͜ͱ͕Ͱ͖Δ w
ύϑΥʔϚϯεΛؾ͖͘͢ͳΓɺϨϏϡʔͰࢦఠ Ͱ͖ΔΑ͏ʹͳͬͨ ղܾʁ
ίʔυϨϏϡʔͰ࣮ݱͰ͖ͨ ͜ͱ
w ίʔυελΠϧ͕ཧ͞Ε͖ͯͨ w ίʔυͷଐਓԽ͕ݮ͖ͬͯͨ w ࣭ͷ্ʢԼΛ͙ʣ w ৽͍͜͠ͱΛֶͿ͜ͱ͕Ͱ͖ͨ ࣮ݱͰ͖ͨ͜ͱ
w νʔϜʹKPJOͨ͠ਓʹ৽͍͜͠ͱʢ1FSM͔Β3VCZ ͱ͔ʣΛ͑Δػձ͕Ͱ͖Δ w Βͳ͍͜ͱΛνʔϜͰֶशͰ͖ΔػձͱͳΔ w ͍ͬͯΔਓ͔ΒֶͿػձɻڭ͑Δ͜ͱͰڧԽ͞ΕΔ w ΄ΊΔจԽͰ৺ཧత҆શΛ࡞Δ ༧ظ͠ͳ͔ͬͨ͜ͱ
৽ͨͳ՝
w ࣭ͷ্ʢৗʹʣ w ίʔυϨϏϡʔྃ·Ͱͷ࣌ؒ w ϓϧϦΫΤετ͕ͨ·ΓɺαʔϏεͷՁ͕ಧ͚ΒΕ ͍ͯͳ͍ w ϨϏϡʔ͢ΔਓͷภΓ w
ͭͷγεςϜͷଘࡏ ৽ͨͳ՝
·ͱΊ
w 3BJMTҠߦΛ͢͢ΊΔͱ͖ʹɺίʔυϨϏϡʔΛऔΓೖ Εͨ͜ͱͰ w ࣭ͷԼΛ͙͜ͱ͕Ͱ͖ͨ w ։ൃνʔϜʹֶश͢Δػձ͕Ͱ͖ͨ w ίʔυϨϏϡʔʹ͔͔Δ࣌ؒվળΛ͍͖͍ͯͨ͠ ·ͱΊ