๐ป ๊ฐ๋ฐ/iOS
2022.04.20
๊ณต๋ถํ ๊ฒ ์ ์ฒ๊ธฐ 21๋
3ํ์ฐจ ์๊ฒ๋ ๊ฒ [1๊ณผ๋ชฉ] ์ํํธ์จ์ด ์ค๊ณ 1. ๋๋ฐ์ฐ ๋ถ์ ๊ธฐ๋ฒ - ๊ฐ์ฒด ๋ชจ๋ธ๋ง -> ๋์ ๋ชจ๋ธ๋ง -> ๊ธฐ๋ฅ ๋ชจ๋ธ๋ง ์์ผ๋ก ์งํน - ๊ฐ์ฒด ๋ชจ๋ธ๋ง : ์ ๋ณด ๋ชจ๋ธ๋ง์ด๋ผ๊ณ ๋ ๋ถ๋ฅด๋ฉฐ ํด๋์ค ๋ค์ด์ด๊ทธ๋จ์ ์์ฑ - ๋์ ๋ชจ๋ธ๋ง : ์ํ ๋ค์ด์ด๊ทธ๋จ์ ์์ฑ - ๊ธฐ๋ฅ ๋ชจ๋ธ๋ง : ์๋ฃ ํ๋ฆ๋(Data Flow Diagram)์ ์์ฑ 2. ์๊ตฌ์ฌํญ ๊ฐ๋ฐ ํ๋ก์ธ์ค ๋์ถ(์๊ตฌ์ฌํญ ์์ง) -> ๋ถ์ -> ๋ช
์ธ -> ํ์ธ(์๊ตฌ์ฌํญ ๊ฒ์ฆ) 3. ์ ์์ผ ๊ฐ๋ฐ ํ๋ก์ธ์ค - ์ต์คํธ๋ฆผ ํ๋ก๊ทธ๋๋ฐ : XP, ๊ณ ๊ฐ๊ณผ ํจ๊ผ 2์ฃผ ์ ๋์ ๋ฐ๋ณต ๊ฐ๋ฐ, TDD - ์คํฌ๋ผ : 30์ผ๋ง๋ค ๋์ ๊ฐ๋ฅํ ์ ํ์ ์ ๊ณตํ๋ ์คํ๋ฆฐํธ ๊ฐ๋ฐ 4. UML ๊ด๊ณ - ์ผ๋ฐํ : Generalization, ์ค์ ์ผ๊ฐ ํ์ดํ, ์ผ๋ฐ์ ์ธ ๊ฒ๊ณผ ..
๐ป ๊ฐ๋ฐ/iOS
2022.04.18
๊ณต๋ถํ ๊ฒ ์ ์ฒ๊ธฐ 21๋
1ํ์ฐจ ์๊ฒ๋ ๊ฒ [1๊ณผ๋ชฉ] ์ํํธ์จ์ด ์ค๊ณ 1. ๋์์ธ ํจํด - ์์ฑ ํจํด : ์ถ์ ํฉํ ๋ฆฌ, ๋น๋, ํฉํ ๋ฆฌ ๋ฉ์๋, ํ๋กํ ํ์
, ์ฑ๊ธํค - ๊ตฌ์กฐ ํจํด : ์ด๋ํฐ, ๋ธ๋ฆฌ์ง, ์ปดํผ์งํธ, ๋ฐ์ฝ๋ ์ดํฐ, ํผ์ฌ๋, ํ๋ก์ - ํ์ ํจํด : ์ปค๋งจํธ, ์ต์ ๋ฒ, ์ ๋ต, ์ํ 2. ๊ฐ์ฒด์งํฅ ๋ถ์ ๋ฐฉ๋ฒ๋ก - Cord-Yourdon : E-R ๋ค์ด์ด๊ทธ๋จ์ ์ฌ์ฉํ์ฌ ๊ฐ์ฒด์ ํ์๋ฅผ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง ํ๋๋ฐ ์ด์ 3. ์ํํธ์จ์ด ์์คํ
๋ถ์ - ํ๋ซํผ ๊ธฐ๋ฅ ๋ถ์ - ํ๋ซํผ ์ฑ๋ฅ ํน์ฑ ๋ถ์ - ์ด์์ฒด์ ๋ถ์ - ๋คํธ์ํฌ ๋ถ์ - DBMS ๋ถ์ 4. UML - ํด๋์ค ๋ค์ด์ด๊ทธ๋จ : ์์คํ
์ ๊ตฌ์ฑํ๋ ํด๋์ค๋ค ์ฌ์ด์ ๊ด๊ณ๋ฅผ ํ์ - ์กํฐ๋นํฐ ๋ค์ด์ด๊ทธ๋จ : ์์คํ
๋ด๋ถ์ ์กด์ฌํ๋ ์ฌ๋ฌ ํ์์ ๋ถ๊ธฐ ๋ฐ ์กฐ๊ฑด์ ํ์ ..
๐ป ๊ฐ๋ฐ/iOS
2022.04.17
๊ณต๋ถํ ๊ฒ ์ ์ฒ๊ธฐ 22๋
1ํ์ฐจ ์๊ฒ๋ ๊ฒ [1๊ณผ๋ชฉ] ์ํํธ์จ์ด ์ค๊ณ 1. ์ํํธ์จ์ด ์ค๊ณ ๋ฐฉ๋ฒ - ์ํฅ์ ์ค๊ณ ๋ฐฉ๋ฒ : ๋ฐํ
์
, ์์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ฌ ํฐ ๋ฌธ์ ๋ก ํตํฉ, ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ (Java) - ํํฅ์ ์ค๊ณ ๋ฐฉ๋ฒ : ํ๋ค์ด, ํฐ ๋ฌธ์ ๋ฅผ ์์ ๋ฌธ์ ๋ก ๋ถํด, ์ ์ฐจ ์ค์ฌ ํ๋ก๊ทธ๋๋ฐ (C) 2. ๋ฐ์ดํฐ ํ๋ฆ๋ - ํ๋ก์ธ์ค : ์ - ๋ฐ์ดํฐ ํ๋ฆ : ํ์ดํ - ๋ฐ์ดํฐ ์ ์ฅ : ํํ์ - ์ข
๋ฃ : ์ฌ๊ฐํ 3. UI ์ค๊ณ ๋๊ตฌ - ์์ด์ด ํ๋ ์ : ํ์ด์ง์ ๋ํ ๋๋ต์ ์ธ ๋ ์ด์์ ๋ฐ UI ์์ ์ค๊ณ - ๋ชฉ์
: ์์ด์ด ํ๋ ์์์ ๋์์ธ, ์ฌ์ฉ ๋ฐฉ๋ฒ ์ค๋ช
, ํ๊ฐ๋ฅผ ์ํด ์ค์ ํ๋ฉด๊ณผ ์ ์ฌํ๋๋ก UI๋ฅผ ๋ณ๊ฒฝ (์ ์ ) - ์คํ ๋ฆฌ๋ณด๋ : ์์ด์ด ํ๋ ์์์ ์ฝํ
์ธ ์ค๋ช
, ํ๋ฆ๋ ์ถ๊ฐ - ํ๋กํ ํ์
: ์์ด์ด ํ๋ ์..
๐ป ๊ฐ๋ฐ/Android
2022.04.11
GitHub - k906506/MVVM: ๐จ MVVM์ด ๋ญ์์? ๐จ MVVM์ด ๋ญ์์? Contribute to k906506/MVVM development by creating an account on GitHub. github.com ์์ฆ MVVM ์ ๋ํด์ ๊ณต๋ถํ๊ณ ์๋ค. ์ง๊ธ๊น์ง ์ฑ ๊ตฌํํ ๋ ๊ทธ๋ฅ ์กํฐ๋นํฐ์ ๋ค ๋๋ ค๋ฐ์์๋๋ฐ ๋ชจ๋ธ์ด๋ ๋ทฐ๊ฐ ๋๋ฌด ๊ฐํ๊ฒ ๊ฒฐํฉ๋์ด ์๋ ๋๋์ด ๊ฐํ๋ค. ๋ํ ๋๋ถ๋ถ์ ๋ก์ง์ ๋ทฐ(์กํฐ๋นํฐ)์์ ์ฒ๋ฆฌํ๊ณ ํ๊ณ ์์๊ณ ์ฌ์ฌ์ฉ์ฑ์ด ๋งค์ฐ ๋จ์ด์ก์๋ค. ์ค์ ๋ก ๊ฒจ์ธ๋ฐฉํ์ ์งํํ๋ ๊ธ๋ก๋ฒ์ธ์ฌํธ๋ ๋ ์ดํ ์ ํ๋ ๋ง๋ค์๊ณ ๋๋ฆ ๋ถ๋ฆฌํ๋ค๊ณ ๋ถ๋ฆฌํ๋๋ฐ ์ง์ง ์ฌ์ฌ์ฉ์ฑ์ด 0 ์ด์๋ค. MVC ๊ฐ ๊ตฌํํ๊ธฐ๋ ์ ๋ง ํธํ์ง๋ง ์ด ๊ธฐํ์ ํจํด ๊ณต๋ถ๋ ํ ๊ฒธ MVVM ์ ์ ํ๊ฒ ๋์๋ค. ๋ฌผ๋ก MVC ..
โ๏ธ ์ฝํ
์ค๋น/Back Tracking
2022.04.10
๋ฌธ์ ํ์ด ์ธ์ด Kotlin ์ฝ๋ import java.lang.Integer.min import java.util.* import kotlin.math.abs import kotlin.system.exitProcess lateinit var board: Array lateinit var visited: Array var min_value = Int.MAX_VALUE var n = 0 fun main() = with(Scanner(System.`in`)) { n = nextInt() board = Array(n) { Array(n) { nextInt() } } visited = Array(n) { 0 } search(0, 0) println(min_value) } fun search(index: Int,..
โ๏ธ ์ฝํ
์ค๋น/Back Tracking
2022.04.10
๋ฌธ์ ํ์ด ์ธ์ด Kotlin ์ฝ๋ import java.util.* var l = 0 var c = 0 lateinit var array: Array lateinit var sortedArray: Array lateinit var visited: Array var stringBuilder = StringBuilder() fun main() = with(Scanner(System.`in`)) { l = nextInt() c = nextInt() array = Array(c) { next() } sortedArray = array.sortedArray() visited = Array(c) { 0 } dfs(0, 0) println(stringBuilder) } fun dfs(index: Int, depth:..
โ๏ธ ์ฝํ
์ค๋น/Back Tracking
2022.04.10
๋ฌธ์ ํ์ด ์ธ์ด Kotiln ์ฝ๋ import java.lang.Integer.max import java.util.* var n = 0 var m = 0 var max_value = 0 val dx = listOf(-1, 1, 0, 0) val dy = listOf(0, 0, -1, 1) lateinit var board: Array lateinit var check: Array fun main() = with(Scanner(System.`in`)) { n = nextInt() m = nextInt() board = Array(n) { Array(m) { "" } } check = Array(26) { 0 } for (i in 0 until n) { val s = next().chunked(1) for..
โ๏ธ ์ฝํ
์ค๋น/Math
2022.04.06
์ดํญ ๊ณ์ 1 ๋ฌธ์ ํ์ด ์ธ์ด Kotiln ์ฝ๋ import java.util.* lateinit var array: Array var n = 0 var k = 0 fun main() = with(Scanner(System.`in`)) { n = nextInt() k = nextInt() // ์ฌ๊ท ๋์ DP๋ก ํฉํ ๋ฆฌ์ผ ๊ตฌํ array = Array(n + 1) { 1 } // ํฉํ ๋ฆฌ์ผ ๊ณ์ฐ for (i in 2..n) { array[i] = array[i - 1] * i } // ์กฐํฉ ๊ณต์ ์ ์ฉ // nCr = n! / (n-r)! * r! println(array[n] / (array[n - k] * array[k])) } ํ์ด ๋ฐฉ๋ฒ ๊ณ ๋ฑํ๊ต ๋ ๋ฐฐ์ด ์กฐํฉ ๊ณต์ ์ ์ ์ฉํ๋ฉด ์ด๋ ต์ง ์๊ฒ ํด๊ฒฐํ ์ ์..
โ๏ธ ์ฝํ
์ค๋น/Implementation
2022.04.04
๋ฌธ์ ํ์ด ์ธ์ด Kotlin ์ฝ๋ import java.util.* data class Point( val x: Int, val y: Int ) data class Points( val red_x: Int, val red_y: Int, val blue_x: Int, val blue_y: Int, val depth: Int ) data class Infos( val x: Int, val y: Int, val cnt: Int ) lateinit var array: Array val dx = arrayOf(1, -1, 0, 0) val dy = arrayOf(0, 0, 1, -1) var n = 0 var m = 0 var red = Point(0, 0) var blue = Point(0, 0) fun mai..
โ๏ธ ์ฝํ
์ค๋น/Back Tracking
2022.03.31
๋ฌธ์ ํ์ด ์ธ์ด kotlin ์ฝ๋ import java.lang.Integer.max import java.lang.Integer.min import java.util.* var n = 0 var max_value = Int.MIN_VALUE var min_value = Int.MAX_VALUE lateinit var array: Array lateinit var operator: Array fun main() = with(Scanner(System.`in`)) { n = nextInt() array = Array(n) { nextInt() } operator = Array(4) { nextInt() } calculate(array[0], 1) println(max_value) println(min_va..