ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

ํ›„๊ธฐ

2024 ๋ฒค์ฒ˜์Šคํƒ€ํŠธ์—… SW๊ฐœ๋ฐœ์ธ์žฌ ๋งค์นญ ํŽ˜์Šคํ‹ฐ๋ฒŒ ์ฐธ์—ฌ ํ›„๊ธฐ

๊ตญ๋ฏผ ์ทจ์—… ์ง€์› ์ œ๋„ ์ƒ๋‹ด์‚ฌ ๋‹˜์˜ ์ถ”์ฒœ์œผ๋กœ ๋ฒค์ฒ˜์Šคํƒ€ํŠธ์—… SW๊ฐœ๋ฐœ์ธ์žฌ ๋งค์นญ ํŽ˜์Šคํ‹ฐ๋ฒŒ์— ์ฐธ์—ฌํ–ˆ๋‹ค.์‚ฌ์ „์— ํ™ˆํŽ˜์ด์ง€์—์„œ ์›ํ•˜๋Š” ๊ธฐ์—…์— ๋ฉด์ ‘ ๋˜๋Š” ์ƒ๋‹ด ์‹ ์ฒญ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. https://sw.kova.or.kr/fair/ 2024 ๋ฒค์ฒ˜์Šคํƒ€ํŠธ์—… SW๊ฐœ๋ฐœ์ธ์žฌ ๋งค์นญ ํŽ˜์Šคํ‹ฐ๋ฒŒ2024 ๋ฒค์ฒ˜์Šคํƒ€ํŠธ์—… SW๊ฐœ๋ฐœ์ธ์žฌ ๋งค์นญ ํŽ˜์Šคํ‹ฐ๋ฒŒ ์ •๋ณด์ œ๊ณต ์›น์‚ฌ์ดํŠธsw.kova.or.kr ์‹œ์„ค ์ปดํ“จํ„ฐ์™€ ํ”„๋ฆฐํ„ฐ๊ฐ€ 4 ~ 5๋Œ€ ์ •๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ง‘์— ํ”„๋ฆฐํ„ฐ๊ฐ€ ์—†๋‹ค๋ฉด ํ˜„์žฅ์—์„œ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค.ํ…Œ์ด๋ธ” ๊ณต๊ฐ„์€ 1:1 ํ˜„์ง์ž ๋ฉ˜ํ† ๋ง๊ด€ ์•ž์—์„œ ๋Œ€๊ธฐํ•˜๋Š” ์ž‘์€ ์›ํ˜• ํ…Œ์ด๋ธ”์ด ์œ ์ผํ•˜๋‹ค. ๋…ธํŠธ๋ถ์„ ์ด์šฉํ•œ ์ž‘์—…์ด ํ•„์š”ํ•˜๋ฉด ์ธ๊ทผ ์ฝ”์—‘์Šค๋ชฐ ์นดํŽ˜ ๋“ฑ์„ ์ด์šฉํ•ด์•ผ ํ•œ๋‹ค.ํšŒ์‚ฌ ๋ถ€์Šค ์˜†์—์„œ ๋ฌด๋Œ€ ํ–‰์‚ฌ๋ฅผ ์ง„ํ–‰ํ•˜๋Š”๋ฐ, ๋งˆ์ดํฌ ์†Œ๋ฆฌ์™€ ์šฐํผ ์šธ๋ฆผ์ด ํฌ๊ธฐ ๋•Œ๋ฌธ์— ๋ฉด์ ‘ ๊ณผ์ •์—์„œ ๋ง์†Œ๋ฆฌ๊ฐ€ ..

2024.10.29 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

์„ค์ •

ํฌ๋กฌ ๋ฉ€ํ‹ฐ ํ”„๋กœํ•„ ์‚ฌ์šฉ ์‹œ, ๊ธฐ๋ณธ ํ”„๋กœํ•„๋กœ ๋ฐ”๋กœ ์—ฌ๋Š” ๋ฐฉ๋ฒ•

