[ANDROID] ์•ˆ๋“œ๋กœ์ด๋“œ 4๋Œ€ ์ปดํฌ๋„ŒํŠธ
์•ˆ๋“œ๋กœ์ด๋“œ 2020. 2. 26. 00:38

์•ˆ๋“œ๋กœ์ด๋“œ 4๋Œ€ ์ปดํฌ๋„ŒํŠธ๋ž€? 4๋Œ€ ์ปดํฌ๋„ŒํŠธ๋Š” ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์˜ ํ•„์ˆ˜์ ์ธ ๊ธฐ๋ณธ ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ๊ฐ ๊ตฌ์„ฑ ์š”์†Œ๋Š” ์‚ฌ์šฉ์ž๋“ค์ด ์•ฑ์œผ๋กœ ๋“ค์–ด์˜ฌ ์ˆ˜ ์žˆ๋Š” ์ง„์ž…์ ์ด๋ฉฐ, 4๋Œ€ ์ปดํฌ๋„ŒํŠธ๋Š” ํฌ๊ฒŒ ์•กํ‹ฐ๋น„ํ‹ฐ, ์„œ๋น„์Šค, Broadcast Receiver, ์ฝ˜ํ…์ธ  ์ œ๊ณต์ž๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ์ปดํฌ๋„ŒํŠธ๋“ค์€ ๊ฐ๊ธฐ ๋šœ๋ ทํ•œ ๋ชฉ์ ์„ ์ˆ˜ํ–‰ํ•˜๊ณ , ์ž๊ธฐ๋“ค๋งŒ์˜ ์ˆ˜๋ช… ์ฃผ๊ธฐ๊ฐ€ ์กด์žฌํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ƒ์„ฑ ๋ฐ ์†Œ๋ฉธ ๋ฐฉ์‹์„ ์ง์ ‘ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•กํ‹ฐ๋น„ํ‹ฐ ์•กํ‹ฐ๋น„ํ‹ฐ๋Š” ์‚ฌ์šฉ์ž์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜๊ธฐ ์œ„ํ•œ ์ง„์ž…์ ์ž…๋‹ˆ๋‹ค. ์•กํ‹ฐ๋น„ํ‹ฐ๋Š” UI๊ฐ€ ํฌํ•จ๋œ ํ™”๋ฉด ํ•˜๋‚˜๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ์•กํ‹ฐ๋น„ํ‹ฐ๊ฐ€ ๋ชจ์—ฌ์„œ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ•˜๋‚˜์˜ ์•ฑ์„ ์ œ๊ณตํ•˜์ง€๋งŒ, ๋ชจ๋“  ์•กํ‹ฐ๋น„ํ‹ฐ๋Š” ๊ฐ์ž ์„œ๋กœ ๋…๋ฆฝ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ด์œ  ๋•Œ๋ฌธ์— ๋ชจ๋ฐ”์ผ ์•ฑ์—์„œ ๋‹ค๋ฅธ ๋ชจ๋ฐ”์ผ ์•ฑ์ด ํ—ˆ์šฉ์„ ํ•œ๋‹ค๋ฉด ๊ทธ ์•ฑ์ด ์†Œ์œ ํ•œ ์•กํ‹ฐ๋น„ํ‹ฐ๋ฅผ..

[ANDROID] ์•กํ‹ฐ๋น„ํ‹ฐ ์ƒ๋ช…์ฃผ๊ธฐ
์•ˆ๋“œ๋กœ์ด๋“œ 2020. 2. 25. 20:54

