기본문법을 마치며... 더 알아보기이제까지 포스팅한 내용 외에 추가적으로 알아가야 할 문법과 개념들을 모아봤습니다.제네릭(Generics)서브스크립트(Subscript)접근수준(Access Control)ARC(Automatic Reference Counting)중첩타입(Nested Types)사용자정의 연산자(Custom Operators) 스위프트 기본문법 강좌는 여기서 마칩니다. 많은 도움이 되었길 소망합니다. yagom Blog : http://blog.yagom.netFacebook : https://fb.com/yagomsoftFacebook Page : https://fb.com/yagompageFacebook Group : https://fb.com/groups/yagomContacts : https://yago.. 더보기 고차함수 고차함수고차함수(Higher-order function)은 '다른 함수를 전달인자로 받거나 함수실행의 결과를 함수로 반환하는 함수'를 뜻합니다.스위프트의 함수(클로저)는 일급시민(first-citizen)이기 때문에 함수의 전달인자로 전달할 수 있으며, 함수의 결과값으로 반환할 수 있습니다. 이번 파트에서는 스위프트 표준라이브러리에서 제공하는 유용한 고차함수에 대해 알아봅니다.mapfilterreducemap, filter, reduce 함수는 스위프트 표준 라이브러리의 컨테이너 타입(Array, Set, Dictionary 등)에 구현되어 있습니다. 소스코드 mapmap함수(메서드)는 컨테이너 내부의 기존 데이터를 변형(transform)하여 새로운 컨테이너를 생성합니다. > 변형하고자 하는 numbe.. 더보기 오류처리 오류처리스위프트에서 오류(Error)는 Error라는 프로토콜을 준수하는 타입의 값을 통해 표현됩니다. Error 프로토콜은 사실상 요구사항이 없는 빈 프로토콜일 뿐이지만, 오류를 표현하기 위한 타입(주로 열거형)은 이 프로토콜을 채택합니다. 스위프트의 열거형은 오류의 종류를 나타내기에 아주 적합한 기능입니다. 연관 값을 통해 오류에 관한 부가 정보를 제공할 수도 있습니다. 이번 예제에는 프로그램 내에서 자판기를 작동시키려고 할 때 발생하는 오류상황을 구현해 보았습니다. 소스코드 오류표현Error 프로토콜과 (주로)열거형을 통해서 오류를 표현합니다enum 오류종류이름: Error { case 종류1 case 종류2 case 종류3 //... } > 자판기 동작 오류의 종류를 표현한 VendingMachi.. 더보기 익스텐션 익스텐션익스텐션(Extension) 은 스위프트의 강력한 기능 중 하나입니다. 익스텐션은 구조체, 클래스, 열거형, 프로토콜 타입에 새로운 기능을 추가 할 수 있는 기능입니다. 기능을 추가하려는 타입의 구현된 소스 코드를 알지 못하거나 볼 수 없다 해도, 타입만 알고 있다면 그 타입의 기능을 확장할 수도 있습니다. 스위프트의 익스텐션이 타입에 추가할 수 있는 기능연산 타입 프로퍼티 / 연산 인스턴스 프로퍼티 타입 메서드 / 인스턴스 메서드이니셜라이저서브스크립트 중첩 타입특정 프로토콜을 준수할 수 있도록 기능 추가 익스텐션은 타입에 새로운 기능을 추가할 수는 있지만, 기존에 존재하는 기능을 재정의 할 수는 없습니다. 클래스의 상속과 익스텐션을 비교해보겠습니다. 이 둘은 비슷해보이지만 실제 성격은 많이 다릅.. 더보기 프로토콜 프로토콜프로토콜(Protocol)은 특정 역할을 수행하기 위한 메서드, 프로퍼티, 기타 요구사항 등의 청사진을 정의합니다. 구조체, 클래스, 열거형은 프로토콜을 채택(Adopted)해서 특정 기능을 수행하기 위한 프로토콜의 요구사항을 실제로 구현할 수 있습니다. 어떤 프로토콜의 요구사항을 모두 따르는 타입은 그 프로토콜을 준수한다(Conform)고 표현합니다. 타입에서 프로토콜의 요구사항을 충족시키려면 프로토콜이 제시하는 청사진의 기능을 모두 구현해야 합니다. 즉, 프로토콜은 기능을 정의하고 제시 할 뿐이지 스스로 기능을 구현하지는 않습니다. 소스코드 정의 문법protocol 키워드를 사용하여 정의합니다.protocol 프로토콜 이름 { /* 정의부 */ } 프로토콜 구현protocol Talkable .. 더보기 이전 1 2 3 4 5 ··· 109 다음