일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- DynamicProgramming
- 다이나믹프로그래밍
- SwiftUI
- binarySearch
- SwiftUI 튜토리얼
- SwiftUI Tutorials
- dfs
- Til
- IOS
- 이진탐색
- BFS
- SOPT
- APPJAM
- concurrency
- algorithm
- URLSession
- 0이끝이아니길
- SQL
- GCD
- 기초문법
- algoritm
- 연속펄스부분수열의합
- discardableResult
- Swift
- duno
- 고득점kit
- HAVIT
- 프로그래머스
- 동적계획법
- GroupBy
- Today
- Total
목록전체 글 (68)
suvera-dev 🥦
SOLID 원칙이란 ? SOLID 원칙이란 객체지향 설계에 더 좋은 아키텍쳐를 설계하기 위해 지켜야하는 원칙들의 5가지를 앞의 약어만 따서 정리한 단어입니다. SOLID 원칙을 왜 알아야하죠 ? 개발을 할 때 당장 기능을 구현하는 것도 중요하지만, 새롭게 어떤 기능이 추가되거나 유지보수가 필요할 때 더욱 생산성 있고 유연하게 대처가 가능해야 좋겠죠.? 이러한 좋은 설계를 위한 최소한의 원칙들을 정리한게 SOLID 원칙이라고 할 수 있는데요. VIPER나 MVVM도 모두 이런 원칙에 입각해서 만들어졌다고 합니다. SOLID 원칙을 적용하여 설계하면 ! 1. 재사용과 유지관리가 쉬운, 변경에 유연한 코드를 가지게 됩니다. 이는 튼튼한 소프트웨어를 만들 수 있게 하며 높은 확장성을 가지게 합니다. 2. 높은 ..
RxSwift 에서 구독을 하기 위한 메서드 3가지 ! 원래는 subscribe 만 알고있었고, UI 작업해줄때 bind 만 썼는데 .. 차이를 잘 모르고 그냥 쓴 것 같다 ㅋㅋ subscribe는 말그대로 구독하는거 구독대상의 상태가 변하면 값을 받아와서 처리 변하는 다음값, 에러, 끝날 때를 알고 코드 구현 가능. UI 작업에 많이 사용되는 메서드는 bind 와 drive bind는 Observable과 Observer를 하나로 묶어주는 역할 - bind의 내부에는 subscribe 가 있음 - 옵저버블이 방출한 이벤트를 그대로 binder에게 전달 그리고 binder는 UI 업데이트에 사용되는 옵저버의 일종 - bind는 onNext 이벤트에 대해서만 반응하고 error이벤트가 들어오면 에러 로그를..
안녕하세요 ! 오늘은 디자인패턴에 대해서 공부했던 내용을 기록하고자 합니다 :) 동아리에서 디자인 패턴 스터디를 시작하기도 했고, 평소에 책 사서 공부하는 것을 좋아해서 헤드퍼스트 디자인패턴 이라는 책을 구매하게 되었습니다. 이 책을 바탕으로 여러 디자인 패턴을 정리해보고, 책에 나와있는 예시 코드를 Swift로 직접 바꿔보려고 합니다 ! 오늘은 디자인 패턴이 뭔지, 그리고 왜 사용하는지, 종류에는 어떤 것들이 있는지 간단하게 찾아본 내용들을 기록하였습니다. 디자인 패턴이란 ? 디자인 패턴은 소프트웨어 설계에서 공통으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴 ! 입니다. 문제상황에 대한 재사용 가능한 해결방법으로써, 일종의 아이디어라고생각할 수 있을 거 같습니다 ! 즉, 저희가 소프..
Dynamic programming(동적계획법)이란 ? 메모리를 적절히 사용하여 수행시간 효율성을 비약적으로 향상시키는 방법 -> 메모리 공간을 최대한으로 활용할 수 있는 효율적인 알고리즘 작성 ! 대표적인 예시 : 피보나치 수열 - n 번째 피보나치 수 = (n-1)번째 피보나치 수 + (n-2)번째 피보나치 수 - 단, 1번째 피보나치 수 = 1,2 번째 피보나치 수 = 1 # 피보나치 함수 소스코드 def fibo(x): if x == 1 or x == 2: return 1 return fibo(x-1) + fibo(x-2) print(fibo(4)) -> But, 피보나치 수열의 소스코드를 이렇게 작성하면 심각한 문제가 생길 수 있다. 바로 f(n) 함수에서 n이 커지면 커질수록 수행 시간이 기하..