Android Activity Life Cycle์ด๋ž€? Android์˜ 4๋Œ€ ์ปดํฌ๋„ŒํŠธ ์ค‘ ํ•˜๋‚˜์ธ ์•กํ‹ฐ๋น„ํ‹ฐ๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ UI๋ฅผ ๋ณด์—ฌ์ฃผ๊ณ , ์‚ฌ์šฉ์ž์™€ ์ƒํ˜ธ์ž‘์šฉ์„ ์ฃผ๋„ํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ ์ž…๋‹ˆ๋‹ค. Android์˜ ์•กํ‹ฐ๋น„ํ‹ฐ๋Š” ๊ณ ์œ ์˜ Life Cycle์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์™€ ์ƒํ˜ธ์ž‘์šฉ์„ ํ•˜๊ธฐ๋„ ํ•˜๊ณ , ๋ฐฑ๊ทธ๋ผ์šด๋“œ๋กœ ์ˆจ๊ธฐ๋„ ํ•˜๋ฉฐ, ๋‹ค๋ฅธ ์•กํ‹ฐ๋น„ํ‹ฐ์™€ ์ƒํ˜ธ์ž‘์šฉ์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์‚ฌ์šฉ์ž์˜ ํ–‰๋™์— ๋งž๋Š” ์•กํ‹ฐ๋น„ํ‹ฐ์˜ ํ–‰๋™์„ ํ›Œ๋ฅญํ•˜๊ฒŒ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ฐœ๋ฐœ์ž๋Š” ์•กํ‹ฐ๋น„ํ‹ฐ์˜ Life Cycle์— ๋Œ€ํ•ด ํ™•์‹คํ•˜๊ฒŒ ์ดํ•ดํ•˜๊ณ  ์žˆ์–ด์•ผ๋งŒ ํ•ฉ๋‹ˆ๋‹ค. Activity Life Cycle์˜ ํ๋ฆ„ Activity Life Cycle์€ ์ผ๋ฐ˜์ ์œผ๋กœ onCreate() -> onStart() -> onResume() -> onPause() -> onStop() -> on..

[JAVA] JVM์ด๋ž€ ๋ฌด์—‡์ผ๊นŒ?
JAVA/์•Œ์•„๋‘๋ฉด ์ข‹์„ ์ง€์‹ 2020. 1. 31. 16:35

