본문 바로가기
728x90

전체 글24

컬렉션타입 - Set(집합) Set이란? 컬렉션 타입의 한 종류로 생김새는 배열과 같이 생겨 구분을 하기 어렵다. 그렇기 때문에 Set을 생성시에는 반드시 타입선언을 해줘야 한다. let set: Set = [1, 2, 2, 3] print(set) // 결과값: [2, 1, 3] 결과값이 순서대로 나오지 않는다. 이처럼 배열과의 가장 큰 차이점에는 두가지가 있다. 1. 요소값을 중복으로 넣어도, 집합의 의미상 요소는 중복 저장이 안된다. (각 요소는 유일한 값 - Hashable해야한다.) 2. 요소들의 순서가 없다. 그렇기 때문에 Set은 주로 정렬순서보다 검색속도가 중요한경우에 사용한다. (내부적으로 값의 검색에 Hashing알고리즘을 사용하기 때문이다.) Set은 서브스크립트 문법이 없고, (배열과 달리 순서도 없고, 딕셔너.. 2022. 11. 5.
프로그래밍 패러다임 - 함수형 프로그래밍 함수형 프로그래밍이란? 미리 만들어진 함수를 이용해서 사이드-이펙트(부작용)가 없도록 선언형으로 프로그래밍 하는 것이다. 미리 만들어진 함수를 사용하지 않고 프로그래밍하는 것(처음배우는 프로그래밍 방식)을 명령형 프로그래밍이라고 하는데 먼저 명령형 프로그래밍을 사용한 방식은 // 아래의 배열 중에, 홀수만 제곱해서, 그 숫자를 다 더한 값은? var numberArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] var j = 0 for i in numberArray { if i % 2 != 0 { j = j + (i * i) } } print( j ) // 결과값: 165 간단한 내용이지만 다른 개발자가 코드만 본다면 중간과정을 하나하나 뜯어 고쳐봐야 알 수 있다. 하지만 선언형 프로.. 2022. 11. 5.
컬렉션타입 - Dictionary(딕셔너리) Dictionary(딕셔너리)란? 컬렉션 타입의 한 종류로 데이터를 키와 값으로, 하나의 쌍으로 만들어 관리하는 순서가 없는 컬렉션이다. - [대괄호]로 묶는다. - 키값은 유일해야한다.(구분하는 요소이기 때문에), 값(value)은 중복 가능하다. - 한개의 딕셔너리에는 동일한 자료형 쌍의 데이터만 담을 수 있다. - 키값은 Hashable해야한다. Hashable이란? 어떤 타입이 Hashable이라는 뜻은 해당 타입을 해시함수의 input값으로 사용가능하다는 뜻이다. (Swift에서는 String, Int, Double등 기본타입이 모두 Hashable한 타입이다.) 딕셔너리는 내부적으로 순서가 정해져 있지 않다. 그래서 배열보다 검색속도가 빠르다.(배열처럼 순서대로 값을 찾는 방식이 아닌 키값으로.. 2022. 11. 5.
서버, 클라이언트란? 서버란? 말 그대로, 서빙을 해주는 사람? 이라고 생각하자.(쉬운 이해를 위해) 클라이언트란? 고객, 손님(앱, 웹, 데스크톱 프로그램)이라고 생각하자.(쉬운 이해를 위해) 데이터베이스(DB)란? 자료의 창고이다. 모든 서비스는 CRUD를 기반으로 한다. CRUD에 대해서는 나중에 따로 정리해서 작성해놓자! 결국, 클라이언트가 원하는 데이터를 요청하면 서버는 데이터베이스에 있는 데이터(자료)중 클라이언트가 원하는 데이터를 뽑아 제공해주는 역할인 것이다. 이러한 과정이 API를 이용해서 데이터를 요청하고 받는 과정이다. API란? - 제공해주는 주문서라고 생각하면 편하다. http://ko.wikipedia.org/wiki/API API - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전... 2022. 11. 4.
컬렉션타입 - Array(배열) 시작 전에, 컬렉션 타입에 대해 이해를 하면 좋다. 컬렉션 타입이란 데이터를 효율적으로 관리하기 위한 자료형으로 Swift에서 사용하는 여러개의 데이터를 한꺼번에 다루는 바구니 타입이다. 컬렉션 타입의 종류로는 Array(배열), Dictionary(딕셔너리), Set(집합) 이 세가지가 있다. 그 중, Array(배열)에 대해 알아보자. 1. Array(배열) - 데이터를 순서대로 저장하는 컬렉션으로 - [대괄호]로 묶는다. 배열 인덱스의 시작은 0부터이다. (이건 모든 프로그래밍 언어의 공통적인 사항이다.) - 각각의 데이터는 요소(element)라고 지칭한다. - 1개의 배열에는 동일한 타입의 데이터만 담을 수 있다. - (순서가 있기 때문에) 값은 중복이 가능하다. 배열의 각 요소(element).. 2022. 11. 3.
Lottie(애니메이션 라이브러리) Airbnb에서 제공해주는 라이브러리로 스플래시 화면을 만들 때 매우 유용하다. https://github.com/airbnb/lottie-ios GitHub - airbnb/lottie-ios: An iOS library to natively render After Effects vector animations An iOS library to natively render After Effects vector animations - GitHub - airbnb/lottie-ios: An iOS library to natively render After Effects vector animations github.com 이 라이브러리를 다운받고(선호방식은 SPM) https://lottiefiles.com/.. 2022. 10. 31.
728x90