Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
RDoc meets YARD
Search
Masafumi Okura
August 28, 2025
Programming
310
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RDoc meets YARD
https://rubyassociation.doorkeeper.jp/events/184561
Masafumi Okura
August 28, 2025
More Decks by Masafumi Okura
See All by Masafumi Okura
Kaigi on Rails past, present and the future
okuramasafumi
0
22
Ruby for complete beginners
okuramasafumi
1
300
Conference as a communication hub for all of us
okuramasafumi
0
200
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
200
Developing static sites with Ruby
okuramasafumi
1
490
Why doesn't Ruby have Boolean class - final version
okuramasafumi
0
450
Reading Rails 1.0 Source Code
okuramasafumi
0
410
Why doesn't Ruby have Boolean class?
okuramasafumi
0
90
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
130
Other Decks in Programming
See All in Programming
Kotlinの15年とServer-Side Kotlin
n_takehata
1
190
Python Lambdaにおけるテストしやすい設計とAI支援の活用 / Designing Testable Python Lambda Functions with AI
kitano_yuichi
1
280
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
400
Spec-driven Development with AI
simas
PRO
0
2.2k
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
220
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
190
クラウドゲーミングのパフォーマンス最適化に挑む / Cloud Gaming Performance Tuning
vivion
0
320
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
250
Optunaを作ったときにやりたかったこと、その後 (2026/10/16, Optuna Meetup #3)
iwiwi
4
1.4k
Groovy as a human and AI friendly programming language
paulk
0
170
Spec-Driven Development - Why Vaadin Is the Perfect Fit
simas
PRO
0
210
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
2.1k
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
430
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
Deep Space Network (abreviated)
tonyrice
0
400
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.7k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
610
The Limits of Empathy - UXLibs8
cassininazir
2
760
We Are The Robots
honzajavorek
0
420
Google's AI Overviews - The New Search
badams
0
1.6k
Writing Fast Ruby
sferik
630
63k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Transcript
RDoc meets YARD - RDocͷ YARDղੳػೳͷΈࠐΈ Ruby Association Activity Report
OKURA Masafumi, 2025-08-28
pritty_print(self) • ໊લɿେխ࢙ʢ͓͓͘Β·͞;Έʣ • ॴଐɿϑϦʔϥϯε • ׆ಈɿKaigi on RailsʢൃىਓɺνʔϑΦʔΨφΠβʔʣɺOSS׆ಈ ʢAlbaͳͲʣɺొஃʢRubyConfTw
2025, Rails World 2025, Friendly.rbͳͲʣ • ͖ͳϝιουɿ`BasicObject#instance_eval`
RDoc meets YARD
RDoc meets YARD
RDocͱ • Rubyʹඪ४ఴ͞Ε͍ͯΔʢผ్ͷΠϯετʔϧ͕ෆཁͳʣυΩϡϝ ϯςʔγϣϯπʔϧ • HTMLυΩϡϝϯτΛੜ͢Δ`rdoc`ίϚϯυͱίϚϯυϥΠϯ͔Β υΩϡϝϯτΛӾཡ͢Δ`ri`πʔϧΛಉࠝ • Ruby on
RailsͰ࠾༻͞Ε͍ͯΔଞɺRubyຊମͷυΩϡϝϯτRDoc ه๏Ͱॻ͔Ε͍ͯΔ
None
RDoc meets YARD
YARDͱ • gemͷυΩϡϝϯςʔγϣϯͳͲʹ͘ΘΕ͍ͯΔυΩϡϝϯςʔ γϣϯπʔϧ • ඪ४Ͱͳ͍ͷͰผ్Πϯετʔϧ͕ඞཁ • `@param`ͳͲΛͬͨه๏Ͱ͋Γɺಠࣗͷܕهड़Մೳ • RDocύʔε͢Δ͜ͱ͕Ͱ͖Δ
• ݸਓతʹYARDΛ͏͜ͱ͕ଟ͍
None
πʔϧͷஅ
None
2023
ࣗ࡞ υΩϡϝϯςʔ γϣϯπʔϧ
ͦͷ࣌Ͱͷ͓͓͘Βͷߟ͑ • υΩϡϝϯτΛॻ͘ͷָ͘͠ͳ͍ • طଘͷυΩϡϝϯςʔγϣϯπʔϧʹ͕͋Δ • RDocYARDϝϯςφϯεঢ়گ͕ྑ͘ͳ͍ʢ࠷৽ͷRubyͷจ๏ ʹରԠ͠Ε͍ͯͳ͍ͳͲʣ • ৭ʑͱΞΠσΞ͕͋ΔʢRSpec͔ΒυΩϡϝϯτ࡞Εͳ͍ʁͱ͔ʣ
• ৽͍͠υΩϡϝϯςʔγϣϯπʔϧΛ࡞ͬͯશ෦౷߹ͩʂ
Γ͍ͨ͜ͱɿ πʔϧͷ౷߹ͱɺ ػೳͷՃ
2024 RubyKaigi 2024
Stan Lo (st0012) “৽͍͠υΩϡϝϯςʔγϣϯπʔ ϧΛࣗͰ࡞ΔΑΓɺRDocΛϝϯ ςφϯε͢ΕɺͲ͏ͬͯͬͯ Β͏͔Λߟ͑Δඞཁ͕ͳ͘ͳΔ ͠ɺπʔϧ͕৽͘͠૿͑Δ͚ͩʹ ͳΒͳ͍”
https://xkcd.com/927/ CC BY-NC 2.5
…͍
ʮπʔϧͷ౷߹ RDocΛத৺ʹ͠ ͯߦ͓͏ʯ
YARDͱʢ࠶ܝʣ • gemͷυΩϡϝϯςʔγϣϯͳͲʹ͘ΘΕ͍ͯΔυΩϡϝϯςʔ γϣϯπʔϧ • ඪ४Ͱͳ͍ͷͰผ్Πϯετʔϧ͕ඞཁ • `@param`ͳͲΛͬͨه๏Ͱ͋Γɺಠࣗͷܕهड़Մೳ • RDocύʔε͢Δ͜ͱ͕Ͱ͖Δ
• ݸਓతʹYARDΛ͏͜ͱ͕ଟ͍
YARDͰ ͍͍ͷͰʁ
RDoc > YARD
ͳͥRDocͳͷ͔ • ඪ४ఴ͞Ε͍ͯΔͷͰผ్ͷΠϯετʔϧͳͲ͕ෆཁ • RDocͳ͘ͳΔ͜ͱͳ͍ • CRubyͷιʔείʔυͷυΩϡϝϯτΛղऍͰ͖ΔͷRDocͷΈ • YARDͷϝϯςφϯεঢ়گ͕ෆ҆ •
େ͖Ίͷվળ࠷ۙগͳ͍͠ɺϝϯςφϯεجຊݸਓ͕͍ͯ͠ Δ
20249݄ ϓϩδΣΫτ࠾
None
֦ுػೳج൫
ϓϩδΣΫτॳͷߟ͑ • ։ൃऀʹΑͬͯυΩϡϝϯςʔγϣϯπʔϧʹඞཁͱ͢Δػೳҟͳ Δͱ͍͏Ծઆ • ༷ʑͳχʔζʹର֦ͯ͠ுػೳج൫Λ࡞Δ͜ͱͰରԠ • কདྷతʹ༷ʑͳ֦ுػೳΛ࣮͢Δ༧ఆ • YARDܗࣜͷίϝϯτΛυΩϡϝϯτʹม͢Δػೳ֦ுػೳͷ
Ұͭͱ࣮͍ͯͨ͠͠
՝ɿ ֦ுػೳج൫ͷ ΠϯλʔϑΣʔε
https://github.com/ ruby/rdoc/ discussions/1257 Proposal: RDoc extension system ࣌ߟ͍͑ͯͨ͜ͱΛࡶʹॻ͍ͨ σΟεΧογϣϯ
ϝϯλʔͷ ਢ౻͞Μͱ ૬ஊ
֦ுػೳಉ࢜Λ ૄ݁߹ʹ͍ͨ͠
ॳͷΞΠσΞ • RDocຊମ͕֤λΠϛϯάͰΠϕϯτΛൃՐ • ֦ுػೳΠϕϯτΛड͚औΓॲཧΛ͢Δ • PubSubͬΆ͍Έ
https://github.com/ ruby/rdoc/pull/ 1321 Πϕϯτۦಈ֦ுػೳج൫ͷ࣮ɺ ۩ମతͳ֦ுػೳͱͯ͠؆қతͳ YARDύʔαʔ࣮
େࣦഊ
ࢲ͕ͯ͠͠·ࣦͬͨഊ • RDocϝϯςφͷ࣮ࡍͷχʔζݒ೦ʹԠ͍͑ͯͳ͍ • ֦ுػೳج൫ͷίϯηϓτͱ͔͘ɺΠϯλʔϑΣʔεҰܾ ΊΔͱมߋ͕ࠔͳͷͰɺܰʑܾ͘͠ఆͰ͖ͳ͍ • ࣮ࡍͷ֦ுػೳΛઌʹ࡞͔ͬͯͦ͜ΒΠϯλʔϑΣʔεΛܾΊ͍ͨ • ͷલͷΛղܾͰ͖ͳ͍
• ֦ுػೳج൫ԕճΓʹͳΔ
Ͳ͏͢ΕΑ͔͔ͬͨ • ઌʹYARDରԠΛ୯ମͰΔ͖ͩͬͨ • ͔ͦ͜ΒݟΛநग़Ͱ͖Δ • ͬͱૣΊʹಈ͖ͩͬͨ͘ • ؾ͍ͮͨͱ͖ʹ2025ͷ3݄ •
ϓϩδΣΫτ΄΅ऴΘΓͷ࣌ظ
None
20254݄
RDocͷϝϯςφ ͱ૬ஊ͢Δ
RubyKaigi 2025 ίʔυ࠙ձ
@ktou @st0012 @vinistock
͜ͷͱ͖ͨ͜͠ͱ • ֦ுػೳج൫Ͳ͏͢Δʁ • YARDରԠΛͲ͏ਐΊΔʁ
https://github.com/ ruby/rdoc/issues/ 1344 վΊͯRDocͱͯ͠΄͍͠ͷΛ· ͱΊͨ͠issue
͜ͷissueͰܾ·ͬͨํ • ֦ுػೳج൫Ұ୴์غ͢Δ • ·͍͔ͣͭ͘ͷYARDλάΛઌߦ࣮ͯ͢͠Δ • ΓͷλάઌʹRDocଆͷػೳΛՃ͢Δඞཁ͕͋ΔͨΊ • ܕʹؔͯ͠RBSͷαϙʔτΛ༏ઌ͢Δ •
YARDͷಠࣗه๏αϙʔτ͞Εͳ͍Մೳੑ͋Δ
YARD࣮ͷํ • rdoc gemyard gemʹґଘͰ͖ͳ͍ • YARDλάͷύʔεखॻ͖ • RDocʹtomdocͱ͍͏ϑΥʔϚοτΛαϙʔτ͢ΔͨΊͷΈ͕ ͋ΔͷͰɺྲྀ༻Ͱ͖Δ͔
2025-08-26
https://github.com/ ruby/rdoc/pull/ 1416 `@yield`, `@private`, `@api private`Λ ࣮͠ɺRDocͷಉػೳͰ͋Δ͔ ͷΑ͏ʹৼΔ͏Α͏ʹͨ͠ ֦ுੑಛஈߟྀͤͣɺҰ൪͍࣮
Λબ CI͕௨ͬͨʢࠓʣ
ࠓޙͷ՝ͱ Γ͍ͨ͜ͱ
RDocͰΓ͍ͨ͜ͱ • YARDରԠΛͤ͞Δ • yard gemΛΘͳ͍ͰYARDܗࣜͷίϝϯτ͔ΒHTMLυΩϡϝϯ τΛੜͰ͖Δঢ়ଶʹ͢Δ • ଞͷυΩϡϝϯςʔγϣϯπʔϧ͔Βྑ͍ॴΛநग़͢Δ •
Sphinx, TypeDoc, RustDoc, Docusaurus, etc. • ಛʹdoctestRubyίϛϡχςΟʹड͚ೖΕΒΕΔͷ͔ڵຯ͋Γ
None
ಛʹClaude Code ʢ20254݄ʣ
ΕΔ͜ͱ͕ ૿͑ͨ…ʁ
ੜAI͕ॿ͚ʹͳΓͦ͏ͳ͜ͱ • ཏతͳςετεΠʔτͷ࡞ • ෳࡶͳطଘίʔυͷಡղิॿ • ଞͷπʔϧͷௐࠪ
ँࣙ
ϝϯλʔͷਢ౻͞Μ RubyΞιγΤʔγϣϯͷօ༷
͋Γ͕ͱ͏͍͟͝ ·ͨ͠ʂʂʂʂʂ
ࠓޙRDocʹ औΓΜͰ ͍͖·͢