KeyFlow LogoKEYLOW
KeyFlow Logo
HomeTrendingSeries
Tools & Info
Tools & AppsAbout
Your Account
Reading History
@keyflow OfficialFeedback Discord
BETA v2v2026.08.17
Kotlin Coroutines Flow์˜ Cold/Hot flow(Stream)์˜ ๋ฐ์ดํ„ฐ ํ๋ฆ„(Data flow) ์ดํ•ดํ•ด ๋ณด๊ธฐ | Taehwan kwon (theo) | KeyFlow
KeyFlow LogoKEYLOW
BETA v2v2026.08.17
Kotlin Coroutines Flow์˜ Cold/Hot flow(Stream)์˜ ๋ฐ์ดํ„ฐ ํ๋ฆ„(Data flow) ์ดํ•ดํ•ด ๋ณด๊ธฐ

Kotlin Coroutines Flow์˜ Cold/Hot flow(Stream)์˜ ๋ฐ์ดํ„ฐ ํ๋ฆ„(Data flow) ์ดํ•ดํ•ด ๋ณด๊ธฐ

Taehwan kwon (theo)Taehwan kwon (theo)
Published almost 2 years ago
Updated 7 months ago
10 min read

๋‹จ์ˆœํžˆ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์„ ๋„˜์–ด, ๋ณต์žกํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์„ ์–ธ์ ์ธ ํ๋ฆ„์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” Coroutines Flow์˜ ์„ค๊ณ„ ๋น„๋ฐ€์„ ํŒŒํ—ค์ณ ๋ด…๋‹ˆ๋‹ค.

ยทCold Flow(์ˆ˜์ง‘ ์‹œ ์‹œ์ž‘)์™€ Hot Flow(๊ตฌ๋… ์—ฌ๋ถ€์™€ ๋ฌด๊ด€ํ•œ ํ๋ฆ„)์˜ ๋ช…ํ™•ํ•œ ๊ตฌ๋ถ„ ๋ฐ StateFlow/SharedFlow๋ฅผ ํ†ตํ•œ ์ตœ์ ์˜ ํ™œ์šฉ๋ฒ•
ยทStateFlow์˜ ์›์ž์„ฑ(Atomic) ๋ณด์žฅ์„ ํ†ตํ•œ Thread-safe ํŠน์„ฑ๊ณผ SharedFlow์˜ replay, buffer ์˜ต์…˜์„ ํ™œ์šฉํ•œ ์œ ์—ฐํ•œ ์ด๋ฒคํŠธ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•
ยทflatMapLatest ๋ฐ retryWhen ์—ฐ์‚ฐ์ž๋ฅผ ์กฐํ•ฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์•ก์…˜ ๋Œ€๊ธฐ์™€ ๋„คํŠธ์›Œํฌ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ฒฐํ•ฉํ•˜๋Š” ์‹ค๋ฌด ๋ฐ์ดํ„ฐ ํ๋ฆ„ ์„ค๊ณ„
์†์—” ๋งฅ์ฃผ, ์ผ์€ AI๊ฐ€! Agent Field Trip : Incheon
Promotion

์†์—” ๋งฅ์ฃผ, ์ผ์€ AI๊ฐ€! Agent Field Trip : Incheon

์ฐธ์—ฌ๋งŒ ํ•ด๋„ ์ฆ๊ฑฐ์›€์ด ๋‘ ๋ฐฐ! ๋‹น์‹ ์˜ ํ–‰์šด์„ ์‹œํ—˜ํ•˜๊ณ  ์ง€๊ธˆ ๋ฐ”๋กœ ์ค€๋น„๋œ ํŠน๊ธ‰ ๊ฒฝํ’ˆ๊ณผ ๊นœ์ง ๋‹น์ฒจ์˜ ์ฃผ์ธ๊ณต์ด ๋˜์–ด๋ณด์„ธ์š”.

by @taehwandev
Taehwan kwon (theo)

Taehwan kwon (theo)

@taehwandev

