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
DSLについて語るときに僕の語ること
Search
Tomohiro Nishimura
June 01, 2014
Technology
8
3.1k
DSLについて語るときに僕の語ること
Rubyが社会に浸透したいまだからこそDSLについてもう一度考えてみた
Tomohiro Nishimura
June 01, 2014
Tweet
Share
More Decks by Tomohiro Nishimura
See All by Tomohiro Nishimura
レガシーシステム洗い出し大作戦
sixeight
0
1.5k
我々のRealmはどこからやってくるのか
sixeight
1
380
まだ見ぬAPIに思いを馳せて
sixeight
0
120
復習OptionSet
sixeight
0
250
今年読んだまんが
sixeight
0
220
べんりな検索ワード
sixeight
0
230
Readable Width in action
sixeight
0
160
UIPreviewInteraction: Overview
sixeight
1
610
Accessing the Music Library
sixeight
1
2.7k
Other Decks in Technology
See All in Technology
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
540
【Snowflake九州ユーザー会#2】BigQueryとSnowflakeを比較してそれぞれの良し悪しを掴む / BigQuery vs Snowflake: Pros & Cons
civitaspo
2
660
Global Databaseで実現するマルチリージョン自動切替とBlue/Greenデプロイ
j2yano
0
160
Охота на косуль у древних
ashapiro
0
130
プルリクエストレビューを終わらせるためのチーム体制 / The Team for Completing Pull Request Reviews
nekonenene
3
1.2k
AI自体のOps 〜LLMアプリの運用、AWSサービスとOSSの使い分け〜
minorun365
PRO
9
1.1k
OPENLOGI Company Profile
hr01
0
60k
User Story Mapping + Inclusive Team
kawaguti
PRO
2
380
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.9k
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
200
生成AI×財務経理:PoCで挑むSlack AI Bot開発と現場巻き込みのリアル
pohdccoe
1
810
[OpsJAWS Meetup33 AIOps] Amazon Bedrockガードレールで守る安全なAI運用
akiratameto
1
140
Featured
See All Featured
Music & Morning Musume
bryan
46
6.4k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Side Projects
sachag
452
42k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Adopting Sorbet at Scale
ufuk
75
9.2k
The Invisible Side of Design
smashingmag
299
50k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Git: the NoSQL Database
bkeepers
PRO
428
65k
GitHub's CSS Performance
jonrohan
1030
460k
A Modern Web Designer's Workflow
chriscoyier
693
190k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Transcript
%4-ʹ͍ͭͯޠΔͱ͖ ʹͷޠΔ͜ͱ !4JYFJHIU ୈճ3VCZ3BJMTษڧձ!ؔ
·ͱΊ w ͍·͞Βײ͕͋;ΕΔ w %4-Ͱޮ61 w %4-͜Θ͘ͳ͍ w Γ͗͢Δͱବ
None
!4JYFJHIU IUUQTHJUIVCDPN4JYFJHIU
!UPNPIJ@SP IUUQTUXJUUFSDPNUPNPIJ@SP
ଜ༑༟ ʹ͠ΉΒͱͻΖ
ͦͷଞ w )BQQZ&MFNFOUTגࣜձࣾ ژ w 3BJMT 3VCZ 6OJUZ $
w יγϟϘϯۄͷձ w 7JNˠ"UPN w 'SBHNFOU
ͦͷଞ w )BQQZ&MFNFOUTגࣜձࣾ ژ w 3BJMT 3VCZ 6OJUZ $
w יγϟϘϯۄͷձ w 7JNˠ"UPN w 'SBHNFOU
None
*OTUBHSBN .FYUVSFT 5BOHTUFO 'SBHNFOU -PSZ4USJQFT IUUQQJYJUFBQQTDPN
͖ͭͮϒϩάͰ IUUQTJYFJHIUIBUFOBCMPHDPN <յ͠·ͨ͠>λάͰҎ֎ຖߋ৽
ຊ
%4-
%PNBJO 4QFDJpD -BOHVBHF
–ΟΩϖσΟΞ lυϝΠϯݻ༗ݴޠʢυϝΠϯ͜Ώ͏͛Μ͝ɺ ӳEPNBJOTQFDJpDMBOHVBHFɺ%4-ʣ ͱɺಛఆͷλεΫ͚ʹઃܭ͞Εͨίϯϐϡʔ λݴޠΛҙຯ͢Δɻz
ྫ͑3BLF
EFTD*OTUBMMCJOBSJFT UBTLJOTUBMMEP DQ'JMF-JTU<CJO > VTSMPDBMCJO FOE
ར w ͬͱ؆୯ͳํ๏Ͱهड़Ͱ͖Δ w ग़དྷΔ͜ͱ͕ݶఆ͞Ε͍ͯΔ͕Ώ͑ʹ҆શ w ίʔυࣗମ͕υΩϡϝϯτͱͯ͠ͷׂΛ Ռͨ͢͜ͱ͕ଟ͍ ಛఆͷʹಛԽ͍ͯ͠Δ͔Βɺ w
w w w w w w w w w w w w w
ܽ w ֶशίετ͕ߴ͍ w Ԡ༻͕ޮ͔ͳ͍ w ͷൣғΛܾΊΔͷ͕͘͠ɺಛԽͰ͖ ͳ͍͜ͱ͕ଟ͍ ಛఆͷʹಛԽ͍ͯ͠Δ͔Βɺ w
w w w w w w w w w w w w w
֎෦ʁ෦ʁ
֎෦%4- ΠϯλϓϦλΛ࡞ΔΑ͏ͳͷ શ͕ͯࣗ࡞ͷ%*:ਫ਼ਆʹ͋;ΕΔ%4-
෦%4- ผͷݴޠͷߏจΛͬͯɺ ͳΜ͔ผͷݴޠͬΆ͍ײ͡ʹ͢Δ
ͨͱ͑3VCZͰ ෦%4-Λ࡞Εɺ ΜΓͳߏจϥΠ ϒϥϦ͕͍์
࣮ྫ
"DUJWF"ENJO ͳΜ͔͍͍ײ͡Ͱཧը໘࡞ͬͯ͘ΕΔͭ
ΨνϟΛ࡞Δ%4- ΞϧόΠτͰՃͰ͖ΔΑ͏ʹ࠷ݶ͔͠ॻ͚ͳ͍ ϏδωεͷӨڹ͕େ͖͍ͨΊ෦ΛӅณ͢Δͷॏཁ
"1*Λఆٛ͢Δ%4- αʔόʔ 3VCZ ଆɺΫϥΠΞϯτ $ ଆɺυΩϡϝϯτΛࣗಈੜ ͢Δɻ௨৴ෆཁͷϞοΫ࡞͠ɺόʔδϣϯʹରԠɻΜΓɻ
͡ɺࣗ࡞ʜʁ
ͳͥ࡞Δͷ͔ w %4-ʹ͢Δͱςϯγϣϯ্͕͕Δ͔Β w ษڧձͰࣗຫͰ͖Δ͔Β w ͦ͜ʹ͕͋Δ SZ
རΛࢥ͍ग़ͦ͏
ར w ͬͱ؆୯ͳํ๏Ͱهड़Ͱ͖Δ w ग़དྷΔ͜ͱ͕ݶఆ͞Ε͍ͯΔ͕Ώ͑ʹ҆શ w ίʔυࣗମ͕υΩϡϝϯτͱͯ͠ͷׂΛ Ռͨ͢͜ͱ͕ଟ͍ ಛఆͷʹಛԽ͍ͯ͠Δ͔Βɺ w
w w w w w w w w w w w w w
ͳͥ࡞Δͷ͔ w ΊΜͲ͏ͳۀΛ୯७Խ ؆୯ w ୭͕ͬͯಉ݁͡Ռ ҆શ w
ಡΈ͘͢આ໌͕ෆཁ υΩϡϝϯτ
ΊΜͲ͏ͳۀΛ ୯७Խ ৽͍͠ΨνϟΛՃ͢Δͷʹ.JHSBUJPOϑΝΠϧΛ࡞ͬͯ σʔλΛՃͯ͠ɺ$POUSPMMFSͱ7JFXΛίϐϖͯ͠ʜ ઃఆϑΝΠϧ %4- Λهड़ ؆୯
୭͕ͬͯಉ݁͡Ռ ΞϧόΠτʹΨνϟͷՃΛཔΜͩΒɺϑολʔͷϦϯΫ͕Ҏલͷ Ψνϟͷͷʹͳ͍ͬͯͯϨΞͷৄࡉΛݟΔ͜ͱ͕ग़དྷͳ͔ͬͨ ઃఆϑΝΠϧ %4- ຊʹඞཁͳ͜ͱ͔͠هड़͠ͳ͘ ͯΑ͍ͷͰɺؒҧ͑ʹ͍͘͠ɺؒҧ͍ʹؾ͖͍ͮ͢ ҆શ
୭͕ͬͯಉ݁͡Ռ ΞϧόΠτʹΨνϟͷՃΛཔΜͩΒɺϑολʔͷϦϯΫ͕Ҏલͷ Ψνϟͷͷʹͳ͍ͬͯͯϨΞͷৄࡉΛݟΔ͜ͱ͕ग़དྷͳ͔ͬͨ ઃఆϑΝΠϧ %4- ຊʹඞཁͳ͜ͱ͔͠هड़͠ͳ͘ ͯΑ͍ͷͰɺؒҧ͑ʹ͍͘͠ɺؒҧ͍ʹؾ͖͍ͮ͢ ҆શ ϨϏϡʔ͠Α͏ͱ͍ ͏ͷ·ͨผͷ
ಡΈ͘͢આ໌͕ෆཁ ৽ਓͷਓʹΨνϟͷՃํ๏Λઆ໌͍ͯͨ͠Β͓ன͝Μͷ࣌ؒ ʹͳ͍ͬͯͯɺ͖ͬͯͨΒ͏Ұڭ͑ͯ΄͍͠ͱݴΘΕΔ ઃఆϑΝΠϧ %4- ΛಡΊ͍͍͔ͩͨΔ ίϐϖͰ0, υΩϡϝϯτ
ͳͥࠓ͞Β ܒ͢Δͷ͔
3VCZ͕ࣄͰΘΕΔΑ͏ ʹͳͬͯٱ͍͠ࠓ͔ͩΒͦ͜ %4-ͰۀΛޮԽ͠Α͏
ࠓ͔ͩΒͦ͜ʜʁ w ࣄͰ3VCZΛ͏͜ͱ͕ී௨ʹͳͬͨ w ใࢀߟʹͳΔίʔυ͋;Ε͍ͯΔ w ۀքΛϦʔυ স ͢Δ͋ͷ্࢘ʹ3VCZ Ͱ%4-Ͱ%0͢Δͱݴ͑௨Γͦ͢͏
ൃද༰ʹࠔͬͯओுΛ፻ ͨ͠ɻࠓল͍ͯ͠Δɻ
·ͱΊ w ͍·͞Βײ͕͋;ΕΔ w %4-Ͱޮ61 w %4-͜Θ͘ͳ͍ w Γ͗͢Δͱବ
ઌिಉ͡Α͏ͳίʔυ ॻ͖·ͤΜͰ͔ͨ͠
ͦΕ%4-ͰͰ͖ΔΑ
ҙ ྫΊͬͪΌదͰ͢
ຖͷΑ͏ʹࣅͨΑ͏ͳ ϝιουΛॻ͍͍ͯΔ
એݴܥ%4- ͦΜͳ͋ͳͨʹɺ
ͭΒ͍ݱ࣮ ਓؒͷ͢Δ͜ͱ͡Όͳ͍
ΜΓͳਅ࣮ ͦ͏ɺ%4-ͳΒͶ
એݴܥ%4-
ຖಉ͡खॱΛ ॻ͍͍ͯΔ
ૢ࡞ܥ%4- ͦΜͳ͋ͳͨʹɺ
ͭΒ͍ݱ࣮ Τϥʔ͕ى͖Δॴͯ͢ʹίϐϖ
ΜΓͳਅ࣮ ͦ͏ɺ%4-ͳΒͶ
ૢ࡞ܥ%4-
ΫϥεͷΠϯελϯεΛ ΈཱͯΔͷʹۤ࿑͍ͯ͠Δ
ઃఆܥ%4- ͦΜͳ͋ͳͨʹɺ
ͭΒ͍ݱ࣮ ΊΜͲ͏ͩ͠ಡΈʹ͍͘
ΜΓͳਅ࣮ ͦ͏ɺ%4-ͳΒͶ
ઃఆܥ%4-
SPVUFTSCฤूͯ͠ɺ $POUSPMMFS࡞ͬͯʜ
ఆٛܥ%4- ͦΜͳ͋ͳͨʹɺ
ͭΒ͍ݱ࣮ ͋ΕΛͬͯ͜ΕΛͬͯ
ΜΓͳਅ࣮ ͦ͏ɺ%4-ͳΒͶ
ఆٛܥ%4-
ΜΓ
·ͱΊ w ͍·͞Βײ͕͋;ΕΔ w %4-Ͱޮ61 w %4-͜Θ͘ͳ͍ w Γ͗͢Δͱବ
Ͱ͓ߴ͍ΜͰ͠ΐ ։ൃίετ͕
None
࡞ͬͯΈ·͠ΐ͏
એݴܥ%4-
એݴܥ%4- ͨͩͷΫϥεϝιου
ΦϨΦϨBUUS@BDDFTTPS ंྠͷ࠶ൃ໌͔ΒಘΒΕΔݟ͋Δ
Γ͍ͨ͜ͱ ΠϯελϯεมΛ HFUTFU͢ΔϝιουΛ ͍͍ײ͡Ͱఆٛͯ͘͠ΕΔ NZ@BUUS@BDDFTTPS ͱ͍͏ΫϥεϝιουΛ ఆٛ͢Δ͜ͱ
aಥવͷࠇຐज़ ಀ͛ͪΌବͩɺಀ͛ͪΌବͩɺಀ͛ͪΌବͩ
EFpOF@NFUIPE OBNF NFUIPE EFpOF@NFUIPE OBNF \ʜ^ OBNFͱ͍͏໊લͷϝιουΛఆٛ͢Δ
aಥવͷࠇຐज़ ಀ͛ͪΌବͩɺಀ͛ͪΌବͩ
JOTUBODF@WBSJBCMF@HFU WBS JOTUBODF@WBSJBCMF@TFU WBS WBMVF WBSͱ͍͏໊લͷΠϯελϯεมΛHFUTFU ໊લl!IPHFzͰ͋Δඞཁ͕͋Δ
aಥવͷࠇຐज़ ಀ͛ͪΌବͩ
એݴܥͰ͚ͬ͜͏͏ ΜΓ
ૢ࡞ܥ%4-
ૢ࡞ܥ%4- ϝιουΓग़͠
ͳΜ͔;ͭ͏ ͨͩͷϝιουݺͼग़͠ͳͷʹઐ༻ͷ໋ྩʹݟ͑Δ
໊લॏཁ ݟ͚ͨͩͰ͔Δϝιου໊ʹ͠Α͏ ͜ͷΜ
ઃఆܥ%4-
ઃఆܥ%4- ೖ
DPOpHIPHFlQJZPz
Α͘ݟΔͭ ͍·͔Β͜ͷΫϥεΛઃఆ͢ΔΜͩ ͱ͍͏ͷ͕ྑ͘ΘͬͯΑ͍
ͨͿΜ͜Μͳײ͡ ͕͖͔Θ͍͍
ఆٛܥ%4-
ఆٛܥ%4- JOTUBODF@FWBM
JOTUBODF@FWBM\cPCKcʜ^ ϒϩοΫͷTFMGΛϨγʔόʔʹஔ͖͑Δ ͬ͘͟Γݴ͏ͱ
Ոʹ͍ΔೣΛཧ͍ͨ͠ ͍͍ྫ͕ු͔ͳ͔ͬͨ
దͳ࣮ Ͱ͍͍ͩͨ͜Μͳײ͡Ͱॻ͖·͢
͜ͷ$BUΫϥεΛ࡞Γ·͢ ϒϩοΫͷதͰݺΔϝιου $BUͷΠϯελϯεϝιου
͕͜͜ຊମ DBUJOTUBODF@FWBM͕શͯ
ϑΝΠϧ͔ΒಡΈࠐΊͦΕͬΆ͍ จࣈྻͳͷͰJOTUBODF@FWBM͢Δʜ
͜͏͍͏ͷͲ͏͢Δͷ NFUIPE@NJTTJOHͰʜ ϗϫΠτϦετΛ࡞ͬͯVOEFG@NFUIPE͓ͯ͘͠ͱΔ
None
ͷ߹
खॱ w ΛΈ͚ͭΔ w ײతʹॻ͚Δ·ͰٖࣅίʔυΛॻ͘ w ٖࣅίʔυ ड͚ೖΕςετ ͕ಈ͘Α͏ʹ ࣮͢Δ
w ϢχοτςετΛॻ͘
ςετ w %4-͕όάͬͯͨΒͯΒΕͳ͍ w ͕ࣗ҆৺͢ΔͨΊʹॻ͘ w ࠇຐज़తͳίʔυΛॻ͘ͷͰ5%%͔ͤ w શʹಈ࡞͢Δ%4-Λड͚ೖΕςετͱ͢Δ
·ͱΊ w ͍·͞Βײ͕͋;ΕΔ w %4-Ͱޮ61 w %4-͜Θ͘ͳ͍ w Γ͗͢Δͱବ
%4-࡞ͬͯΈ͍ͨ ͍·͙͢࡞Ζ͏ʂ
ͪΐͬͱͬͯ
ܽΛࢥ͍ग़ͦ͏
ܽ w ֶशίετ͕ߴ͍ w Ԡ༻͕ޮ͔ͳ͍ w ͷൣғΛܾΊΔͷ͕͘͠ɺಛԽͰ͖ ͳ͍͜ͱ͕ଟ͍ ಛఆͷʹಛԽ͍ͯ͠Δ͔Βɺ w
w w w w w w w w w w w w w
ֶशίετ͕ߴ͍ ϓϩδΣΫτͷ͜͜%4-ɺ͋ͬͪ%4-ɻ ͜͜3BJMTͷ··Ͱॻ͘ɺ͜͜%4-ͩͬͨΘɻ ΜΓػೳ͕͍ͬͯΔਓʹ͔͠ΘΕͳ͍ɻ Ή͠Ζී௨ʹॻ͘͜ͱࠔͰϓϩδΣΫτԌ্ɻ
Ԡ༻͕ޮ͔ͳ͍ ͨ͘͞Μͷࣾ%4-ΛϚελʔͯࣾ͠ͰਆͱݺΕ ͯཔΒΕ͍ͯΔͷͰɺצҧ͍ͯ͠స৬ͯ͠Έͨɻ ࣮3BJMTͦΜͳʹॻ͚ͳ͔ͬͨͷͰ ͍͍ͭͯ͜͏ͱඞࢮʹͳΓա࿑ࢮ
ͷൣғ͕͍͋·͍ ΜΓͦ͏ͳ%4-Λ࡞ͬͨɻͬͪ͜%4-ʹͰ͖ͦ͏ ͳͷͰ࡞ͬͨɻ͋ͬͪɺͦͬͪɺ͜͜࡞ͬͱ͜͏ɻ ͋ͬͪͱͦͬͪͷ%4-ͷ༰͕ඍົʹඃͬͯͯ ͲͪΒʹॻ͚ྑ͍ͷ͔͔Βͳ͍
Կࣄ Γ͗͢Α͘ͳ͍
·ͱΊ w ͍·͞Βײ͕͋;ΕΔ w %4-Ͱޮ61 w %4-͜Θ͘ͳ͍ w Γ͗͢Δͱବ
ͳΜͩ͜Ε ͳΜͩ͜ͷΦϓγϣϯ
ݟͷڞ༗ w એݴܥ૬͕͢͡Α͘ͳ͍ͱഁ͢Δ w Α͘Θ͔ΒΜॻ͖ํ͕૿͑ͯࠞཚ͢Δ͚ͩ w ఆٛܥ໊લॏཁ w ֶशίετΛԼ͛Δʹڻ͖࠷খͷ๏ଇ w
υΩϡϝϯτඞਢ w %4-ͷ༷ॻ͍ͨຊਓ͔͠Βͳ͍ͱࢥ͑
·ͱΊ w ͍·͔ͩΒͦ͜ࣄͰ%4- w %4-ͰۀΛޮԽ w %4-؆୯ʹ࡞ΕΔ w ༻๏༻ྔΛΑ͘कΓ͓͍͍ͩ͘͞
l%4-ͱͯ͠Γग़ͤΔΛݟ͚ͭͨΒউͪz
͋Γ͕ͱ͏ ͍͟͝·ͨ͠