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
ナレッジイネイブリングにAIを活用してみる ゆるSRE勉強会 #9
nealle
0
160
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
120
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1.2k
SwiftUI Viewの責務分離
elmetal
PRO
2
280
Unity Android XR入門
sakutama_11
0
180
機能が複雑化しても 頼りになる FactoryBotの話
tamikof
1
210
iOSでQRコード生成奮闘記
ktcryomm
2
110
負債になりにくいCSSをデザイナとつくるには?
fsubal
10
2.6k
Kotlinの開発でも AIをいい感じに使いたい / Making the Most of AI in Kotlin Development
kohii00
5
1.4k
Domain-Driven Design (Tutorial)
hschwentner
13
22k
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
14
4.7k
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
110
Featured
See All Featured
Bash Introduction
62gerente
611
210k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Language of Interfaces
destraynor
156
24k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Rails Girls Zürich Keynote
gr2m
94
13k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
A Tale of Four Properties
chriscoyier
158
23k
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ਡ/