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
KDoc
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
scache
September 18, 2017
Technology
930
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
KDoc
Kotlinコードにドキュメントを書くためのKDocで使えるタグや記法について紹介
scache
September 18, 2017
More Decks by scache
See All by scache
ExoPlayerのトラック選択と再生中の解像度制限
sckm
0
230
Hyperion Item Nameplate
sckm
0
160
[紹介]Writing Your First Kotlin Compiler Plugin by Kevin Most
sckm
0
380
ChangeLogを読もう(1.2.70編)
sckm
1
420
3分でわかるSequence
sckm
1
740
Property + Getter
sckm
0
1.6k
略解reified
sckm
0
150
Other Decks in Technology
See All in Technology
[2026-09-11]SREは誰のもの?運用エンジニアが始める 「SRE領域への越境」とチームの進化の軌跡 〜Road to NEXT CRE
tosite
0
290
作品が生態系になった ─ Mini Tokyo 3D から世界へ
nagix
0
190
あけおめLINE 傾向とその対策
nasa9084
0
110
人間はどの意思決定を手放せるのか
kawasima
15
7.2k
AI時代、データエンジニアが一番おもろい
genshun9
0
650
Claude Code本って、 読む必要あるの?
oikon48
2
470
AIを活用するために決めた "やらないこと" - 価値に注目する / Not betting on AI
soudai
PRO
2
540
30座EKS, 180次升級淬煉的EKS Upgrade Skill 的歷程
eric8230
0
170
2026-09-11 【Snowflake World Tour Tokyo 2026】Snowflakeを起点に、AI Agentが自律稼働し続ける未来へ / Driving AI Agents with Snowflake
civitaspo
0
670
Goodbye ShellScript, Hello File-based App
shunsock
0
140
aws-iot-platform-architecture-use-cases.pdf
ma2shita
0
250
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
740
Featured
See All Featured
Discover your Explorer Soul
emna__ayadi
2
1.3k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
240
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Curious Case for Waylosing
cassininazir
1
510
Ruling the World: When Life Gets Gamed
codingconduct
0
330
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The untapped power of vector embeddings
frankvandijk
2
1.9k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
480
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Transcript
KDoc Ryo Sotoyama( @scal_ch )
About Me • ֎ࢁ ໆ (Ryo Sotoyama) • Twitter: @scal_ch
• AndroidΞϓϦ࡞ͬͯ·͢
KDoc • KotlinͷυΩϡϝϯτهड़༻ݴޠ • Javadocͱॻ͖ํࣅ͍ͯΔ
Summary, Detailed Description fun doc() {}
Summary, Detailed Description /** * ࠷ॳͷߦʹ֓ཁΛॻ͘ */ fun doc() {}
Summary, Detailed Description /** * ࠷ॳʹ֓ཁΛॻ͘ * * վߦͨ͠ޙʹৄࡉΛॻ͘ */
fun doc() {}
Link /** * ΫϥεͷϦϯΫ [android.app.Activity] */ fun doc() {}
Link import android.app.Activity /** * ActivityͷϦϯΫ [Activity] */ fun doc()
{}
Link import android.app.Activity /** * [ActivityͷϦϯΫ][Activity] */ fun doc() {}
Link import android.app.Activity /** * [ؔͷϦϯΫ][Activity.onCreate] */ fun doc() {}
Link /** * [github](https://github.com/sckm) */ fun doc() {}
Block Tags
Function fun doc() { ... }
Function /** * @param arg argʹ͍ͭͯ */ fun doc(arg: String)
{ ... }
Function /** * @param[arg] argʹ͍ͭͯ */ fun doc(arg: String) {
... }
Function /** * @param arg argʹ͍ͭͯ * @return Γʹ͍ͭͯ */
fun doc(arg: String): Int { ... }
Function /** * @param arg argʹ͍ͭͯ * @return Γʹ͍ͭͯ *
@receiver Ϩγʔόʹ͍ͭͯ */ fun String.doc(arg: String): Int { ... }
Function /** * @param T ܕύϥϝʔλT * @param arg argʹ͍ͭͯ
* @return Γʹ͍ͭͯ * @receiver Ϩγʔόʹ͍ͭͯ */ fun <T> T.doc(arg: String): Int { ... }
Function /** * @param T ܕύϥϝʔλT * @param arg argʹ͍ͭͯ
* @return Γʹ͍ͭͯ * @receiver Ϩγʔόʹ͍ͭͯ * @throws IllegalArgumentException ྫ֎ * @exception IllegalArgumentException ྫ֎ */ fun <T> T.doc(arg: String): Int { ... }
Function /** * @param T ܕύϥϝʔλT * @param arg argʹ͍ͭͯ
* @return Γʹ͍ͭͯ * @receiver Ϩγʔόʹ͍ͭͯ * @throws IllegalArgumentException ྫ֎ * @exception IllegalArgumentException ྫ֎ */ fun <T> T.doc(arg: String): Int { ... }
Class class Doc
Class /** * @constructor ϓϥΠϚϦίϯετϥΫ */ class Doc(val p: String)
Class /** * @constructor ϓϥΠϚϦίϯετϥΫ * @property p ϓϩύςΟp */
class Doc(val p: String)
Sample fun usage() { val s = "str" doc(s) }
/** * @sample usage */ fun doc(arg: String): Int { ... }
Sample fun usage() { val s = "str" doc(s) }
/** * @sample usage */ fun doc(arg: String): Int { ... }
Tags /** * @see android.app.Activity * @author scache * @since
1.0 * @suppress */ class BlockTags
Tags /** * @see android.app.Activity * @author scache * @since
1.0 * @suppress */ class BlockTags
Tags /** * @see android.app.Activity * @author scache * @since
1.0 * @suppress */ class BlockTags
Tags /** * @see android.app.Activity * @author scache * @since
1.0 * @suppress */ class BlockTags
• Javadocͱॻ͖ํ΄ͱΜͲಉ͡ • DokkaΛ͏ͱhtmlʹग़ྗՄೳ