접근제어(Access Control) 접근제어란 코드끼리 상호작용을 할 때 파일 간 또는 모듈 간에 접근을 제한할 수 있는 기능 입니다. 이런 접근제어가 왜 필요할까요? 객체지향 프로그래밍 패러다임에서 중요한 캡슐화와 은닉화를 구현하려면 외부에서 보이지 않거나 접근하지 말아야 할 코드가 있습니다. 불필요한 접근으로 의도치 않은 결과를 초래하거나 꼭 필요한 부분만 제공해야하는데 전체 코드가 노출될 가능 성이 있을 때 우리는 접근제어를 통해 우리가 의도한 대로 코드를 사용하는 프로그래머에게 코드를 작성 하도록 유도할 수 있습니다. Swift접근 제어 모델은 모듈과 소스파일의 개념을 기반으로 합니다. 모듈 import 를 통해 다른 모듈로부터 불러들일 수 있는 하나의 코드 묶음 단위 Library / Fram..
참조 객체지향, 함수형, 프로토콜 지향 패러다임까지 한 번에! 야곰 / 한빛미디어 프로퍼티(Property)에 대해 알아 보겠습니다. 1. 프로퍼티 프로퍼티는 크게 5가지가 존재합니다. 저장 프로퍼티(Stored Properties) 지연 저장 프로퍼티(Lazy Stroed Properties) 연산 프로퍼티(Computed Properties) 프로퍼티 감시자(Property Observers) 타입 프로퍼티(Type Properties) 1.1 저장 프로퍼티(Stored Properties) 가장 단순한 개념의 프로퍼티로써 클래스 또는 구조체의 인스턴스와 연관된 값을 저장하는 프로퍼티입니다. 구조체의 저장 프로퍼티가 옵셔널이 아니더라도, 구조체는 저장 프로퍼티를 모두 포함하는 이니셜라이저를 자동으로 ..
구조체와 클래스에 대해 알아 보겠습니다. 구조체와 클래스 구조체와 클래스는 프로그래머가 데이터를 용도에 맞게 묶어 표현하고자 할 때 용이하고, 프로퍼티와 메소드를 사용하여 구조화된 데이터와 기능을 가질 수 있어 하나의 새로운 사용자정의 데이터 타입을 만들어 주는 것입니다. 스위프트에선 구조체와 클래스의 모습과 문법이 거의 흡사 합니다. 하지만 구조체의 인스턴스는 값 타입이고, 클래스이 인스턴스는 참조 타입이라는 차이점이 있습니다. 또 중요한 점은 데이터 타입과 열거형은 모두 값 타입입니다. 1. 구조체 먼저 구조체에 대해 알아 보겠습니다. 1.1 구조체 정의 구조체는 strcut키워드로 정의 한다. struct 구조체 이름 { 프로퍼티와 메서드 } 1.2 구조체 인스터스 생성 및 초기화 구조체의 인스턴스..
Swift의 Collection Type에 대해 알아보겠습니다. Collection Swift에서는 값을 저장하기 위한 세 가지 기본적인 콜렉션 타입 Array, Set, Dictionary를을 제공합니다. Array Ordered Collection Zero-based Integer Index Mutable, Immutable // Mutable var variableArray = [1, 2] variableArray = [] // Immutable let constantArray = [1, 2] //constantArray = [] Initialize let strArray1: Array = ["apple", "orange", "melon"] let strArray2: [String] = ["appl..
Swift의 열거형에 대해 알아 보겠습니다. 열거형 (Enumeration) 열거형은 연관된 항목을을 묶어서 표현할 수 있는 타입이고, 다른 타입과는 다르게 프로그래머가 정의해준 항목 값 외에는 추가/수정이 불가능합니다. 열거형 선택 사항 제한된 범위네에 선택지를 주고싶을 경우 정해진 값 외는 입력받고 싶지 않을 경우 예상된 입력 값이 한정되어 있을 경우 Ex) 학생 : 초등학생, 중학생, 고등학생, 대학생, 대학원생, 기타 기본 열거형 스위프트의 열거형은 enum이라는 키워드로 선언할 수 있습니다. 각 항목은 그 자체가 고유의 값입니다. enum School { case primary// 유치원 case elementary// 초등 case middle// 중등 case high// 고등 case co..