[์•ˆ๋…•ํ•˜์„ธ์š”, ํƒœํ™˜์ž…๋‹ˆ๋‹ค] ๊ธ€์“ฐ๊ธฐ ํ”Œ๋žซํผ KeyFlow์˜ ์šด์˜๊ณผ ๊ฐœ๋ฐœ์„ ์ด๊ด„ํ•˜๊ณ  ์žˆ๋Š” ํƒœํ™˜์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ƒ๊ฐ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ํ”Œ๋žซํผ์ธ ํ‚คํ”Œ๋กœ์šฐ ์ „์ฒด์˜ ๊ธฐํš๋ถ€ํ„ฐ ๋ฐฐํฌ, ๊ด€๋ฆฌ๋ฅผ ๋ฆฌ๋”ฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

[๊ฒฝํ—˜ ๋ฐ ์ „๋ฌธ์„ฑ]

  • KeyFlow Management: ์„œ๋น„์Šค์˜ ์ „๋ฐ˜์ ์ธ ์šด์˜์„ ์ฑ…์ž„์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • Mobile Engineering: ์•ˆ๋“œ๋กœ์ด๋“œ์™€ iOS ํ”Œ๋žซํผ ๋ชจ๋‘์—์„œ ์•ˆ์ •์ ์ด๊ณ  ๋งค๋„๋Ÿฌ์šด ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ธฐ์˜ ํŠน์„ฑ์— ์ตœ์ ํ™”๋œ ์—๋””ํ„ฐ์™€ ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ฐ ๊ฐ•์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • Openness & Stability: ํ”Œ๋žซํผ์˜ ๊ฐœ๋ฐฉ์„ฑ์„ ํ™•๋Œ€ํ•˜๋ฉด์„œ๋„, ์‹œ์Šคํ…œ์˜ ์•ˆ์ •์„ฑ์„ ๋†“์น˜์ง€ ์•Š๋Š” ๊ท ํ˜• ์žกํžŒ ๊ฐœ๋ฐœ ์ฒ ํ•™์„ ์ถ”๊ตฌํ•ฉ๋‹ˆ๋‹ค.

[๋ชฉํ‘œ] ๋‹จ์ˆœํ•œ ๊ธฐ๋Šฅ ๊ตฌํ˜„์„ ๋„˜์–ด, ์ „ ์„ธ๊ณ„ ์‚ฌ์šฉ์ž๊ฐ€ ์–ธ์–ด์˜ ์žฅ๋ฒฝ ์—†์ด ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๋Š” ๊ธ€๋กœ๋ฒŒ ํ”Œ๋žซํผ์œผ๋กœ KeyFlow๋ฅผ ์„ฑ์žฅ์‹œํ‚ค๋Š” ๊ฒƒ์ด ์ €์˜ ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ์š”์•ฝ (Tech Summary)

  • Mobile: Android (Kotlin/Java), iOS (Swift)
  • Highlight: GitHub Gist Integration, AI Language Detection, Cross-platform Optimization
kotlin
data class User(  val name: String = "taehwan",  val bio: String = "Android, iOS",  val nickName: String = "Theo",)

Read Next

๐Ÿ˜ฑ 2025 ์•ˆ๋“œ๋กœ์ด๋“œ ํƒ๊ตฌ์˜์—ญ, Coroutines Flow ๋•Œ๋ฌธ์—?! (feat. ์‰ฌ์šด ํ•ด์„ค)
2024-12-22

๐Ÿ˜ฑ 2025 ์•ˆ๋“œ๋กœ์ด๋“œ ํƒ๊ตฌ์˜์—ญ, Coroutines Flow ๋•Œ๋ฌธ์—?! (feat. ์‰ฌ์šด ํ•ด์„ค)

taehwandev
taehwandev
์ฝ”ํ‹€๋ฆฐ ์ฝ”๋ฃจํ‹ด ๋ฆฌ์•กํ‹ฐ๋ธŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ฝ๊ณ 
2026-06-08

์ฝ”ํ‹€๋ฆฐ ์ฝ”๋ฃจํ‹ด ๋ฆฌ์•กํ‹ฐ๋ธŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ฝ๊ณ 

easyhooon
easyhooon
RxJava 2019-11-30

RxJava์™€ Coroutines์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์•Œ์•„๋ณด์ž.

taehwandev
taehwandev