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
KDoc
Search
scache
September 18, 2017
Technology
910
1
Share
KDoc
Kotlinコードにドキュメントを書くためのKDocで使えるタグや記法について紹介
scache
September 18, 2017
More Decks by scache
See All by scache
ExoPlayerのトラック選択と再生中の解像度制限
sckm
0
210
Hyperion Item Nameplate
sckm
0
160
[紹介]Writing Your First Kotlin Compiler Plugin by Kevin Most
sckm
0
370
ChangeLogを読もう(1.2.70編)
sckm
1
400
3分でわかるSequence
sckm
1
730
Property + Getter
sckm
0
1.5k
略解reified
sckm
0
140
Other Decks in Technology
See All in Technology
O'Reilly Infrastructure & Ops Superstream: Platform Engineering for Developers, Architects & the Rest of Us
syntasso
0
190
開発サイクルのボーダーレス化に伴う組織変革から学んだこと / Organizational Transformation Amid the Borderless Development Cycle
mii3king
0
110
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
100k
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
47k
なぜ、IAMロールのプリンシパルに*による部分マッチングが使えないのか? / 20260518-ssmjp-iam-role-principal
opelab
1
120
R&D 祭 2024 UE5で絵コンテ・作画の制作支援ツールをつくる話
olmdrd
PRO
0
170
"うちにはまだ早い"は本当? ─ 小さく始めるPlatform Engineering入門
harukasakihara
6
610
ESP32 IoTを動かしながらメモリ使用量を観測してみた話
zozotech
PRO
0
140
Redmine次期バージョン7.0の注目新機能解説 — UI/UX強化と連携強化を中心に
vividtone
1
140
20260516_SecJAWS_Days
takuyay0ne
2
430
そのSLO 99.9%、本当に必要ですか? 〜優先度付きSLOによる責任共有の設計思想〜 / Is that 99.9% SLO really necessary? Design philosophy of shared responsibility through prioritized SLOs
vtryo
0
770
続 運用改善、不都合な真実 〜 物理制約のない運用改善はほとんど無価値 / 20260518-ssmjp-kaizen-no-value-without-physical-constraints
opelab
2
230
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
130
A Tale of Four Properties
chriscoyier
163
24k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
200
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Context Engineering - Making Every Token Count
addyosmani
9
880
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Facilitating Awesome Meetings
lara
57
6.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
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ʹग़ྗՄೳ