ํฌ๋กฌ ๋ฉ€ํ‹ฐ ํ”„๋กœํ•„์„ ์ด์šฉํ•  ๋•Œ ์•„๋ž˜์™€ ๊ฐ™์€ ๋ถˆํŽธํ•œ ์ ๋“ค์ด ์žˆ๋‹ค. 1. ์‹œ์ž‘ ์‹œ ํ‘œ์‹œ๋ฅผ ํ•ด์ œํ•ด๋„ ๋งค๋ฒˆ ํ”„๋กœํ•„์„ ์„ ํƒํ•˜๋Š” ์ฐฝ์ด ๋œฌ๋‹ค.2. ๊ธฐ๋ณธ ํ”„๋กœํ•„์ด ์•„๋‹Œ ํ”„๋กœํ•„์˜ ํฌ๋กฌ ์ฐฝ์ด ๋งˆ์ง€๋ง‰์œผ๋กœ focus๋ฅผ ๊ฐ€์กŒ์„ ๋•Œ, ๊ธฐ๋ณธ ํ”„๋กœํ•„ ์•„์ด์ฝ˜์œผ๋กœ ์‹คํ–‰ํ•ด๋„ ๋งˆ์ง€๋ง‰์œผ๋กœ focus๋ฅผ ๊ฐ€์กŒ๋˜ ํ”„๋กœํ•„์˜ ํฌ๋กฌ ์ฐฝ์ด ์—ด๋ฆฐ๋‹ค. ์ด ๋ฌธ์ œ๋Š” ๋ฐ”๋กœ๊ฐ€๊ธฐ ์†์„ฑ ๊ฐ’์„ ์ˆ˜์ •ํ•จ์œผ๋กœ์จ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ์ž‘์—… ํ‘œ์‹œ์ค„์˜ ๊ธฐ๋ณธ ํ”„๋กœํ•„ ํฌ๋กฌ ์•„์ด์ฝ˜์„ ์˜ค๋ฅธ์ชฝ ํด๋ฆญํ•˜๋ฉด ๋‚˜์˜ค๋Š” Google Chrome์„ ๋‹ค์‹œ ํ•œ ๋ฒˆ ์˜ค๋ฅธ์ชฝ ํด๋ฆญํ•œ ํ›„ ์†์„ฑ์„ ๋ˆ„๋ฅธ๋‹ค.   ๋Œ€์ƒ(T) ๋’ค์— ์•„๋ž˜ ๊ฐ’์„ ์ถ”๊ฐ€ํ•œ ํ›„ ํ™•์ธ์„ ๋ˆ„๋ฅธ๋‹ค. --profile-directory="Default"   ๊ทธ๋Ÿฌ๋ฉด ์„ค์ •ํ•œ ๋ฐ”๋กœ๊ฐ€๊ธฐ๋ฅผ ํด๋ฆญํ•  ๋•Œ๋งˆ๋‹ค ํ•ญ์ƒ ๊ธฐ๋ณธ ํ”„๋กœํ•„๋กœ ํฌ๋กฌ ์ฐฝ์ด ์—ด๋ฆฌ๊ฒŒ ๋œ๋‹ค.

2024.10.29 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

์„ค์ •

๊ตฌ๊ธ€ URL ๋’ค์— gl ๋งํฌ ์—†์• ๋Š” ๋ฐฉ๋ฒ•

