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
1.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
mruby 入門
Tatsushi Demachi
December 02, 2017
More Decks by Tatsushi Demachi
See All by Tatsushi Demachi
How to write commit messsage
tatsushid
0
190
Other Decks in Programming
See All in Programming
「AI時代、配布するPythonコードをどう守るか: 難読化の実験と判断軸」 #PyconJP2026
pkshadeck
PRO
2
140
AIエージェント時代のコードレビューを設計する
nogu66
5
2.4k
typoなんかねぇよ
raspython3
0
660
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
960
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
1
440
Oxlintはいいぞ(続)
yug1224
1
540
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
200
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.9k
T3DD26: From RAGs to Riches
martinhelmich
0
140
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
4.3k
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
420
信頼性の目標を誰も求めてない
shubox
0
480
Featured
See All Featured
WENDY [Excerpt]
tessaabrams
12
39k
Music & Morning Musume
bryan
47
7.4k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
860
How to build a perfect <img>
jonoalderson
1
5.9k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.7k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
760
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
920
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
250
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.8k
A better future with KSS
kneath
240
18k
So, you think you're a good person
axbom
PRO
2
2.1k
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