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
mruby 入門
Search
Tatsushi Demachi
December 02, 2017
Programming
0
1.1k
mruby 入門
Tatsushi Demachi
December 02, 2017
Tweet
Share
More Decks by Tatsushi Demachi
See All by Tatsushi Demachi
How to write commit messsage
tatsushid
0
160
Other Decks in Programming
See All in Programming
自動で //nolint を挿入する取り組み / Gopher's Gathering
utgwkk
1
170
AWS Lambda functions with C# 用の Dev Container Template を作ってみた件
mappie_kochi
0
220
rails newと同時に型を書く
aki19035vc
6
750
[JAWS-UG横浜 #80] うわっ…今年のServerless アップデート、少なすぎ…?
maroon1st
0
150
Vue.jsでiOSアプリを作る方法
hal_spidernight
0
120
CNCF Project の作者が考えている OSS の運営
utam0k
5
620
Оптимизируем производительность блока Казначейство
lamodatech
0
990
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
2.4k
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.6k
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
190
SRE、開発、QAが協業して挑んだリリースプロセス改革@SRE Kaigi 2025
nealle
1
3.3k
AWS re:Invent 2024個人的まとめ
satoshi256kbyte
0
150
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Producing Creativity
orderedlist
PRO
343
39k
Unsuck your backbone
ammeep
669
57k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
380
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
What's in a price? How to price your products and services
michaelherold
244
12k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Writing Fast Ruby
sferik
628
61k
Code Reviewing Like a Champion
maltzj
521
39k
Transcript
*OUSPEVDUJPOUP NSVCZ ͳ͕ͷ3VCZͷձCZ!UBUTVTIJ@E
8IP w Ͱ·ͪͨͭ͠ 5XJUUFS!UBUTVTIJ@E w ΠϯϑϥʢαʔόɺωοτϫʔΫͳͲʣ w ࠷ۙͬͺΒ(P͍
8IBU`TNSVCZ w 3VCZͷܰྔ࣮ʢ*40ఆٛͷ෦࣮ʣ w จ๏3VCZޓ w ओʹΞϓϦέʔγϣϯࠐΈ༻్ʹ։ൃ w Ϗϧυ࣌ʹඞཁͳݴޠػೳͷΈΛࠐΈ w
ৄࡉIUUQTHJUIVCDPNNSVCZNSVCZࢀর
8IFSFJTJUVTFE w OHY@NSVCZʢOHJOYͷ֦ுϞδϡʔϧʣ w OHJOYͷઃఆɺ֦ுΛ3VCZจ๏Ͱॻ͚Δ w )0ʢ)551αʔόʣ w αʔόͷ੍ޚΛ3VCZจ๏Ͱॻ͚Δ w
NJUBNBFʢߏཧπʔϧ*UBNBFNSVCZ൛ʣ w ୯ҰόΠφϦͷίϚϯυϥΠϯπʔϧ w 3VCZ%4-Ͱॻ͔ΕͨߏఆٛΛॲཧՄೳ
)PXUPJOTUBMM
3FRVJSFNFOU w $$PNQJMFS w -JOLFS w "SDIJWFS w -JC$MJCSBSJFTBOEIFBEFST w
#JTPO w 3VCZ
#VJME w HJUDMPOFIUUQTHJUIVCDPNNSVCZ NSVCZHJU w DENSVCZ w NJOJSBLF
#JOBSJFT w NJSCʢJSC૬ʣ w NSCDʢNSVCZ7.όΠτίʔυίϯύΠϥʣ w NSVCZʢSVCZ૬ʣ w NSVCZTUSJQʢ%FCVHηΫγϣϯআπʔϧʣ w
NSECʢσόοΨʣ
-JCSBSJFT w MJCNSVCZ@DPSFB TSDҎԼͱύʔαͷΈΛؚΉίΞϥΠϒϥϦ w MJCNSVCZB NSCMJC NSCHFNؚΉNSVCZϥΠϒϥϦ
%FNP DPNQJMF SVONJSCBOE NSVCZ
#VJMEDPOpHVSBUJPO w ϏϧυઃఆCVJME@DPOpHSCϑΝΠϧͰࢦఆ w .36#:@$0/'*(ڥมͰCVJME@DPOpHSC ͷύεΛࢦఆ
#VJMEDPOpHTFDUJPO w 5PPMDIBJO w $DPNQJMFS w -JOLFS w "SDIJWFS w
1BSTFS(FOFSBUPS w NSCHFNT w FUDʜ
NSCHFN w NSVCZʹ͓͚Δ֦ுػߏ w $ BOEPS 3VCZͰॻ͘͜ͱ͕Ͱ͖Δ w NSVCZ࣮ߦܥ MJCNSVCZB
ʹࠐ·ΕΔ w NSVCZίΞػೳͷҰ෦࣮NSCHFN
)PXUPVTFNSCHFN w CVJME@DPOpHSCͰࢦఆ w (FN#PYͰࢦఆ w ར༻͍ͨ͠NSCHFNͷఆٛΛ·ͱΊ͓͚ͯΔ Έ w CVJME@DPOpHSCͰݺͼग़ͯ͠ར༻͢Δ
NSCHFNSFGFSFODFUZQF w NSCHFNࢀরઌԼهͷछྨ͕͋Δ w ϑΝΠϧύε w ϦϞʔτ(JUϦϙδτϦ w (JUIVC w
#JUCVDLFU w NHFN w NHFNMJTU IUUQTHJUIVCDPNNSVCZNHFNMJTU ʹ·ͱΊ ΒΕ͍ͯΔNSCHFN
NSCHFNTUSVDUVSF GEM_NAME <- Name of GEM !"" include <- Header
for Ruby extension !"" mrblib <- Source for Ruby extension !"" src <- Source for C extension !"" test <- Test code (Ruby) !"" mrbgem.rake <- GEM specification #"" README.md <- Readme for GEM
NSCHFNSBLF w NSCHFNͷఆٛϑΝΠϧ w MJDFOTF w BVUIPS w TVNNBSZ w
WFSTJPO w ґଘؔ w FUDʜ
&YBNQMF 3VCZPOMZ
$FYUFOTJPO w NSCHFNʹɺԼهͷೋͭͷ͕ؔඞཁ w NSC@(&./".&@HFN@JOJU NSC@TUBUF w ҰൠతʹϞδϡʔϧɺΫϥεɺϝιουͳͲͷఆٛ Λߦ͏
w NSC@(&./".&@HFN@pOBM NSC@TUBUF w NSVCZ֎͔ΒׂΓͯͨϝϞϦͳͲͷཧͳͲΛ ߦ͏
&YBNQMF $ 3VCZIZCSJE
$PODMVTJPO w $ 3VCZͰ༰қʹϥϯλΠϜ͕֦ுՄೳ w ΞϓϦέʔγϣϯͷ෦ߏΛదʹެ։͢Ε ɺNSVCZ͔Βࣗ༝ʹ੍ޚՄೳ w ϥϯλΠϜʹࠐ·ΕΔͷͰɺ୯ҰόΠφϦ ԽՄೳ
3FGFSFODFT.BUFSJBMT w IUUQTHJUIVCDPNNSVCZNSVCZ w IUUQTHJUIVCDPNNSVCZNSVCZCMPC NBTUFSEPDHVJEFTDPNQJMFNE w IUUQTHJUIVCDPNNSVCZNSVCZCMPC NBTUFSEPDHVJEFTNSCHFNTNE w
IUUQTHJUIVCDPNUBUTVTIJEOBSVCZ NSVCZFYBNQMF