JM's Devlog

๋„ค์ด๋ฒ„ ๋ถ€์ŠคํŠธ์บ ํ”„ 10๊ธฐ(Android) ๋ฒ ์ด์ง ํ›„๊ธฐ

์ฐธ์—ฌ ๊ณ„๊ธฐ ๊ทธ๋™์•ˆ ํ”Œ๋Ÿฌํ„ฐ๋กœ ์•ฑ ๊ฐœ๋ฐœ์„ ํ–ˆ์—ˆ๋‹ค. ํ”Œ๋Ÿฌํ„ฐ๋Š” ํฌ๋กœ์Šคํ”Œ๋žซํผ์ด๋‹ค ๋ณด๋‹ˆ ๋„ค์ดํ‹ฐ๋ธŒ ์ž์›์„ ์ œ์–ดํ•˜๋Š” ๋ฐ ํ•œ๊ณ„๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค. ์•„์ง ๊ฐœ๋ฐœ ๊ฒฝํ—˜์ด ๋ถ€์กฑํ•ด์„œ ์ง์ ‘์ ์œผ๋กœ ๊ทธ ํ•œ๊ณ„๋ฅผ ๋งˆ์ฃผ์ณ๋ณธ ์ ์€ ์—†์ง€๋งŒ, ๊ทธ๋ž˜๋„ ์–ธ์  ๊ฐ„ ๋ฐฐ์›Œ์•ผ ํ•˜๊ธฐ๋„ ํ–ˆ๊ณ , ๋ฐฐ์›Œ๋ณด๊ณ  ์‹ถ๊ธฐ๋„ ํ–ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์•ˆ๋“œ๋กœ์ด๋“œ ๊ฐœ๋ฐœ์— ์“ฐ์ด๋Š” ์–ธ์–ด์ธ ์ฝ”ํ‹€๋ฆฐ์„ ํ˜ผ์ž ๊ณต๋ถ€ํ•˜๋ ค๋‹ˆ ๋˜๊ฒŒ ๋ง‰๋ง‰ํ–ˆ๋‹ค. ์šฐ์„  ์ฝ”...

๋‚ด๊ฐ€ ๋ณด๋ ค๊ณ  ๋งŒ๋“  Git ๋ช…๋ น์–ด ์ •๋ฆฌ

โœ… ๋กœ์ปฌ์— ์žˆ๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ๋น„์–ด์žˆ๋Š” ๊นƒํ—ˆ๋ธŒ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ํ‘ธ์‹œํ•˜๊ธฐ git init ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ์—์„œ Git ์ดˆ๊ธฐํ™” git remote add origin [์›๊ฒฉ์ €์žฅ์†Œ ์ฃผ์†Œ] ์›๊ฒฉ ์ €์žฅ์†Œ(origin) ๋“ฑ๋ก git add . ๋ณ€๊ฒฝ์‚ฌํ•ญ ์Šคํ…Œ์ด์ง€์— ์ถ”๊ฐ€ git commit -m "first commit" ์ปค๋ฐ‹ ...

[Flutter] BuildContext

๊ทธ๋™์•ˆ Flutter์˜ GetX์— ์ต์ˆ™ํ–ˆ๋Š”๋ฐ, GetX์—์„œ๋Š” BuildContext ์—†์ด๋„ ๊ฐ์ฒด๋ฅผ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ์—ˆ๋‹ค(GetX ๋ง๊ณ  Provider๋‚˜ BloC๊ฐ™์€ ๋‹ค๋ฅธ ์ƒํƒœ๊ด€๋ฆฌ ํŒจํ‚ค์ง€์—์„œ๋Š” ViewModel์„ ์–ป๊ธฐ ์œ„ํ•ดย BuildContext๊ฐ€ ํ•„์š”ํ•˜๋‹ค๊ณ  ํ•œ๋‹ค).ย  ๊ทธ๋ž˜์„œ์ธ์ง€ BuildContext์— ๋Œ€ํ•œ ๊ฐœ๋…์ด ๋นˆ์•ฝํ–ˆ๋˜ ๊ฑฐ ๊ฐ™์•„, ์ด๋ฒˆ์— ์ด ๊ฐœ๋…์„ ...

[Flutter] GetX๋กœ ๋ณด๋Š” MVVM (vs MVC)

