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
オブジェクトしこう
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Masafumi Okura
March 24, 2024
Programming
790
2
Share
オブジェクトしこう
タイトルがやりたかっただけ。
https://ooc.connpass.com/event/305241/
Masafumi Okura
March 24, 2024
More Decks by Masafumi Okura
See All by Masafumi Okura
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
140
Developing static sites with Ruby
okuramasafumi
1
410
Why doesn't Ruby have Boolean class - final version
okuramasafumi
0
390
Reading Rails 1.0 Source Code
okuramasafumi
0
360
RDoc meets YARD
okuramasafumi
4
220
Why doesn't Ruby have Boolean class?
okuramasafumi
0
44
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
100
Writing documentation can be fun with plugin system
okuramasafumi
0
260
Alba: Why, How and What's So Interesting
okuramasafumi
0
500
Other Decks in Programming
See All in Programming
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
260
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
320
モダンOBSプラグイン開発
umireon
0
190
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
210
Ruby and LLM Ecosystem 2nd
koic
1
1.4k
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
270
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
200
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
730
Claude Code Skill入門
mayahoney
0
450
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
720
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
3
2.6k
Featured
See All Featured
A Soul's Torment
seathinner
5
2.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
The Limits of Empathy - UXLibs8
cassininazir
1
280
Optimizing for Happiness
mojombo
378
71k
How to Think Like a Performance Engineer
csswizardry
28
2.5k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.5k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
140
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
190
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Are puppies a ranking factor?
jonoalderson
1
3.2k
Transcript
ΦϒδΣΫτ͜͠͏ Object-Oriented Conference 2024 OKURA Masafumi, 2024-03-24
ࣗݾհ • ໊લɿେխ࢙ • ॴଐɿϑϦʔϥϯε • ಘҙݴޠɿRubyʢΦϒδΣΫτࢦεΫϦϓτݴޠʣ • ΤσΟλɿNeovim •
՝֎׆ಈɿKaigi on RailsνʔϑΦʔΨφΠβʔɺOSS׆ಈɺ֤छొஃ ʢEurukoɺσϒαϛɺBuriKaigiͳͲʣ
None
͜͠͏
ʮࢼߦʯࡨޡ
ᅂ
ΦϒδΣΫτᅂ Object-Oriented Conference 2024 OKURA Masafumi, 2024-03-24
͓
͖ͳ ΦϒδΣΫτ
nil
͑ɺnilʁ • RubyͰnilNilClassͷΠϯελϯε • nil͕ΦϒδΣΫτͩͱϝιου͕ݺͯศར • ྫ͑to_sͰจࣈྻʹͨ͠ΓͰ͖Δ • ؾΛൈ͍ͯNoMethodErrorʹͳΔͷ͍͍ͩͨ͜Ε
͖ͳΫϥε
UnboundMethod Ϋϥε
͑ɺϝιουʁ • RubyͰϝιουΫϥεʢMethodΫϥεʣ • ϝιουͦͷͷ͍ΘΏΔୈҰڃΦϒδΣΫτͰͳ͍ʢͦͷ༻్ ʹϒϩοΫΛ͏ʣ͕ɺΦϒδΣΫτԽ؆୯ʹͰ͖Δ • UnboundMethodΫϥεΠϯελϯε͔ΒΓ͞ΕͨϝιουΛ දݱ͢ΔΫϥε •
ͦͷ··ͰcallͰ͖ͳ͍ͷͰɺbind͢Δඞཁ͕͋Δ
ࣗ༝ͳ ϓϩάϥϛϯάʂ
ݴޠͷॏཁੑ
ݴޠ͕ࢥߟΛنఆ͢Δ • ਓݴޠ͕ఏڙ͢ΔͷதͰࢥߟ͢Δ • ͦΕ͕ݴޠͷׂͷҰͭͰ͋Δ • ͍ͬͯΔݴޠͷΈ͕ϦονͩͱɺࢥߟϦονʹͳΔ • ݴޠʹଉۤ͠͞Λײͨ͡Βҧ͏ݴޠΛࢼͯ͠ΈΔͷΞϦ͔
ΦϒδΣΫτࢥߟ
ΦϒδΣΫτࢥߟ Object-Oriented Conference 2024 OKURA Masafumi, 2024-03-24