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
メドピアで利用しているGemの話
Search
rakio1234
March 24, 2018
5
1.1k
メドピアで利用しているGemの話
RailsDevelopersMeedup 2018 day1
rakio1234
March 24, 2018
Tweet
Share
More Decks by rakio1234
See All by rakio1234
レガシーシステム・ビッグリライト
rakio1234
0
520
新しき管理画面gem Administrateの道と光
rakio1234
0
920
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
A designer walks into a library…
pauljervisheath
207
24k
It's Worth the Effort
3n
185
28k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Transcript
ϝυϐΞͰར༻͍ͯ͠Δ(FNͷ 3BJMT%FWFMPQFST.FFUVQ
w ా༤ଠ!SBLJP w ϝυϐΞגࣜձࣾ ሱ࠭ℚࢺ
ೝূ(FN
ೝূ(FNͱ͍͑%FWJTF
w ϩάΠϯը໘ɺϢʔβʔొը໘ɺύεϫʔυ࠶ൃߦ ը໘ͳͲΛૉૣ͘࡞ΕΔ w ϑϧελοΫա͗ͯΧελϚΠζ͕ͭΒ͍ w EFWJTFͷίʔυΛಡΜͰཧղͯ͠ΦʔόʔϥΠυ ͢ඞཁ͕͋Δ w ϝλϓϩͰ݁ߏॻ͔Ε͍ͯͯಡΈʹ͍͘
%FWJTF
ǷǟǪƸƊƒ4PSDFSZƵ০Ⴈ
w γϯϓϧͳઃܭ w MFTTJTNPSF w ඞཁͳػೳͷΈΛ͏ w ϝλϓϩ ࠇຐज़ Λ൱ఆ͍ͯ͠Δ
w EFWJTFʹྼΒͳ͍ػೳΛඋ͍͑ͯΔ 4PSDFSZ
4PSDFSZ w ࣗલͰ༻ҙͨ͠WJFXDPOUSPMMFSʹඞཁͳϝιου ͚ͩΛར༻͢Δ w ԿΛ͍ͯ͠Δ͔໌֬Ͱ͋ΓΧελϚΠζ͍͢͠
4PSDFSZ 6TFS"DUJWBUJPO ϝʔϧʹΑΔೝূ 3FTFU1BTTXPSE ύεϫʔυϦηοτ 3FNFNCFS.F ӬଓϩάΠϯ 4FTTJPO5JNFPVU ηογϣϯλΠϜΞτ #SVUF'PSDF1SPUFDUJPO
ϒϧʔτϑΥʔεରࡦ #BTJD)551"VUIFOUJDBUJPO #"4*$ೝূ "DUJWJUZ-PHHJOH ϩάΠϯϩά &YUFSOBM 4/4ϩάΠϯ w EFWJTFʹ͋Δػೳ͍͍ͩͨཏ͍ͯ͠Δ w ඞཁͳػೳTVCNPEVMFͱͯ͠ಡΈࠐΜͰར༻
w ޙʑͷΧελϚΠζͷ͢͠͞Λߟ͑ΔͱTPSDFSZ ͕Φεεϝ w ͔͠͠ɺෳNPEFMͷϩάΠϯ 6TFSϞσϧͰϢʔ βϩάΠϯɺ"ENJO6TFSͰཧը໘ϩάΠϯͳͲ ʹެࣜͰରԠͯ͠ͳ͍ͷͰҙ w IBDL͢ΕҰԠͰ͖Δ
4PSDFSZ
ೝՄ(FN
ೝՄ(FNͱ͍͑DBODBODBO
w ݖݶཧΛҰՕॴ "CJMJUZΫϥε ʹ·ͱΊΔ w DPOUSPMMFSWJFXͰݖݶͷϩδοΫΛॻ͔ͳ͘ ͯࡁΉ w ҰํͰΞϓϦέʔγϣϯ͕ංେԽ͍ͯ͘͠͝ͱ ʹ"CJMJUZΫϥεංେԽ͍ͯ͘͠
w DBO SFBE 1SPEVDUͱ͍ͬͨײ͡Ͱ%4-Ͱهड़ DBODBODBO
ϝυϐΞͰ#BOLFOΛར༻
w ݖݶཧΛMPZBMUZΫϥεʹ·ͱΊΔ w DPOUSPMMFS͝ͱʹ࡞ΓBDUJPO͝ͱʹݖݶΛఆٛ ͢Δ w 4USPOHQBSBNFUFSTͷఆٛՄೳ w QVOEJUϥΠΫͰγϯϓϧͳ"1*Λఏڙ w
%4-Ͱͳ͘ϐϡΞSVCZͰهड़ #BOLFO
#BOLFO w DPOUSPMMFSຖʹMPZBMUZΫϥεΛ ࡞ w BDUJPOຖʹݖݶϩδοΫΛఆٛ ͢Δ w DPOUSPMMFSଆͰBVUIPSJ[Fϝιο υΛݺͼग़ͯ͠ར༻
#BOLFO w ݖݶຖʹTUSPOHQBSBNFUFSͷఆ͕ٛՄೳ 03
1VOEJUƋƑŧ w QVOEJUೝՄΛNPEFMͷͱͯ͠CBOLFODPOUSPMMFSͷ ͱ͍ͯ͠Δ w QVOEJUͰҰͭͷNPEFMΛෳͷDPOUSPMMFSͰ͏έʔεͳ ͲͰIBDL͕ඞཁʹͳΔ w 1VOEJUͰ.PEFMຖʹ1PMJDZΫϥεΛ࡞Γɺ1PMJDZΫϥεʹ$POUSPMMFSͷ "DUJPOʹඥͮ͘ϝιου
BDUJPO Λ࣮͢ΔͨΊɺ1VOEJUΛ͏্Ͱ .PEFM 1PMJDZ $POUSPMMFSʹରରͱ͍͏੍͕҉తʹੜ·Ε·͢ɻ IUUQTHJUIVCDPNLZVEFOCBOLFOXJLJ5IFEJ⒎FSFODFCFUXFFO #BOLFOBOE1VOEJU +BQBOFTF w QVOEJUʹ͋ΔTDPQFػೳCBOLFOʹͳ͍ w NPEFMͰఆٛ͢Ε͍͍
w ͱͯγϯϓϧͰΧελϚΠζ͍͢͠ w DPOUSPMMFSͱରͰݖݶΫϥεΛ࡞ΔͷͰ໎͍͕ ͳ͍ w ίʔυଟ͘ͳΔ w %4-͕ͳ͍ͷͰ֮͑Δ͜ͱগͳ͍ #BOLFO
ܵ߂૫(FN
ܵ߂૫(FNƋŧūƓ"DUJWF"ENJO
w ߴػೳͳཧը໘ΛࣗಈੜͰ͖Δ w ݕࡧɺDTWग़ྗɺؔ࿈ςʔϒϧͷొ w େ͖͘ΧελϚΠζ͠Α͏ͱ͢ΔͱͭΒ͍ w %4-Ͱॻ͘ͷͭΒ͍ "DUJWF"ENJO
"DUJWF"ENJO
wͲ͏͍͏ڍಈΛ͢Δͷ͔Θ͔Βͳ͍ wυΩϡϝϯτιʔεͱʹΒΊͬ͜͠ͳ͕Βॻ͘͜ͱ ʹͳΓ͕ͪ wֶशίετ͕ߴ͍ wॳֶऀ͕ͱ͖ͬͭʹ͍͘ wܦݧऀ͠Β͘৮ͬͯͳ͍ͱΕΔͷͰ࠶ֶश͢Δ ඞཁ͕ൃੜ͕ͪ͠ wSBJMTSTQFDͷETM֮͑Δͷʹզʑਫ਼Ұഋ ɾԠ༻͕͖͖ʹ͍͘ %4-ůƍſƇƬŧƑŮĤ
ǷǟǪƸƊƒ"ENJOJTUSBUFƵ০Ⴈ
w UIPVHIUCPUࣾ w ߴػೳͳཧը໘Λࣗಈੜ w ΧελϚΠζ͕͍͢͠ w %4-Ͱͳ͘ϐϡΞSVCZͰهड़ "ENJOJTUSBUF
"ENJOJTUSBUF
"ENJOJTUSBUF w ཧը໘ͷఆٛϦιʔε໊ %BTICPBSEͷϑΝΠϧ ʹهड़͢ΔɻHFOFSBUFͯ͠࡞Δɻ
"ENJOJTUSBUF w "553*#65&@5:1&4ଐੑͱͦΕͧΕը໘ͰͲ͏දࣔ͢Δ͔Λ'JFME Ͱࢦఆ͢Δ w αϙʔτ͍ͯ͠ͳ͍'JFMEϓϥάΠϯͱͯ͠ಋೖ͢Δ͔ࣗ࡞͕Մೳ ఆٛͰ͖Δ'JFME w 'JFME#FMPOHT5P w
'JFME#PPMFBO w 'JFME%BUF5JNF w 'JFME&NBJM w 'JFME)BT.BOZ w 'JFME)BT0OF w 'JFME/VNCFS w 'JFME1PMZNPSQIJD w 'JFME4FMFDU w 'JFME4USJOH w 'JFME5FYU
"ENJOJTUSBUF w ͦͷଞͷIBTIͷఆҰཡɺ ৄࡉɺϑΥʔϜը໘Ͱଐੑ͝ ͱʹදࣔඇදࣔɺฒͼΛఆٛ ͢Δ w %4-ग़ͯ͜ͳ͍ͷͰॻ͖ ͍͢
"ENJOJTUSBUF w Ұ෦ΛΧελϚΠζ͍ͨ͠߹ w ྫWJFXʹϘλϯΛઃஔ͍ͨ͠ w WJFXΛHFOFSBUFͰ͖ΔͷͰͦͷ··ฤूՄೳ w ྫొͨ͠ࡍʹ௨ϝʔϧΛૹΔ w
HFOFSBUF͞ΕͨDPOUSPMMFSͰϝιουΛ PWFSSJEF w ࣗ࡞ͷը໘ΛΈࠐΈ͍ͨ w શ৽نͰ࡞ͬͨDPOUSPMMFSͱWJFXΛΈࠐΊΔ
w ͳΜ͔ͩΜͩͰHFNΛೖΕͳ͍Ͱࣗ࡞͢Δͷ͕Ұ ൪ΧελϚΠζ͘͢͠ޙʑͷ༥௨͕͖͘ w ͔͠͠ɺ͕ݶΒΕ͍ͯͨΓෳࡶͳը໘͕গͳ ͍߹ཧը໘HFNΛೖΕΔͷྑ͍ͱࢥ͏ w ೖΕΔͱͯ͠ΧελϚΠζ͍͢͠ํ͕͍͍ ཧը໘HFNΛೖΕΔ͖͔ʁ
w TPSDFSZɺCBOLFOɺBENJOJTUSBUF͓͢͢Ί w ޙʑͷΧελϚΠζͷ͢͠͞ɺֶशίετͳ Ͳߟྀͯ͠HFNΛબͿͷ͕Α͍ ơƋƤ
ŷ࣡䒙ťƭůƋũŷŹŧơźƂ