전체 κΈ€

iOS κΏ€μžΌ
πŸ’» 개발/iOS

[TIL] 22.04.18

κ³΅λΆ€ν•œ 것 μ •μ²˜κΈ° 21λ…„ 1회차 μ•Œκ²Œλœ 것 [1κ³Όλͺ©] μ†Œν”„νŠΈμ›¨μ–΄ 섀계 1. λ””μžμΈ νŒ¨ν„΄ - 생성 νŒ¨ν„΄ : 좔상 νŒ©ν† λ¦¬, λΉŒλ”, νŒ©ν† λ¦¬ λ©”μ†Œλ“œ, ν”„λ‘œν† νƒ€μž…, 싱글톀 - ꡬ쑰 νŒ¨ν„΄ : μ–΄λŒ‘ν„°, λΈŒλ¦¬μ§€, μ»΄νΌμ§€νŠΈ, λ°μ½”λ ˆμ΄ν„°, νΌμ‚¬λ“œ, ν”„λ‘μ‹œ - ν–‰μœ„ νŒ¨ν„΄ : 컀맨트, μ˜΅μ €λ²„, μ „λž΅, μƒνƒœ 2. 객체지ν–₯ 뢄석 방법둠 - Cord-Yourdon : E-R λ‹€μ΄μ–΄κ·Έλž¨μ„ μ‚¬μš©ν•˜μ—¬ 객체의 ν–‰μœ„λ₯Ό 데이터 λͺ¨λΈλ§ ν•˜λŠ”λ° 초점 3. μ†Œν”„νŠΈμ›¨μ–΄ μ‹œμŠ€ν…œ 뢄석 - ν”Œλž«νΌ κΈ°λŠ₯ 뢄석 - ν”Œλž«νΌ μ„±λŠ₯ νŠΉμ„± 뢄석 - 운영체제 뢄석 - λ„€νŠΈμ›Œν¬ 뢄석 - DBMS 뢄석 4. UML - 클래슀 λ‹€μ΄μ–΄κ·Έλž¨ : μ‹œμŠ€ν…œμ„ κ΅¬μ„±ν•˜λŠ” ν΄λž˜μŠ€λ“€ μ‚¬μ΄μ˜ 관계λ₯Ό ν‘œμ‹œ - μ•‘ν‹°λΉ„ν‹° λ‹€μ΄μ–΄κ·Έλž¨ : μ‹œμŠ€ν…œ 내뢀에 μ‘΄μž¬ν•˜λŠ” μ—¬λŸ¬ ν–‰μœ„μ™€ λΆ„κΈ° 및 쑰건을 ν‘œμ‹œ ..

πŸ’» 개발/iOS

[TIL] 22.04.17

κ³΅λΆ€ν•œ 것 μ •μ²˜κΈ° 22λ…„ 1회차 μ•Œκ²Œλœ 것 [1κ³Όλͺ©] μ†Œν”„νŠΈμ›¨μ–΄ 섀계 1. μ†Œν”„νŠΈμ›¨μ–΄ 섀계 방법 - 상ν–₯식 섀계 방법 : λ°”ν…€μ—…, μž‘μ€ 문제λ₯Ό ν•΄κ²°ν•˜μ—¬ 큰 문제둜 톡합, 객체 지ν–₯ ν”„λ‘œκ·Έλž˜λ° (Java) - ν•˜ν–₯식 섀계 방법 : νƒ‘λ‹€μš΄, 큰 문제λ₯Ό μž‘μ€ 문제둜 λΆ„ν•΄, 절차 쀑심 ν”„λ‘œκ·Έλž˜λ° (C) 2. 데이터 흐름도 - ν”„λ‘œμ„ΈμŠ€ : 원 - 데이터 흐름 : ν™”μ‚΄ν‘œ - 데이터 μ €μž₯ : 평행선 - μ’…λ£Œ : μ‚¬κ°ν˜• 3. UI 섀계 도ꡬ - 와이어 ν”„λ ˆμž„ : νŽ˜μ΄μ§€μ— λŒ€ν•œ λŒ€λž΅μ μΈ λ ˆμ΄μ•„μ›ƒ 및 UI μš”μ†Œ 섀계 - λͺ©μ—… : 와이어 ν”„λ ˆμž„μ—μ„œ λ””μžμΈ, μ‚¬μš© 방법 μ„€λͺ…, 평가λ₯Ό μœ„ν•΄ μ‹€μ œ ν™”λ©΄κ³Ό μœ μ‚¬ν•˜λ„λ‘ UIλ₯Ό λ³€κ²½ (정적) - μŠ€ν† λ¦¬λ³΄λ“œ : 와이어 ν”„λ ˆμž„μ—μ„œ μ½˜ν…μΈ  μ„€λͺ…, 흐름도 μΆ”κ°€ - ν”„λ‘œν† νƒ€μž… : 와이어 ν”„λ ˆμž„..

πŸ’» 개발/Android

[Android] MVVM νŒ¨ν„΄ 적용기 - 1

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

[λ°±νŠΈλž˜ν‚Ή / Kotlin] BOJ 14889 - μŠ€νƒ€νŠΈμ™€ 링크

문제 풀이 μ–Έμ–΄ 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

[λ°±νŠΈλž˜ν‚Ή / Kotlin] BOJ 1759 - μ•”ν˜Έ λ§Œλ“€κΈ°

문제 풀이 μ–Έμ–΄ 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

[λ°±νŠΈλž˜ν‚Ή / Kotlin] BOJ 1987 - μ•ŒνŒŒλ²³

문제 풀이 μ–Έμ–΄ 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

[μˆ˜ν•™ / Kotlin] BOJ 11050 ~ 11051 이항 κ³„μˆ˜ (1 ~ 2)

이항 κ³„μˆ˜ 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

[κ΅¬ν˜„ / Kotlin] BOJ 13459 - ꡬ슬 νƒˆμΆœ

문제 풀이 μ–Έμ–΄ 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

[λ°±νŠΈλž˜ν‚Ή / Kotlin] BOJ 14888 - μ—°μ‚°μž λΌμ›Œλ„£κΈ°

문제 풀이 μ–Έμ–΄ 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..

πŸ’» 개발/였늘의 μ‚½μ§ˆ

[Android / Kotlin] Failed to call observer method

였λ₯˜ λ°œμƒ Databinding + ViewModel + LiveData 둜 κ°„λ‹¨ν•œ MVVM 예제λ₯Ό κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄ Databinding 으둜 ν‘œν˜„ν•  λ³€μˆ˜(?)λ₯Ό layout μ•ˆμ— λΈ”λŸ­μ— λ„£μ–΄μ€¬λ”λ‹ˆ λ°œμƒν•œ 였λ₯˜ 였λ₯˜ λ‚΄μš© ν•΄κ²° String 으둜 λ³€ν™˜ν•˜μ§€ μ•Šμ•„μ„œ λ°œμƒν•œ 문제... γ…‹γ…‹γ…‹γ…‹γ…‹... toString() 을 ν•΄μ€¬λ”λ‹ˆ μ •μƒμ μœΌλ‘œ μž‘λ™ν–ˆλ‹€. μ°Έκ³  MVVM 예제 StackOverFlow

고도고도
🍎🍏