๊ณต์‹ ๋ฌธ์„œ๋ฅผ ํƒ์ƒ‰ํ•˜๋‹ค ๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์ฃผ์†Œ ๋’ค์— ๊ธด ๋ฌธ์ž์—ด์ด ์ถ”๊ฐ€๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. https://developer.android.com/guide/fragments/create?_gl=1*1lj4tdk*_up*MQ..*_ga*NDE0NjIxMDc5LjE3MTQ2MTkwNDM.*_ga_6HH9YJMN9M*MTcxNDYxOTA0Mi4xLjAuMTcxNDYxOTA0Mi4wLjAuMA..&hl=ko ํ”„๋ž˜๊ทธ๋จผํŠธ ๋งŒ๋“ค๊ธฐ  |  Android Developersํ”„๋ž˜๊ทธ๋จผํŠธ ๋งŒ๋“ค๊ธฐ ์ปฌ๋ ‰์…˜์„ ์‚ฌ์šฉํ•ด ์ •๋ฆฌํ•˜๊ธฐ ๋‚ด ํ™˜๊ฒฝ์„ค์ •์„ ๊ธฐ์ค€์œผ๋กœ ์ฝ˜ํ…์ธ ๋ฅผ ์ €์žฅํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜์„ธ์š”. ํ”„๋ž˜๊ทธ๋จผํŠธ๋Š” ํ™œ๋™ ๋‚ด์—์„œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค์˜ ๋ชจ๋“ˆ์‹ ๋ถ€๋ถ„์„ ๋งํ•ฉ๋‹ˆ๋‹ค. ํ”„๋ž˜๊ทธ๋จผํŠธ๋Š”developer.android.com ์ด ๊ฐ’์€ ์‚ฌ์šฉ์ž์˜ ํ–‰๋™ ํŒจํ„ด์„ ๋ถ„์„ํ•˜๊ธฐ ..

2024.10.29 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

ํ›„๊ธฐ

์ฟ ํŒก, ํ† ์Šค, ์นด์นด์˜ค ๋ชจ๋นŒ๋ฆฌํ‹ฐ ์„œ๋ฅ˜ ํƒˆ๋ฝ + ํƒˆ๋ฝํ•œ ์ด๋ ฅ์„œ ๋ณต๊ธฐํ•ด๋ณด๊ธฐ

์ตœ๊ทผ์— ์ง€์›ํ•œ ์„ธ ํšŒ์‚ฌ์—์„œ ๋ชจ๋‘ ํƒˆ๋ฝํ–ˆ๋‹ค. ์ฟ ํŒก : ์„œ๋ฅ˜ ํƒˆ๋ฝํ† ์Šค : ์„œ๋ฅ˜ ํƒˆ๋ฝ์นด์นด์˜ค ๋ชจ๋นŒ๋ฆฌํ‹ฐ : ์ฝ”๋”ฉํ…Œ์ŠคํŠธ 1์ฐจ ํƒˆ๋ฝ ์นด์นด์˜ค ๋ชจ๋นŒ๋ฆฌํ‹ฐ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ๋Š” ๋ฆฌํŠธ์ฝ”๋“œ ๋ฏธ๋””์—„ ์‰ฌ์›€ ~ ๋ณดํ†ต ์ˆ˜์ค€์œผ๋กœ ๋‚˜์™”๊ณ , ์–ด๋ ค์›€ ์—†์ด ํ’€์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์„œ๋ฅ˜์—์„œ ํƒˆ๋ฝํ•œ ๊ฒƒ์œผ๋กœ ์ถ”์ธก๋œ๋‹ค.ใ…กใ…กใ…กใ…กใ…กใ…ก๋ฌธ์ œ๋ฅผ ๋‹ค์‹œ ๋ณต๊ธฐํ•ด๋ณด๋‹ˆ, ์•ž์„œ ๊ณ„์‚ฐํ•œ ๊ฐ’์„ ์ €์žฅํ•ด์„œ ๋ฐ˜๋ณต๋œ ๊ณ„์‚ฐ์„ ํ”ผํ•ด์•ผ ํ–ˆ๋Š”๋ฐ ๊ทธ๋Ÿฌ์ง€ ๋ชปํ•ด์„œ ์‹œ๊ฐ„์ดˆ๊ณผ๋กœ ํ‹€๋ฆฐ ๊ฒƒ ๊ฐ™๋‹ค.์•ž์œผ๋กœ์˜ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ ์•„๋ž˜ ๋‚ด์šฉ์„ ๊ผญ ์ˆ˜ํ–‰ํ•ด์•ผ๊ฒ ๋‹ค. 1. ํ˜„์žฌ ์ž‘์„ฑํ•œ ์ฝ”๋“œ์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ์˜ˆ์ธกํ•œ๋‹ค.2. ์ž…๋ ฅ์˜ ์ตœ๋Œ€ ๊ธธ์ด, ์ตœ์†Œ ๊ธธ์ด, ์ตœ๋Œ“๊ฐ’, ์ตœ์†Ÿ๊ฐ’๋“ฑ์„ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋กœ ๋งŒ๋“ค์–ด ์„ฑ๊ณต, ์‹คํŒจ, ์‹œ๊ฐ„ ์ดˆ๊ณผ ๋“ฑ์„ ๊ฒ€์ฆํ•œ๋‹ค.-> ์™ธ๋ถ€ IDE ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๊ณ  ์ตœ๋Œ€ ๊ธธ์ด๊ฐ€ ๋งค์šฐ ํฌ๋‹ค๋ฉด, ์›น ๋‚ด์—์„œ ์ตœ๋Œ€ ๊ธธ์ด ์ž…๋ ฅ ๊ฐ’..

