개발/Swift (6) 썸네일형 리스트형 5. 컬렉션 컴퓨터과학에서 컬렉션(Collection)이라고 하면 일반적으로 다수의 데이터들의 모음을 얘기한다.대부분의 프로그래밍 언어는 이러한 모음을 다루는 방법들을 제공하며, 스위프트 역시 Array, Set, Dictionary와 같은 컬렉션 타입을 통해 이를 제공한다. 참고로, 보통 컬렉션 타입으로 된 데이터들은 동일한 타입일 것이라 가정하는 경우가 일반적이다.하지만 언어나 구현 방식에 따라 동일하지 않은 타입으로도 컬렉션을 만들 수 있어 절대적인 규칙이라 받아드리면 안되니 주의할 것. 스위프트에서는 해당 컬랙션에 대해 아래와 같이 간략하게 소개하고 있다.배열(Array)은 컬렉션 값에 순서를 가지고 있음.집합(Set)은 반복되지 않는 값에 순서가 없는 컬렉션 타입.딕셔너리는(Dictionary) 키-값 쌍의.. 4. 클로저 1. 클로저클로저란?클로저는 현대적인 프로그래밍 언어라면 대부분 지원하는 기능이다.클로저란 자신이 정의된 스코프 외부의 변수를 캡처하여, 해당 값을 자신의 실행 컨텍스트에 포함하는 코드 블록을 의미한다. Swift에서 클로저는 매우 핵심적인 개념이며,함수 또한 이름을 가진 클로저라고 볼 수 있을 정도로 클로저가 상위 개념에 가깝다.즉, 함수는 클로저의 한 형태라고 설명해도 큰 무리는 없다.func makeAdder() -> (Int) -> Int { var x = 10 return { value in x += value return x }}let adder = makeAdder()adder(5) // 15adder(3) // 18위 코드는 클로저의 개념을 설명.. 3. 함수 1. 함수의 정의와 호출앞서 프로그램은 사용자가 입력한 값을 가공하여 그 결과를 다시 사용자에게 돌려주는 것이라고 설명했다.혹자는 이를 수학의 함수에 빗대어 설명하기도 한다. 프로그램을 큰 틀에서 보면 하나의 수학적 함수처럼 보이지만, 내부를 들여다보면 수많은 함수들이 서로 조합되어 하나의 프로그램을 구성하고 있음을 알 수 있다. 이처럼 함수는 프로그램을 이루는 핵심 요소라 할 수 있다.코딩에서 함수란 특정 작업을 수행하는 독립적인 코드 블록을 의미하며, 코드 블록에 이름을 붙이고 그 이름을 호출하는 방식으로 실행된다. 스위프트 함수의 일반적인 문법과 호출 방식은 아래와 같다.// 문법func 이름(매개변수 이름: 매개변수 타입, ...) -> 반환결과 타입 { 실행부분 return 반환값}/.. 2. 제어문 앞에서 프로그램은 수많은 데이터의 집합으로 이루어져 있다고 설명했다.하지만 데이터만 모아 놓는다고 해서 프로그램이 되는 것은 아니다.프로그램의 목적은 주어진 데이터를 가공하여 사용자가 원하는 결과를 내놓는 것인데 이때 데이터를 가공할때 사용하는 것이 제어문이다.이제 이러한 제어문에 대해 하나씩 정리해본다.Swift에서는 데이터를 제어하는 방법으로 크게 2가지 방식을 제공하며, 그 방식은 다음과 같다.조건문반복문Swift는 크게 이 2가지 제어문을 써서 데이터를 가공, 처리하여 사용자에게 원하는 결과를 제공한다.⸻1. 조건문조건문은 특정 조건에 따라 실행 흐름을 분기시키는 역할을 한다.Swift에서는 크게 if, switch 이 두개를 통해 조건 분기를 구성한다.⸻if, else if, else 문if는 .. 1. 기본 문법 1. 변수(variable)와 상수(constant)프로그래밍에서 변수와 상수는 데이터를 담는 그릇이라고 생각하면 된다.프로그램은 수많은 데이터들의 집합으로 이루어져 있으며, 이 데이터를 어떻게 효율적으로 저장하고 관리하느냐가 핵심이다. 이러한 데이터를 체계적으로 다루기 위한 방법이 바로 변수와 상수이다.필요한 값을 저장해 두었다가 꺼내 쓰고, 수정하거나 유지하는 모든 과정은 변수와 상수를 통해 이루어진다. ⸻스위프트에서 변수와 상수 선언하기스위프트에서는 다음과 같은 문법으로 변수와 상수를 선언한다. var 변수명: 데이터타입 = 값let 상수명: 데이터타입 = 값 여기서 선언이란,어떤 데이터를 담을 공간을 만들겠다고 컴파일러에게 알리는 행위이다.즉, 앞으로 이 이름을 가진 저장 공간을 사용할 것이라는 .. 0. Prologue 스위프트는 왜 탄생했을까 요근래 스위프트 언어 자체에 다소 소홀해진 감이 들어, 문법을 복습하면서 정리한 내용을 포스팅으로 써보기로 결심했다.어떤 내용을 다룰지 목차를 구성하고, 전체 흐름을 정리하던 중 문득 한 가지 궁금증이 떠올랐다. 애플은 왜 기존의 Objective-C를 두고 새로운 언어를 만들었을까? 이 질문을 시작으로, 스위프트의 탄생 배경과 그 이면에 깔린 맥락을 하나씩 찾아보게 되었다. 스위프트의 시작 스위프트는 크리스 래트너(Chris Lattner)의 개인 프로젝트에서 출발한 것으로 알려져 있다.이 프로젝트는 2010년경 시작되었고, 이후 애플 내부에서 소수 정예의 비밀 팀이 꾸려지며 점차 확장되었고,2013년 즈음에는 내부적으로 정식 프로젝트로 자리 잡으며 본격적인 개발이 이루어졌다.. 이전 1 다음