์˜ค๋Š˜์€ Flutter์—์„œ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์ƒํƒœ ๊ด€๋ฆฌ ํŒจํ‚ค์ง€ ์ค‘ ํ•˜๋‚˜์ธ GetX๋ฅผ ํ™œ์šฉํ•˜์—ฌ, MVVM ํŒจํ„ด๊ณผ MVC ํŒจํ„ด์„ ๋น„๊ตํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ๊ทธ ์ „์—, ๊ทธ๋™์•ˆ ํ—ท๊ฐˆ๋ฆฌ๋˜ MVC ํŒจํ„ด, MVP ํŒจํ„ด, MVVM ํŒจํ„ด์„ ๋ณต์Šตํ•ด๋ณด์ž. MVC vs MVP vs MVVM ์šฐ์„  ๋‘ ํŒจํ„ด ๋ชจ๋‘ M๊ณผ V๋ฅผ ๊ฐ€์ง„๋‹ค. M์€ Model, V๋Š” View๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ...

๋ฒจ๋งŒํฌ๋“œ(Bellman-Ford) ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ฒจ๋งŒํฌ๋“œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ํ•˜๋‚˜์˜ ์ •์ ์—์„œ ์ถœ๋ฐœํ•ด ๋‹ค๋ฅธ ๋ชจ๋“  ์ •์ ๊นŒ์ง€์˜ ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š”ย ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๋‹ฌ๋ฆฌ, ๊ฐ€์ค‘์น˜๊ฐ€ ์Œ์ˆ˜์ผ ๋•Œ๋„ ๋™์ž‘ํ•˜๋ฉฐ, ์Œ์˜ ์‚ฌ์ดํด์˜ ์กด์žฌ ์—ฌ๋ถ€๋„ ํƒ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ถœ์ฒ˜: ์œ„ํ‚คํ”ผ๋””์•„ ๋ฒจ๋งŒํฌ๋“œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ž˜ ์„ค๋ช…ํ•ด์ฃผ๋Š” gif์ธ ๊ฒƒ ๊ฐ™๋‹ค. ๐Ÿง  ๊ณผ์ • d ๋ฆฌ์ŠคํŠธ์—๋Š” ์ถœ๋ฐœ์ ์œผ๋กœ๋ถ€ํ„ฐ ๊ฐ ๋…ธ๋“œ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๊ฐ€ ์ €์žฅ...

[Flutter] ๋‹จ์œ„ ํ…Œ์ŠคํŠธ

Flutter ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ํ…Œ์ŠคํŠธ์— ๋Œ€ํ•œ ๊ฐœ๋…์„ ์ •๋ฆฌํ•ด๋ณด๊ธฐ๋กœ ํ–ˆ๋‹ค. ์˜ค๋Š˜์€ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ(Unit test)์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ํ…Œ์ŠคํŠธ์˜ ์ข…๋ฅ˜ ํ…Œ์ŠคํŠธ๋Š” ๋ณดํ†ต ์ •์  ํ…Œ์ŠคํŠธ์™€ ๋™์  ํ…Œ์ŠคํŠธ๋กœ ๋‚˜๋‰œ๋‹ค. ์ •์  ํ…Œ์ŠคํŠธ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  ํ…Œ์ŠคํŠธํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค. ์‹คํ–‰ ์—†์ด ๊ฐœ๋ฐœ ์‚ฐ์ถœ๋ฌผ(์ฝ”๋“œ๋‚˜ ๋ฌธ์„œ ๋“ฑ)์„ ๋ถ„์„ํ•˜๊ธฐ๋งŒ ํ•œ๋‹ค. ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋‚˜ ๋ณ„...