2024.10.08 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

ํ•™์Šต

deprecated๋œ firebase dynamic link ์—†์ด Firebase email link authentication ๊ตฌํ˜„ํ•˜๊ธฐ - 2

์ด์ „ ๊ธ€https://dodobest.tistory.com/120 deprecated๋œ firebase dynamic link ์—†์ด Firebase email link authentication ๊ตฌํ˜„ํ•˜๊ธฐ - 12025๋…„ 8์›” 25์ผ๋ถ€ํ„ฐ Firebase dynamic Link(FDL)๊ฐ€ deprecated ๋˜์–ด ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. Deprecation ๋ฌธ์„œ์— ๋”ฐ๋ฅด๋ฉด ์‹ ๊ทœ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์ž๋Š” FDL์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ณ , Firebase email link authentication์— ํ•œํ•ด์„œ ๊ณ ๊ฐ์„ผdodobest.tistory.com  ์ด์ „ ๊ธ€์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ์ด๋ฉ”์ผ๋กœ ์ธ์ฆ ๋ฉ”์ผ์„ ๋ฐœ์†กํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ์ธ์ฆ ๋ฉ”์ผ์˜ ํ™•์ธ ์—ฌ๋ถ€๋ฅผ ๊ด€์ฐฐํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.Android Kotli..

2024.09.16 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

ํ•™์Šต

deprecated๋œ firebase dynamic link ์—†์ด Firebase email link authentication ๊ตฌํ˜„ํ•˜๊ธฐ - 1

2025๋…„ 8์›” 25์ผ๋ถ€ํ„ฐ Firebase dynamic Link(FDL)๊ฐ€ deprecated ๋˜์–ด ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. Deprecation ๋ฌธ์„œ์— ๋”ฐ๋ฅด๋ฉด ์‹ ๊ทœ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์ž๋Š” FDL์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ณ , Firebase email link authentication์— ํ•œํ•ด์„œ ๊ณ ๊ฐ์„ผํ„ฐ์— ๋ฌธ์˜ํ•˜๋ฉด FDL์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. (๋ฌธ์„œ์™€ ๋‹ค๋ฅด๊ฒŒ ์‹ ๊ทœ ํ”„๋กœ์ ํŠธ๋„ Firebase Console์—์„œ Run ํƒญ ํ•˜์œ„์˜ Dynamic Links์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.) Q. I need to onboard onto Firebase Dynamic Links to enable email link auth in Firebase Authentication. What should I do?A. It curren..

2024.09.11 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

์ฝ”๋”ฉํ…Œ์ŠคํŠธ

Kotlin ์นด์นด์˜ค ์ฃผ์ฐจ ์š”๊ธˆ ๊ณ„์‚ฐ - ConcurrentModificationException, HashMap, hashing

