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
enechain company deck
enechain
PRO
10
190k
GRIFFIN GROUP 企業説明資料
griffin2012
0
1.1k
堅牢でスケーラブルな働き方を構築する技術
ikuodanaka
3
1.2k
川下り型キャリア感できのこってきた 35歳子育て世帯の葛藤
ikasumiwt
0
310
スマサテ 会社紹介資料
sumasate
0
1.6k
株式会社BALLAS 会社案内
ballas_inc
0
41k
yomiyomi company deck
yomiyomi
0
1.3k
Advanced:マルチエージェントの設計と運用(Claude Code)
forest8810
1
310
ログラス会社紹介資料 / Loglass Company Deck
loglass2019
19
570k
「エンジニアのための自己管理入門」のインセプションデッキ/Inception Deck of Self-Management beginner's guide book
ikuodanaka
2
510
セーフィー株式会社(Safie Inc.) 会社紹介資料
safie_recruit
7
460k
Facilo Company Deck202607_採用サイト用
facilo_inc
0
470
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Docker and Python
trallard
47
4.1k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
530
Large-scale JavaScript Application Architecture
addyosmani
515
110k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
56k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Between Models and Reality
mayunak
4
390
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.7k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
540
Utilizing Notion as your number one productivity tool
mfonobong
4
520
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
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 ίʔυϨϏϡʔʹ͔͔Δ࣌ؒվળΛ͍͖͍ͯͨ͠ ·ͱΊ