JVM์ด๋ž€? ์ž๋ฐ” ๊ฐ€์ƒ ๋จธ์‹ (Java Virtual Machine)์˜ ์•ฝ์ž๋กœ์„œ, ์ง์—ญํ•˜์ž๋ฉด '์ž๋ฐ”๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ€์ƒ ๊ธฐ๊ณ„'๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. '๊ฐ€์ƒ ๊ธฐ๊ณ„'๋Š” SW๋กœ ๊ตฌํ˜„๋œ HW๋ฅผ ๋œปํ•˜๋Š” ๋„“์€ ์˜๋ฏธ์˜ ์šฉ์–ด์ด๋ฉฐ, ์ปดํ“จํ„ฐ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋จ์— ๋”ฐ๋ผ ์ ์  ๋” ๋งŽ์€ HW๋“ค์ด SWํ™” ๋˜์–ด ์ปดํ“จํ„ฐ ์†์œผ๋กœ ๋“ค์–ด์˜ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ '๊ฐ€์ƒ ์ปดํ“จํ„ฐ' ๋˜ํ•œ ์‹ค์ œ ์ปดํ“จํ„ฐ๊ฐ€ ์•„๋‹Œ ์†Œํ”„ํŠธ์›จ์–ด๋กœ ๊ตฌํ˜„๋œ ์ปดํ“จํ„ฐ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ํ•˜์—ฌํŠผ, ์ž๋ฐ”๋กœ ์ž‘์„ฑ๋œ ์—ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ชจ๋‘ JVM์—์„œ๋งŒ ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ž๋ฐ” ์—ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰๋˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฐ˜๋“œ์‹œ JVM์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜ ์—ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฝ”๋“œ๋Š” OS๋งŒ ๊ฑฐ์น˜๊ณ  HW๋กœ ์ „๋‹ฌ๋˜๋Š”๋ฐ ๋น„ํ•ด Java์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ JVM์„ ํ•œ๋ฒˆ ๋” ๊ฑฐ์น˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ทธ๋ฆฌ๊ณ  ์‹คํ–‰ ์‹œ์— ํ•ด์„(Interpr..

[JAVA] ๊ฐ์ฒด vs ์ธ์Šคํ„ด์Šค
JAVA/์•Œ์•„๋‘๋ฉด ์ข‹์„ ์ง€์‹ 2020. 1. 31. 14:26

๊ฐ์ฒด? ์ธ์Šคํ„ด์Šค? ๊ฐ์ฒด๋ž€? ์‹ค์ œ๋กœ ์กด์žฌํ•˜๋Š” ๊ฒƒ, ์‚ฌ๋ฌผ ๋˜๋Š” ๊ฐœ๋… ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ํด๋ž˜์Šค์˜ ์ •์˜๋Œ€๋กœ ๋ฉ”๋ชจ๋ฆฌ์— ์ƒ์„ฑ๋œ ๊ฒƒ ๊ฐ์ฒด์™€ ์ธ์Šคํ„ด์Šค ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ณผ์ •์„ ์ธ์Šคํ„ด์Šคํ™”๋ผ๊ณ  ํ•˜๋ฉฐ, ์–ด๋–ค ํด๋ž˜์Šค๋กœ ๋ถ€ํ„ฐ ๋งŒ๋“ค์–ด์ง„ ๊ฐ์ฒด๋ฅผ ์ธ์Šคํ„ด์Šค๋ผ๊ณ ํ•จ ๊ฐ™์€ ์˜๋ฏธ์ด์ง€๋งŒ ๋ฌธ๋งฅ์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ ์ฆ‰, A๋Š” ๋ฌด์—‡์ธ๊ฐ€์˜ ์ธ์Šคํ„ด์Šค์ด๋‹ค. A๋Š” ๊ฐ์ฒด๋‹ค ์ด๋Ÿฐ ๋Š๋‚Œ Reference JAVA์˜ ์ •์„, ๋„์šฐ ์ถœํŒ, ๋‚จ๊ถ ์„ฑ ์ง€์Œ

[JAVA] ๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด๊ฐ€ ๋ญ˜๊นŒ?
JAVA/์•Œ์•„๋‘๋ฉด ์ข‹์„ ์ง€์‹ 2020. 1. 31. 13:10

๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด? "๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด์˜ ๊ธฐ๋ณธ ๊ฐœ๋…์€ ์‹ค์ œ ์„ธ๊ณ„๋Š” ์‚ฌ๋ฌผ(๊ฐ์ฒด)๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์œผ๋ฉฐ, ๋ฐœ์ƒํ•˜๋Š” ๋ชจ๋“  ์‚ฌ๊ฑด๋“ค์€ ์‚ฌ๋ฌผ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์ด๋‹ค." ๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด์˜ ๋ฐ”ํƒ•์ด ๋˜๋Š” ๊ธฐ๋ณธ ๊ฐœ๋…์€ '์‹ค์ œ ์‚ฌ๋ฌผ์˜ ์†์„ฑ๊ณผ ๊ธฐ๋Šฅ์„ ๋ถ„์„ํ•œ ๋‹ค์Œ, ๋ฐ์ดํ„ฐ(๋ณ€์ˆ˜)์™€ ํ•จ์ˆ˜๋กœ ์ •์˜ํ•จ์œผ๋กœ์จ ์‹ค์ œ ์„ธ๊ณ„๋ฅผ ์ปดํ“จํ„ฐ ์†์— ์˜ฎ๊ฒจ ๋†“์€ ๊ฒƒ๊ณผ ๊ฐ™์€ ๊ฐ€์ƒ์„ธ๊ณ„๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ'์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด์˜ ํŠน์„ฑ? https://ybdeveloper.tistory.com/24?category=785038 [JAVA] ํด๋ž˜์Šค๋Š” ๋ญ๊ณ  ๊ฐ์ฒด๊ฐ€ ๋ญ์•ผ? ๊ฐ์ฒด? ๊ฐ์ฒด๋Š” ์–ด๋””์„œ๋“  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์ž๋ฐ” ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด์—์„œ์˜ ํ•ต์‹ฌ ๊ฐœ๋… ์ค‘ ํ•œ๊ฐ€์ง€๋ฅผ ๋ฝ‘์•„๋ณด๋ผ๊ณ  ํ•˜๋ฉด ๋Œ€๋ถ€๋ถ„ '๊ฐ์ฒด'๋ฅผ ์–ธ๊ธ‰ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ์ฒด๋Š” ์ ˆ๋Œ€๋กœ ์–ด๋ ค์šด ๊ฐœ๋…์ด ์•„๋‹™๋‹ˆ๋‹ค. ์‹ค์„ธ๊ณ„ ์–ด๋””์„œ๋“ ....