ConcurrentModificationException https://school.programmers.co.kr/learn/courses/30/lessons/92341 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.kr    ์ž๋™์ฐจ์˜ ์ฃผ์ฐจ์žฅ ์ถœ์ž… ๋ˆ„์  ์‹œ๊ฐ„์„ ๊ธฐ๋กํ•œ ํ›„, ๋น„์šฉ์„ ๊ณ„์‚ฐํ•ด์„œ ๋ฐ˜ํ™˜ํ•˜๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ด๋‹ค.์•„๋ž˜๋Š” ์ฒ˜์Œ์— ์ž‘์„ฑํ•œ ๋‹ต์•ˆ์ด๋‹ค. ์–ด๋–ค ๋ฌธ์ œ๊ฐ€ ์žˆ์„๊นŒ? /** ๋ˆ„์  ์ฃผ์ฐจ ์‹œ๊ฐ„์ด ๊ธฐ๋ณธ ์‹œ๊ฐ„ ์ดํ•˜๋ผ๋ฉด ๊ธฐ๋ณธ ์š”๊ธˆ ๋ˆ„์  ์ฃผ์ฐจ ์‹œ๊ฐ„์ด ๊ธฐ๋ณธ ์‹œ๊ฐ„์„ ์ดˆ๊ณผํ•˜๋ฉด ์ดˆ๊ณผํ•œ ์‹œ๊ฐ„์— ๋Œ€ํ•ด ๋‹จ์œ„ ์‹œ๊ฐ„ ๋งˆ๋‹ค ๋‹จ์œ„ ์š”๊ธˆ ์ดˆ๊ณผํ•œ ์‹œ๊ฐ„์ด ๋‹จ์œ„ ์‹œ๊ฐ„์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€์ง€..

2024.09.04 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

ํ•™์Šต

Safe Navigation Action

๋ฌธ์ œ ์ƒํ™ฉ ๋ฐ ํ•ด๊ฒฐ๋ฐฉ๋ฒ• ์ƒ๋‹จ์˜ ์‚ฌ์ง„ ๊ถŒํ•œ ๋ณ€๊ฒฝ ์˜์—ญ์„ ํด๋ฆญํ•˜๋ฉด Navigation Action์„ ์ด์šฉํ•ด ModalBottomSheetFragment๊ฐ€ ์‹คํ–‰๋˜์–ด ModalBottomSheet๊ฐ€ ๋ณด์ด๋„๋ก ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.   ์ฒœ์ฒœํžˆ ๋ˆŒ๋ €์„ ๋•Œ๋Š” ๋ฌธ์ œ ์—†์—ˆ์œผ๋‚˜, ๋งค์šฐ ๋น ๋ฅด๊ฒŒ ์—ฐ์†ํ•ด์„œ ๋ˆ„๋ฅผ ๊ฒฝ์šฐ ์•„๋ž˜์™€ ๊ฐ™์€ exception์ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.๋‚ด์šฉ์„ ์š”์•…ํ•ด๋ณด๋ฉด, ํ˜„์žฌ ModalBottomSheetFragment์—์„œ ํ˜ธ์ถœํ•œ Action์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค.Process: com.bestapp.rice, PID: 12707java.lang.IllegalArgumentException: Navigation action/destination com.bestapp.rice:id/action_profileI..

2024.08.22 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

TIL

240821 TIL - ๋ฉด์ ‘

