Swfit 4

[ReactorKit] ReactorKit 공부하기 #1

ReactorKit 공부하기 #1 해당 포스팅은 ReactorKit 3.2.0을 기준으로 함 오늘은 ReactorKit에 대해서 공부해보려고 함.MVVM을 사용하고 있는데 무신사 등에서 리액터 킷을 사용하고 있대서 학습해보고자 함. 오픈소스 링크 및 설명https://github.com/ReactorKit/ReactorKithttps://www.slideshare.net/devxoul/hello-reactorkit Basic ConceptReactorKit은 반응적이고 단방햑적인 Swift 아키텍처를 위한 프레임워크   ReactorKit은 Flux와 Reactive Programming의 조합user의 Action과 View의 상태는 observable streams을 통해 각각의 레이어에 전달이러한 ..

Swift 디자인패턴 Command Pattern (복합체 패턴)

Swift 디자인패턴 Command Pattern (복합체 패턴) Command 패턴은 행동 패턴 중 하나로, 특정 작업을 수행하기 위한 정보를 명령 객체에 캡슐화하는 방식. 히스토리2022-07-05: 디자인 패턴 스터디 정리2024-11-26: 포스팅 글 재정리 및 조금 더 실용적인 예제 코드로 변경   Command PatternCommand Pattern은 일반적으로 3개지 개념으로 구성됨Command: 특정 작업을 수행하는 메서드를 호출하는 객체. 실행할 작업에 대한 정보를 포함Invoker(호출자): Command 객체를 호출하여 작업을 실행하는 역할. Invoker는 명령을 실행하기 위해 Command 객체를 참조Receiver(수신자): 실제 작업을 수행하는 객체. 명령 객체는 Receiv..

[Swift] BOJ 23034 조별과제 멈춰! (실패: 시간초과)

BOJ 23034 조별과제 멈춰! ✅ 시간초과로 인하여 실패한 문제입니다. 누군가 이 문제를 푼다면 제게 꼭 알려주세요! 그냥 쉽게 크루스칼 사용해서 풀면 되겠다 싶었는데, 시간 초과를 해결할 수 없었다. Swift 언어로 통과한 사람이 아무도 없는걸 보면은 안되는건가 싶으면서도, 주어진 데이터 크기와 알고리즘을 고려해 보았을 때, 해결할 방법이 분명히 있을탠데 모르겠다. 🟠 시도해 본 방법 1. FileIO 사용해서 데이터 빨리 입력 받기 (https://gist.github.com/JCSooHwanCho/30be4b669321e7a135b84a1e9b075f88) 2. cost의 범위를 Double로 바꾸기 (Int형 오버플로 날 수도 있어서) 3. questions tuple -> Array로 변경..

[Swift] BOJ 1920 수 찾기

BOJ 1920 수 찾기 ✅ 이진탐색을 구현하는 문제이다. 아니 이진탐색 그 자체이다. ✅ 코드 자료구조와 함께 추가하였다. 이진 탐색 포스팅은 최대한 빨리 하도록하자 import Foundation /// 오름차순으로 정렬 된 리스트에서 item의 index를 반환합니다. 없으면 -1 func binarySearchForAscending(array: [T], item: T) -> Int { var low = 0 var high = array.count - 1 while low item { high = mid - 1 } else { low = mid + 1 } } return -1 } _ = Int(readLine()!)! var searchList = [Int]() var input = readLine..