ํ”„๋กœ์„ธ์Šค์™€ ์Šค์ผ€์ค„๋ง ๊ธฐ๋ฒ•

ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ ํ”„๋กœ์„ธ์Šค(process) ํ”„๋กœ์„ธ์Šค๋Š” ํ”„๋กœ๊ทธ๋žจ์ด CPU(ํ”„๋กœ์„ธ์„œ)์—์„œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌ๋œ ์ƒํƒœ๋ฅผ ๋งํ•œ๋‹ค. ๊ฐ ํ”„๋กœ์„ธ์Šค๋Š” ๋‚ฎ์€ ์ฃผ์†Œ์—์„œ ๋†’์€ ์ฃผ์†Œ๋กœ ์˜ฌ๋ผ๊ฐ€๋Š” ์ˆœ์„œ๋Œ€๋กœ, Code, Data, Heap, Stack ์˜์—ญ์œผ๋กœ ๋‚˜๋‰œ๋‹ค. Code ์˜์—ญ: ์‹คํ–‰ํ•  ํ”„๋กœ๊ทธ๋žจ์˜ ์ฝ”๋“œ๊ฐ€ ์ €์žฅ๋œ๋‹ค. Data ์˜์—ญ: ํ”„๋กœ๊ทธ๋žจ์˜ ์ „...

๋‹ค์ต์ŠคํŠธ๋ผ(Dijkstra) ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ํ•˜๋‚˜์˜ ์ •์ ์—์„œ ์ถœ๋ฐœํ•ด ๋‹ค๋ฅธ ๋ชจ๋“  ์ •์ ๊นŒ์ง€์˜ ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. ๋Œ€ํ‘œ์ ์ธ ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ค‘ ํ•˜๋‚˜๋‹ค. ๋ชจ๋“  ๊ฐ„์„ ์˜ ๊ฐ€์ค‘์น˜๊ฐ€ 0 ์ด์ƒ์˜ ์–‘์ˆ˜์ผ ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿง  ๊ณผ์ • d ๋ฆฌ์ŠคํŠธ์—๋Š” ์ถœ๋ฐœ์ ์œผ๋กœ๋ถ€ํ„ฐ ๊ฐ ๋…ธ๋“œ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๊ฐ€ ์ €์žฅ๋œ๋‹ค. ๋ชจ๋“  ๋…ธ๋“œ์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๋ฌดํ•œ๋Œ€(inf)๋กœ ์ดˆ๊ธฐํ™”ํ•˜๊ณ , ์‹œ์ž‘ ๋…ธ๋“œ์˜ ์ธ๋ฑ์Šค(...

DFS ํŠธ๋ฆฌ ์ˆœํšŒ

๋ฐฑ์ค€ 1991. ํŠธ๋ฆฌ ์ˆœํšŒ DFS๋กœ ๊ตฌํ˜„ํ–ˆ๋‹ค. ์ „์œ„: ๋ฃจํŠธ๊ฐ€ ์šฐ์„ . ๋ฃจํŠธ - ์™ผ์ชฝ์ž์‹ - ์˜ค๋ฅธ์ชฝ์ž์‹ ์ค‘์œ„: ์™ผ์ชฝ์ž์‹ - ๋ฃจํŠธ - ์˜ค๋ฅธ์ชฝ์ž์‹ ํ›„์œ„: ๋ฃจํŠธ๊ฐ€ ๋งˆ์ง€๋ง‰. ์™ผ์ชฝ์ž์‹ - ์˜ค๋ฅธ์ชฝ์ž์‹ - ๋ฃจํŠธ ์ฝ”๋“œ def dfs_prefix(node): if node == '.': return print(no...

ํŒŒ์ด์ฌ์˜ ์„ : pythonicํ•จ์ด๋ž€?

ํ‰ํ™”๋กญ๋˜ ์–ด๋А ๋‚ - ์ฑ—์ง€ํ”ผํ‹ฐํ•œํ…Œ์„œ ๋ฏธ์…˜์„ ๋ฐ›์•˜๋‹ค. Zen of Python์ด๋ผ๋Š” ์ฒ ํ•™๋„ ์žˆ์–ด์š”. import this๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋ณผ ์ˆ˜ ์žˆ๋‹ต๋‹ˆ๋‹ค! ๊ทธ๋ž˜์„œ ํ•ด๋ดค๋‹ค. ๊ทธ๋žฌ๋”๋‹ˆ ํŒŒ์ด์ฌ์˜ ์ถ”๊ตฌ๋ฏธ(?)๋ฅผ ๋‹ด์€ ์‹œ๊ฐ€ ํ•œ ํŽธ ๋‚˜์™”๋‹ค! The Zen of Python, by Tim Peters Beautiful is better than ugly. ...

Trending Tags