์˜ค๋Š˜ ๋ฉด์ ‘์„ ๋ณด๊ณ  ์™”๋‹ค. ๊ณผ์ œํ…Œ์ŠคํŠธ 30๋ถ„ + ๊ธฐ์ˆ ๋ฉด์ ‘ 1์‹œ๊ฐ„์œผ๋กœ ์ง„ํ–‰ํ–ˆ๋‹ค. ๊ณผ์ œํ…Œ์ŠคํŠธ๋Š” ๋งฅ๋ถ์„ ์ด์šฉํ•ด์„œ ์ง„ํ–‰ํ–ˆ๋Š”๋ฐ, ๋‚˜๋Š” ์ง€๊ธˆ๊นŒ์ง€ ๋งฅ๋ถ์„ ์ด์šฉํ•ด๋ณธ์ ์ด ์—†๋‹ค. ๋งฅ๋งˆ์šฐ์Šค๋„ ์ œ๊ณต๋๋Š”๋ฐ, ์˜ค๋ฅธ์ชฝ ํด๋ฆญ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ชฐ๋ผ์„œ ํ„ฐ์น˜ํŒจ๋“œ๋ฅผ ์ด์šฉํ–ˆ๋‹ค, ๋งฅ๋ถ ํ„ฐ์น˜ํŒจ๋“œ๋„ ์ฒ˜์Œ ์จ๋ด์„œ ๊ทธ๋Ÿฐ์ง€ ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์„ ๋‘๋ฒˆ ๋ˆŒ๋Ÿฌ๋„ ์˜ค๋ฅธ์ชฝ ํด๋ฆญ์ด ์ž˜ ์•ˆ ๋๋‹ค.๊ทธ ์™ธ์— ํ•œ์˜ ์ „ํ™˜, IDE ๋‹จ์ถ•ํ‚ค ๋“ฑ ์œˆ๋„์šฐ๋ž‘ ๋‹ค๋ฅธ ๊ฒƒ์ด ๋„ˆ๋ฌด ๋งŽ์•„์„œ ์ฃผ์–ด์ง„ ๋ฌธ์ œ ์กฐ๊ฑด์„ ๋‹ค ๋งŒ์กฑํ•˜์ง€ ๋ชปํ•œ ๊ฒƒ ๊ฐ™๋‹ค.... ๋งฅ๋ถ ์‚ฌ์•ผํ• ๊นŒ.....๐Ÿค” OS์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ๊ณผ์ œํ…Œ์ŠคํŠธ๋ฅผ ์™„๋ฃŒํ•˜์ง€ ๋ชปํ•œ ์ด์œ ๊ฐ€ 2๊ฐ€์ง€ ์žˆ๋‹ค. 1. Activity LifecycleScope Activity์—์„œ DB์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  ์žˆ์—ˆ๊ณ , ์‹œ๊ฐ„์ด 5์ดˆ ์ด์ƒ ์†Œ์š”๋˜์–ด exception์ด ๋ฐœ์ƒ..

2024.08.22 ๊ฒŒ์‹œ๋จ

ํฌ์ŠคํŒ… ์ธ๋„ค์ผ ์ด๋ฏธ์ง€

ํ•™์Šต

Flow, Channel, ChannelFlow, CallbackFlow

Flow์™€ Channel์˜ ๋ชฉ์  Flow : ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.Channel : ์ฝ”๋ฃจํ‹ด ๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š”๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Flow & Channel ๋น„๊ต Flow๋Š” ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ƒ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ์ŠคํŠธ๋ฆผ์œผ๋กœ, ๊ด€์ฐฐ์ž๊ฐ€ ์—†์œผ๋ฉด ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜์ง€ ์•Š๋Š” Cold source ์ž…๋‹ˆ๋‹ค.๊ธฐ๋ณธ์ ์œผ๋กœ Flow๋Š” ์ƒ์„ฑ๋œ ๋ฐ์ดํ„ฐ๊ฐ€ collect ํ•จ์ˆ˜์— ์˜ํ•ด ์†Œ๋น„๋  ๋•Œ๊นŒ์ง€ ๋‹ค์Œ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. buffer ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ๋ฒ„ํผ๋ฅผ ์„ค์ •ํ•˜๋ฉด, ๋ฒ„ํผ ํฌ๊ธฐ + 1 ๋งŒํผ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏธ๋ฆฌ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Flow๋Š” ๋ฒ„ํผ๊ฐ€ ์žˆ๋”๋ผ๋„ Cold source ์ž…๋‹ˆ๋‹ค. onBufferOverflow ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ด์šฉํ•ด ๋ฒ„ํผ๊ฐ€ ๊ฝ‰์ฐผ์„ ๋•Œ ๋™์ž‘์„ ์ •์˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋‹ค์Œ์˜ 3๊ฐ€์ง€ ์ข…๋ฅ˜..

2024.08.15 ๊ฒŒ์‹œ๋จ