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
290
Ruby & Gem & Ecosystem
zhanghandong
0
100
Ruby Test (TDD/BDD)
zhanghandong
0
230
Ruby Standard Lib
zhanghandong
0
110
Ruby Exception
zhanghandong
0
110
Ruby Thread
zhanghandong
3
150
Duck Typing in Ruby
zhanghandong
2
680
Other Decks in Programming
See All in Programming
技術懸念に立ち向かい 法改正を穏便に乗り切った話
pop_cashew
0
1.4k
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
110
「兵法」から見る質とスピード
ickx
0
260
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
220
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
1
530
Create a website using Spatial Web
akkeylab
0
280
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
650
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
200
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
130
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
760
社内での開発コミュニティ活動とモジュラーモノリス標準化事例のご紹介/xPalette and Introduction of Modular monolith standardization
m4maruyama
1
120
Passkeys for Java Developers
ynojima
3
850
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Practical Orchestrator
shlominoach
188
11k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
43
2.4k
Optimizing for Happiness
mojombo
379
70k
Done Done
chrislema
184
16k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Faster Mobile Websites
deanohume
307
31k
The Pragmatic Product Professional
lauravandoore
35
6.7k
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ਡ/