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
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
760
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
560
Amazon Bedrock Multi Agentsを試してきた
tm2
1
290
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
120
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
0
210
CI改善もDatadogとともに
taumu
0
120
Grafana Cloudとソラカメ
devoc
0
170
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
570
『品質』という言葉が嫌いな理由
korimu
0
160
AIの力でお手軽Chrome拡張機能作り
taiseiue
0
170
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
2
480
楽しく向き合う例外対応
okutsu
0
150
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Bash Introduction
62gerente
611
210k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Raft: Consensus for Rubyists
vanstee
137
6.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Producing Creativity
orderedlist
PRO
344
39k
Embracing the Ebb and Flow
colly
84
4.6k
Designing Experiences People Love
moore
140
23k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
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ਡ/