๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด ๊ธ€

(377)
[OOP] ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ์–ด๋–ป๊ฒŒ ํ˜„์‹ค ์„ธ๊ณ„๋ฅผ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ํ‘œํ˜„ํ•˜๋‚˜ ์ถœ์ฒ˜ChatGPT์—๊ฒŒ ์งˆ๋ฌธํ•จ. ๋‚ด์šฉ ํ˜„์‹ค ์„ธ๊ณ„๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ฐ์ฒด Object ๊ฐœ๋…ํ˜„์‹ค ์„ธ๊ณ„์—์„œ๋Š” ๋ชจ๋“  ๊ฒƒ์ด ๊ฐ์ฒด๋‹ค.ํ˜„์‹ค ์„ธ๊ณ„์˜ ๋ชจ๋“  ๊ฒƒ๋“ค์€ ์ƒํƒœ(ํŠน์„ฑ, ์†์„ฑ)๊ณผ ํ–‰๋™(๋ฉ”์„œ๋“œ)๋ฅผ ๊ฐ–๋Š”๋‹คex) ์ž๋™์ฐจ, ์‚ฌ๋žŒ, ๋™๋ฌผ ๋“ฑ๋“ฑ๊ฐ์ฒด๋ผ๋Š” ๊ฐœ๋…์œผ๋กœ ํ˜„์‹ค ์„ธ๊ณ„์˜ ์‚ฌ๋ฌผ์„ ํ‘œํ˜„ํ•œ๋‹ค.๊ฐ์ฒด๋Š” ๋ฐ์ดํ„ฐ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ํฌํ•จํ•œ๋‹ค.ํ˜„์‹ค ์„ธ๊ณ„์˜ ์‚ฌ๋ฌผ๋“ค์ด ์ƒํƒœ(ํŠน์„ฑ)์™€ ํ–‰๋™์„ ๊ฐ–๋Š” ๊ฒƒ๊ณผ ์œ ์‚ฌํ•˜๋‹ค.์บก์Šํ™”Encapsulation๊ฐ์ฒด๋“ค์ด ์ž์‹ ๋งŒ์˜ ๋‚ด๋ถ€ ์ƒํƒœ๋ฅผ ๊ฐ€์ง€๊ณ  ์™ธ๋ถ€์™€ ์ƒํ˜ธ์ž‘์šฉํ•  ๋•Œ ํ•„์š”ํ•œ ์ •๋ณด๋งŒ ์ œ๊ณตํ•œ๋‹ค.ex) ์ž๋™์ฐจ์˜ ์—”์ง„ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋ฅผ ์•Œ ํ•„์š”์—†์ด ์šด์ „์ž๋Š” ํ•ธ๋“ค๊ณผ ํŽ˜๋‹ฌ๋งŒ์œผ๋กœ ์šด์ „์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.์บก์Šํ™”๋ฅผ ํ†ตํ•ด ๊ฐ์ฒด ๋‚ด๋ถ€๋ฅผ ์ˆจ๊ธฐ๊ณ , ๊ณต๊ฐœ๋œ ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด์„œ๋งŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ๊ฐ์ฒด์˜ ๋ฌด๊ฒฐ์„ฑ์„ ์œ ์ง€ํ•˜๊ณ  ๋ณต์žก์„ฑ์„ ์ค„..
[๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ ์ฝ๊ธฐ] robust + MVI + Jetpack Compose ์ฝ์€ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ ์›๋ฌธ + ์ถœ์ฒ˜https://proandroiddev.com/a-robust-mvi-with-jetpack-compose-e08882d2c4ff A robust MVI with Jetpack ComposeImplementing an MVI Architecture recognisable to allproandroiddev.com ์ง€๊ทนํžˆ ๊ฐœ์ธ ์Šคํ„ฐ๋””๋ฅผ ์œ„ํ•œ ๊ธ€1. Robust ?๊ธ€์˜ ์„œ๋‘์— robust architecture ๋ผ๊ณ  ๊ฐ•์กฐ๋œ ๋ถ€๋ถ„์„ ๋ณด์•˜๋‹ค. ํ•ด๋‹น ์šฉ์–ด๋ฅผ ๊ทธ๋ƒฅ ์ง€๋‚˜์น˜๋ฉด ์•ˆ๋  ๊ฒƒ ๊ฐ™๋‹ค. robust ์‚ฌ์ „์  ๋œป๋„ ๋ณด๊ณ   ์†Œํ”„ํŠธ์›จ์–ด ๊ด€๋ จํ•ด์„œ ์–ด๋–ป๊ฒŒ ์“ฐ์ด๋Š”์ง€๋„ ์‚ดํŽด๋ณด์•˜๋‹ค. ์œ„ํ‚คํ”ผ๋””์•„์—์„œ์˜ ๋œป : Robustness๋„ ํ™•์ธํ•œ๋‹ค. ์•„์˜ˆ Software robustness์— ๊ด€ํ•ด์„œ ์“ด ๊ธ€๋„ ์žˆ..
[Sample] PictureInPictureKotlin ์ฝ”๋“œ ์‚ดํ”ผ๊ธฐ - 1 ์ƒ˜ํ”Œ ์ฝ”๋“œ ํ”„๋กœ์ ํŠธhttps://github.com/android/media-samples/tree/main/PictureInPictureKotlin media-samples/PictureInPictureKotlin at main · android/media-samplesMultiple samples showing the best practices in media APIs on Android (audio, video, etc.). - android/media-samplesgithub.com  AndroidManifest.xml ์‚ดํ”ผ๊ธฐ1) android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"2) android:suppo..
[API ๋ฌธ์„œํ™”] API ๋ฌธ์„œ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ ๊ธ€ 1. https://engineering.linecorp.com/ko/blog/document-engineering-api-documentation ๋ฌธ์„œ ์—”์ง€๋‹ˆ์–ด๋ง๊ณผ API ๋ฌธ์„œํ™” ์ด ๊ธ€์€ ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด 396ํ˜ธ์— ๊ธฐ๊ณ ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. ๋“ค์–ด๊ฐ€๊ธฐ ํ…Œํฌ๋‹ˆ์ปฌ ๋ผ์ดํ„ฐ(technical writer)๋ผ๋Š” ๋ง์„ ๋“ค์œผ๋ฉด ๋Œ€๋ถ€๋ถ„ '๋ผ์ดํ„ฐ'๋ผ๋Š” ๋‹จ์–ด๋งŒ ๋ณด๊ณ  '๊ธ€ ์“ฐ๋Š” ์‚ฌ๋žŒ'์ด๋ผ ์ƒ๊ฐํ•˜๊ธฐ ์‹ญ์ƒ์ž…๋‹ˆ๋‹ค. ๋ฌผ engineering.linecorp.com 2. https://techblog.lycorp.co.jp/ko/api-document-integration-and-documentation-automation ๋ชจ๋‘๊ฐ€ ํ–‰๋ณตํ•ด์ง€๋Š” API ๋ฌธ์„œ ํ†ตํ•ฉ๊ณผ ์ž๋™ํ™” ๋“ค์–ด๊ฐ€๋ฉฐ ์•ˆ๋…•ํ•˜์„ธ์š”. LINE Plus์—์„œ LINE Monary์™€ MyD..
[Git] .gitignore ํŒŒ์ผ ์ž๋™ ์„ค์ • https://www.toptal.com/developers/gitignore gitignore.io Create useful .gitignore files for your project www.toptal.com ์š”๋ ‡๊ฒŒ IDE, OS, ์‚ฌ์šฉ ์–ธ์–ด๋ฅผ ์ž…๋ ฅํ•ด์„œ ์ƒ์„ฑํ–ˆ๋‹ค.
[Android] ์•ˆ๋“œ๋กœ์ด๋“œ ๊ด€๋ จ ์งˆ๋ฌธ 1 - ์•ˆ๋“œ๋กœ์ด๋“œ ๊ธฐ์ดˆ https://yamanf.medium.com/cracking-the-android-code-interview-android-basics-5739efe98431 Cracking the Android Code Interview #1 : Android Basics In this article series, we will together answer Android interview questions from beginner to advanced levels. Join me in this learning… yamanf.medium.com 1. ์•ˆ๋“œ๋กœ์ด๋“œ์˜ ๊ธฐ๋ณธ ๊ฐœ๋…์€ ๋ฌด์—‡์ธ๊ฐ€? ์˜คํ”ˆ ์†Œ์Šค์—, ๋ฆฌ๋ˆ…์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์šด์˜์ฒด์ œ๋กœ ์Šค๋งˆํŠธํฐ๊ณผ ํƒœ๋ธ”๋ฆฟ๊ณผ ๊ฐ™์€ ํ„ฐ์น˜์Šคํฌ๋ฆฐ ๋ชจ๋ฐ”์ผ ์žฅ์น˜๋ฅผ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ๋Š” ํ˜์‹ ..
[Android][Library][๋ฒ„์ „] ํ”Œ๋ ˆ์ด ์Šคํ† ์–ด์— ์—…๋กœ๋“œ๋œ ์ตœ์‹  ์•ฑ ๋ฒ„์ „ ์ •๋ณด ๋ฐ›๊ธฐ ์ด์Šˆ ํ”Œ๋ ˆ์ด ์Šคํ† ์–ด์— ์—…๋กœ๋“œ๋œ ์ตœ์‹  ์•ฑ ์ •๋ณด๋ฅผ ํ™•์ธํ•˜๊ณ ์ž ํ•œ๋‹ค. ํ•ด๊ฒฐ Google Play Core ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ค‘ Play In-App Update ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ฐธ๊ณ  https://velog.io/@chris_seed/AndroidKotlin-google-play-store%EC%97%90%EC%84%9C-%EC%95%B1-%EB%B2%84%EC%A0%84-%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8-%ED%99%95%EC%9D%B8 [Kotlin] google play store์—์„œ ์•ฑ ๋ฒ„์ „ ์—…๋ฐ์ดํŠธ ํ™•์ธ ์šฐ๋ฆฌ๊ฐ€ google play store์— ์•ฑ์„ ๋“ฑ๋กํ•˜๊ณ  ๋‚œ ํ›„ ๋ฒ„๊ทธ๊ฐ€ ๋ฐœ์ƒํ•˜๊ฑฐ๋‚˜ ์‹ ๊ทœ ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜๋Š” ๋“ฑ์˜ ์ด์œ ๋กœ ์•ฑ์„ ์—…๋ฐ์ดํŠธ๋ฅผ ํ•ด์•ผ ๋œ๋‹ค. ๊ทธ๋•Œ, ์•„๋ฌด๋Ÿฐ ์กฐ์น˜๊ฐ€ ์—†..
[๊ตฌ๊ธ€ ํ”Œ๋ ˆ์ด ์ฝ˜์†”][๊ฒฝํ—˜] ์•ฑ ๊ฒŒ์‹œ ์„ค์ • ON ๋ณ€๊ฒฝ ์‹œ์—๋„ ๊ฒ€์ˆ˜๋ฅผ ํ•œ๋‹ค ๊ฒฐ๋ก  ์•ฑ ๊ฒŒ์‹œ ์„ค์ •์ด OFF์—์„œ ON์ด ๋˜๋ฉด ๊ฒ€์ˆ˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ํƒ€๋”๋ผ. ๊ณ ๊ธ‰ ์„ค์ • ๋ถ€๋ถ„์ด ๋ณ€๊ฒฝ๋˜์–ด์„œ ๊ฒ€์ˆ˜๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค. ์ƒํ™ฉ ์ด์ „ ๋‹ด๋‹น์ž๊ฐ€ ์•ฑ ๊ฒŒ์‹œ ์„ค์ •์—์„œ ์•ฑ์„ ๋‚ด๋ ค๋ฒ„๋ ธ์Œ. ๊ณ ๊ฐ๋“ค์—๊ฒŒ ์•ฑ์ด ๋…ธ์ถœ๋˜์ง€ ์•Š์•˜๋‹ค. ์ด์ „ ๋‹ด๋‹น์ž๋Š” ์™œ ๊ฒŒ์‹œ ๊ฐœ์š” ์„ค์ •์—์„œ ๊ด€๋ฆฌํ˜• ๊ฒŒ์‹œ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋Š”๊ฐ€๐Ÿ˜  ์•ฑ์ด ๋‚ด๋ ค๊ฐ„ ์ƒํƒœ์—์„œ๋„ ์•ฑ์„ ์—…๋ฐ์ดํŠธํ•˜๋ฉด ๊ตฌ๊ธ€ ํ”Œ๋ ˆ์ด ์ธก์—์„œ ์•ฑ์„ ๊ฒ€์ˆ˜ํ•œ๋‹ค. ์•ฑ ๊ฒ€์ˆ˜๊ฐ€ ๋ฌด์‚ฌํžˆ ํ†ต๊ณผ๋˜์–ด์„œ ์•ฑ ๊ฒŒ์‹œ ์„ค์ •์— ๋‹ค์‹œ ๋“ค์–ด๊ฐ€ ์•ฑ์„ ์˜ฌ๋ฆฌ๋ ค๊ณ  ํ–ˆ๋‹ค. ์•ฑ์„ ๊ฒŒ์‹œํ•œ๋‹ค๊ณ  ์„ค์ • ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋‹ˆ, ๋‹ค์‹œ ๊ตฌ๊ธ€ ํ”Œ๋ ˆ์ด ์ธก์—์„œ ์ด๋ฏธ ํ†ต๊ณผํ•œ ์•ฑ์„ ๊ฒ€์ˆ˜ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋กœ ๋„˜์–ด๊ฐ€๋ฒ„๋ ธ๋‹ค. ๊ทธ๋ž˜์„œ ์ •๋ง ๋…ธ์ถœํ•˜๊ณ  ์‹ถ์—ˆ๋˜ ์•ฑ์€ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ๋‹ค์‹œ ๊ฒ€์ˆ˜์— ๋“ค์–ด๊ฐ”๋‹ค. ์•ฑ ์ถœ์‹œ ์ผ์ž๋ฅผ ๋งž์ถฐ์•ผ ํ•˜๋Š” ์ƒํ™ฉ์— ๋ฐœ์ƒํ•œ ๋ณ€์ˆ˜์˜€๋‹ค. ๋‹ค์‹œ ๊ฒ€์ˆ˜๋ฅผ ๋“ค์–ด๊ฐ„ ๋•Œ์—๋Š” ์ถ”์„ ์ „์ด๋ผ..