SWIFT

사이드 프로젝트에서 믹스패널 토큰이 들어가있는데, 개발용이랑 배포용 토큰이 달라야하지 않나라는 생각이 들었다. "그럼 디버그랑 릴리즈를 다르게 처리해주면 되겠네" 하는 생각으로 SwiftCompiler의 정확한 사용방법을 드디어 찾아보게 되었다. 스키마를 다르게 적용하는 방법도 아주 간단히 알아보았다-! ✨ 코드에서 DEBUG, RELEASE 분기 처리하기 ✨ 방법 1. RELEASE 플래그 설정하기 1) 프로젝트 파일 > TARGETS-프로젝트명 > Build Settings > All, Combined 설정 2) 하단으로 쭉 내려보면 Swift Compiler - CustomFlags에 초기에는 Debug 만 설정되어 있을 텐데, 하단 Release에 "RELEASE"를 추가해주면 된다! 3) 코..
mutating이란?! 값 타입(구조체와 열거형)의 인스턴스 메서드에서 자신 내부의 값을 변경하고자 할 때 사용하는 키워드. 구조체 메소드에서 구조체 프로퍼티를 수정할때는 mutating 키워드를 사용해 해당 메소드가 호출 되었을때 프로퍼티가 변경 될 수 있음을 명시해야 합니다. struct Person { var name = "홍길동" mutating func changeName(name: String) { self.name = name } } var person = Person() var person2 = person // 참조 var person3 = person // 참조 p2.x = 3 //COW 실제 복사가 일어남 더 알아볼까요?! 보통 값 타입의 프로퍼티는 인스턴스 메서드에서 수정할 수 없습..
Swift에서는 의존성 주입(Dependency Injection)을 위해 다양한 방법을 사용할 수 있습니다. 그 중 대표적인 방법 중 하나인 프로토콜을 사용한 의존성 주입에 대해 예시와 함께 알아봅시다. 계산기를 만드는 애플리케이션을 개발한다고 가정해봅시다. 숫자를 입력받고, 사칙연산을 수행하는 기능이 필요하겠죠? 이때, 숫자를 입력받는 기능과 사칙연산을 수행하는 기능을 각각 별도의 클래스로 분리하고, 이 클래스들이 서로 의존하지 않도록 하는 것이 좋다고 합니다. 코드의 가독성과 유지보수성이 향상되고, 테스트도 더욱 쉬워지기 때문이죠! 이를 위해, 우리는 다음과 같은 프로토콜을 정의할 수 있습니다. protocol NumberInput { func getNumber() -> Int } protocol ..
https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 해당 문제를 풀면서 누적합을 처음 접했다. 문제를 보고 값을 계산해서 저장해서 꺼내서 사용하면 될 것 같다는 생각은 들었는데, 정확한 해결방법이 누접합!인지는 몰랐다..! 누적합에 대해 알아보자! 누적합 특정 구간의 합을 찾는데 유용한 알고리즘 누적합 알고리즘은 연속된 원소들의 합을 빠르게 계산하는 알고리즘입니다. 배열과 같은 시퀀스 데이터에서 일부 구간의 합을 찾는 데 사..
dropFirst(_:) 지정된 개수의 초기 요소를 제외하고, 모두 포함된 서브시퀀스를 반환합니다. func dropFirst(_ k: [Int]() = 1) -> Self.SubSequence k 컬렉션 시작 부분에서 삭제할 요소의 수. k는 0보다 크거나 같아야 합니다. 기본은 1입니다. removeFirst(_:) 컬렉션의 시작 부분에서 지정한 수의 요소를 제거합니다. mutating func removeFirst(_ k: Int) k 컬렉션에서 제거할 요소의 수. k는 0 이상이어야 하며 컬렉션의 요소의 수를 초과할 수 없습니다. 주요 차이점 이 두 메서드의 주요 차이점은 dropFirst는 요소를 제거한 새로운 배열을 반환하면서 원본 배열은 변경되지 않는 반면, removeFirst는 첫 번째 ..
JINiOS
'SWIFT' 태그의 글 목록 (2 Page)