iOS/기본 원리
-
[iOS, Swift] Callback 함수와 ClosureiOS/기본 원리 2023. 8. 30. 10:41
Callback 함수는 특정 작업이나 함수의 완료 이후에 실행되도록 설계된 프로그래밍 패턴을 가리킵니다. 이러한 Callback 함수는 특히 비동기 작업에 많이 활용됩니다. 웹 요청 또는 파일 읽기와 같은 작업이 시작될 때, 이러한 함수에 callback을 전달하면 작업 완료 시 해당 callback 함수가 자동으로 호출되어, 결과를 처리하거나 발생한 오류를 관리합니다. Swift 언어에서는 이러한 Callback 기능을 구현하기 위해 Closure를 활용합니다. func fetchData(completion: (String) -> Void) { // 데이터를 비동기적으로 가져오는 가상의 코드 DispatchQueue.global().async { let data = "데이터" // 메인 스레드에서 완료..
-
[iOS, Swift] Optional 타입iOS/기본 원리 2023. 8. 29. 14:25
스위프트에서 Optional은 값을 가질 수도 있고, 없을 수도 있다는 것을 나타내는 독특한 타입입니다. 다른 프로그래밍 언어들에서는 주로 null 또는 nil을 사용하여 값의 부재를 표현합니다. 그러나 이러한 접근은 여러 문제점을 일으키기도 했습니다. 스위프트는 이런 문제점을 극복하고자 Optional이라는 개념을 도입하여 값을 가지지 않는 상황을 보다 안전하게 다룰 수 있도록 했습니다. Optional 변수를 선언하려면 해당 변수 타입 뒤에 '?'를 추가하여 표현합니다. Optional 타입은 값이 'wrap'되어 있다고 볼 수 있습니다. 이렇게 감싸진 값을 직접 사용하기 위해서는 'unwrap' 과정이 필요하며, 이 과정을 통해 원래의 값을 추출할 수 있습니다. var name: String? = ..
-
[Swift, 패턴] SOLID에 대한 개념iOS/기본 원리 2023. 8. 28. 12:22
SOLID는 객체 지향 디자인을 지향하면서 유지보수성, 확장성, 재사용성을 강조하는 원칙들의 약어입니다. 이 원칙들은 2000년대 초에 Robert C. Martin에 의해 처음으로 제시되었습니다. Swift 언어를 사용해 SOLID 원칙을 설명하는 예시를 제시하겠습니다. 1. Single Responsibility Principle (SRP) - 단일 책임 원칙 클래스는 오직 하나의 책임만을 지녀야 합니다. 이 원칙은 클래스가 바뀔 이유가 하나뿐이어야 함을 의미합니다. 이 원칙을 따르면 코드의 유지보수가 쉬워지며, 다른 기능에 대한 부작용 없이 한 기능을 수정할 수 있게 됩니다. // 나쁜 예시 class Employee { var name: String var salary: Double // 책임1:..