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
Ruby之道——让Ruby更简单
Search
Alex
November 30, 2015
Programming
3
210
Ruby之道——让Ruby更简单
Elixir缘道会线下活动第二期主题
Alex
November 30, 2015
Tweet
Share
More Decks by Alex
See All by Alex
《Ruby原理剖析》二三事
zhanghandong
2
270
Ruby & Gem & Ecosystem
zhanghandong
0
95
Ruby Test (TDD/BDD)
zhanghandong
0
220
Ruby Standard Lib
zhanghandong
0
100
Ruby Exception
zhanghandong
0
110
Ruby Thread
zhanghandong
3
140
Duck Typing in Ruby
zhanghandong
2
670
Other Decks in Programming
See All in Programming
パスキーのすべて ── 導入・UX設計・実装の紹介 / 20250213 パスキー開発者の集い
kuralab
3
880
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
140
技術を改善し続ける
gumioji
0
120
PHPカンファレンス名古屋2025 タスク分解の試行錯誤〜レビュー負荷を下げるために〜
soichi
1
670
Honoとフロントエンドの 型安全性について
yodaka
7
1.4k
自力でTTSモデルを作った話
zgock999
0
100
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
200
Kotlinの開発でも AIをいい感じに使いたい / Making the Most of AI in Kotlin Development
kohii00
5
1.1k
CDK開発におけるコーディング規約の運用
yamanashi_ren01
2
250
AIの力でお手軽Chrome拡張機能作り
taiseiue
0
190
sappoRo.R #12 初心者セッション
kosugitti
0
270
Jakarta EE meets AI
ivargrimstad
0
300
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
74
9.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Six Lessons from altMBA
skipperchong
27
3.6k
Visualization
eitanlees
146
15k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
How STYLIGHT went responsive
nonsquared
98
5.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
250
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
How GitHub (no longer) Works
holman
314
140k
Side Projects
sachag
452
42k
Transcript
Ruby ԏ᭲ ——ᦏRubyๅᓌܔ ୟӳ
ԟԏ᭲ / ߺ᯾ҁwhy҂ /ฎՋԍҁwhat/how҂ / کߺ᯾݄ҁWill҂ ߽ҁכਞ҂ӣᳯ
ਭᥤRuby / ߺ᯾ҁwhy҂ • MatzๅىဳአߺᐿᖫᑕๅளԔ • ໑ഝർਫ਼ਧෙᏝկ౮տ᩼᩼֗ • ᖫᑕଫᧆᥴ٬ጱḒᥝᳯ᷌ฎݎපሲ •
֛ሿጱฎՈᔄᘍጱᨶ҅ଫᧆฎՈԆਵᦇᓒ҅ ᘒᶋݍᬦ
ਭᥤRuby / ߺ᯾ҁwhy҂ • ᭌೠԧᶎݻ • ᓌ၄/ ಘ/ ᑞਧ
ਭᥤRuby / ฎՋԍҁwhat/ how҂ • ၾ௳ • Duck Typing •
Mix-inਫሿग़ᖀಥ • lispᮎفԧblock
ਭᥤRuby / ฎՋԍҁwhat/ how҂ ၾ௳
ਭᥤRuby / ฎՋԍҁwhat/ how҂ ၾ௳ object.message ളතᘏ ၾ௳ Ruby๋໐ஞጱཛྷࣳ
ਭᥤRuby / ฎՋԍҁwhat/ how҂ ၾ௳ object.message ളතᘏ ၾ௳ ᬯ੪ฎRuby๋໐ஞጱཛྷࣳҘ
ਭᥤRuby / ฎՋԍҁwhat/ how҂ ၾ௳ Ӟڔጲ҅ጲํဩ
ਭᥤRuby / ฎՋԍҁwhat/ how҂ ၾ௳/ Ӟڔጲ҅ጲํဩ object class Class
ਭᥤRuby / ฎՋԍҁwhat/ how҂ ၾ௳/ Ӟڔጲ҅ጲํဩ send msg respond result
Ԕᥡఘ٭ send msg Ҙ ఓᥡఘ٭ҁय़ग़හ҂
ਭᥤRuby / ฎՋԍҁwhat/ how҂ ၾ௳/ Ӟڔጲ҅ጲํဩ class1 superclass2 Module Module
Module singlton_class singlton_class
ਭᥤRuby / ฎՋԍҁwhat/ how҂ ොဩਧԎ/ /ොဩই֜ਧԎ /ၾ௳ݎᭆߥଫጱොୗ (හഝ॒ቘ) /ොဩࣁߺਧԎ •
def • define_method • method_missing • const_missing • send • ᳮ۱ҁeval/bind̵lambda/proc҂ • block • ݍ • class_eval • module_eval • instance_eval • class << self • self • include • extend • open class(monkey patch)
ਭᥤRuby / ฎՋԍҁwhat/ how҂ DSLᐏֺ/ Jbuilder json.author do json.name "David"
json.age 32 end
ਭᥤRuby / کߺ݄ҁwill҂ Ruby3.0/ ᚆ೮ᖅ܋x3 ग़໐ҁ݄ᴻGIL̵multi vm҂ pipeline
ਭᥤRuby / ᦎᦞғ᪙elixirጱྲ Rubyࣘ/ 10.times do |n| puts n end
ਭᥤRuby / ᦎᦞғ᪙elixirጱྲ Elixirਡ/