Swift

    Method

    안녕하세요:) 오늘은 Method에 대해서 알아보도록 하겠습니다. 1. Instance Method 메소드는 특정 형식에 속하는 함수입니다. 인스턴스를 통해 호출합니다. 함수는 특정 형식에 연관되지 않는 동작을 구현하고 메소드는 특정 형식에 연관된 동작을 구현합니다. 인스턴스 메소드는 클래스, 구조체, 열거형에서 구현할 수 있습니다. func name(param) -> ReturnType { Code } instance.method(param) // 메소드는 인스턴스 이름으로 호출합니다. class instanceMethod { var data = 0 static var sharedDate = 200 func doSomething() { print(data) instanceMethod.sharedDate..

    Property - 2

    1. Property Observer(속성 감시자) var name: Type = DefaultValue { willSet(name) { // 파라미터 이름을 생략하면 newValue라는 기본 파라미터가 제공됩니다. statements } didSet(name) { // oldValue statements } } class Size { var width = 0.0 { willSet { print(width, "=>", newValue) } didSet { print(oldValue, "=>", width) } } } let s = Size() s.width = 123 2. Type Property(형식 속성) 형식 속성은 형식 자체에 속한 속성입니다. 인스턴스를 생성하지 않고 클래스나 구조체 자체에 값을..

    Property - 1

    안녕하세요:) 오늘은 Property(속성)에 대해서 공부해보도록 하겠습니다. 1. Property 프로퍼티는 구조체와 클래스에서 선언할 수 있습니다. 프로퍼티는 저장 속성과 연산 프로퍼티가 있습니다. 프로퍼티를 사용하기 위해서는 인스턴스가 필요합니다. 인스턴스를 통해서 프로퍼티를 참조하거나 값을 할당하는데 이렇게 인스턴스에 소속되는 프로퍼티를 인스턴스 프로퍼티라고 합니다. 2. Stored Property( 저장 속성) 입력된 값을 저장하거나 저장된 값을 제공하는 역할을 합니다. 상수 및 변수를 사용해서 정의할 수 있습니다. 클래스와 구조체에서는 사용 가능하지만, 열거형에서는 사용할 수 없습니다. 클래스에서 프로퍼티 선언 시 초기값이 할당되지 않은 저장 프로퍼티는 반드시 옵셔널 타입으로 선언해야 합니다..

    Structure and Class

    안녕하세요:) 오늘은 구조체와 클래스에 대해서 알아보도록 하겠습니다!!! 1. Structure and Class 구조체와 클래스는 하나의 큰 코드 블록입니다. 구조체와 클래스 내에서 정의된 변수, 상수는 프로퍼티(속성)라는 이름을 가집니다. 구조체와 클래스 내에서 정의된 함수는 메소드라는 이름을 가집니다. 형식 내부에 구현하는 요소를 멤버라고 합니다. 구조체와 클래스는 프로퍼티, 메소드, 서브스크립트, 초기화 블록, 확장, 프로토콜을 선언할 수 있습니다. 클래스는 구조체보다 상속, 소멸화 구문, 참조에 의한 전달의 기능을 가지고 있습니다. struct StructName { property method initializer subscript } class ClassName { property metho..

    Enumeration

    안녕하세요:) 오늘은 Enumeration에 대해서 알아보도록 하겠습니다. 1. Enumeration 열거형이란 하나의 주제로 연관된 데이터들이 멤버로 구성되어 있는 자료형 객체를 의미합니다. 열거형에 포함된 상수들은 상수라고 부르지 않고 Enumeration Case라고 부릅니다. 짧게 case라고 합니다. 열거형은 독립적인 자료형입니다. 열거형에 포함되어 있는 Case도 독립적인 이름을 가지고 있습니다. 열거형을 사용하면 코드의 가독성과 안전성이 높아집니다. 변수나 상수에 enum의 타입을 명시해주면 형식추론이 가능해집니다. 열거형은 보통 switch문과 함께 사용됩니다. enum TypeName { // 문법: 열거형은 독립적인 형식, UppercamelCase case caseName case c..

    Dictionary

    안녕하세요:) 오늘은 Dictionary에 대해서 알아보도록 하겠습니다. 1. Dictionary [Key: Value, Key: Value,...] Key와 Value가 한 쌍의 요소입니다. 키는 유일한 값을 가져야 하고, 값은 다른 값과 중복되도 괜찮습니다. Dictionary는 정렬되어 있지 않습니다. 키의 자료형이 같아야 하고 값의 자료형이 모두 같아야 합니다. Key를 통해서 Value에 접근할 수 있습니다. : 으로 키와 값을 구분합니다. var dict = ["A": "Apple", "B": "BMW", "C": "CJ"] //[키: 값] 형식으로 저장됩니다. 형태는 이런 식으로 구성됩니다. 이제 문법과 딕셔너리를 만드는 법을 알아보겠습니다. let dict: Dictionary // 정식 ..

    Array

    안녕하세요:) 오늘은 배열에 대해서 알아보도록 하겠습니다. 배열은 하나 이상의 데이터를 연속해서 저장하는 컬렉션입니다. 배열은 저장한 순서대로 저장됩니다. 순서를 일련번호, 즉 인덱스(Index)라고 합니다. 배열은[](브라켓) 사이에 값을 저장합니다. 배열의 자료형은 배열을 생성하는 시점에 요소의 자료형을 통해 결정됩니다. 배열은 정식 문법, 단축 문법으로 작성할 수 있습니다. 배열에 접근할 때는 인덱스를 통해 요소에 접근합니다. 배열에 대한 기초적인 설명은 끝났습니다. 이제 코드를 통해서 알아보도록 하겠습니다. let num = [1, 2, 3, 4] 숫자 1, 2, 3, 4를 순서대로 저장한 Int 배열입니다. 배열의 자료형과 선언 문법을 보겠습니다. let strArray: Array // 정식 ..

    String Compare, Search, Option

    이번에는 문자열 비교, 검색, 옵션을 활용하는 방법을 알아보도록 하겠습니다.!!! 1. 문자열 비교 두 문자열을 비교하는 방법에 대해서 알아보도록 하겠습니다. "IPhone" == "iPhone" // false "IPhone" != "iPhone" // true "IPhone" < "iPhone" // true 비교 연산자를 통해 두 문자열을 비교해보았습니다. 여기서 알 수 있는 건 Swift는 대소문자를 구분한다는 것입니다. 그럼 이번에는 메소드를 통해서 비교해보도록 하겠습니다. 문자열을 비교할 땐 compare 메소드를 사용합니다. let a = "IPhone" let b = "iPhone" a.compare(b) == .orderedSame // false a.caseInsensitiveCompa..

    String Editing

    안녕하세요:) 꾸벅 이번에는 String Editing에 대해서 알아보도록 하겠습니다. 문자열을 추가, 삭제, 변경하는 방법에 대해서 알아보겠습니다~ 1. 문자열 추가 새로운 문자열을 추가할 때는 어떻게 해야 할까요? 코드를 통해서 보도록 하겠습니다. var str = "Hello" str += "!" print(str) // Hello! 이런 방식도 있지만 메소드를 활용해서 추가하는 방법이 효율적입니다. append와 appending을 사용해서 추가해보도록 하겠습니다. str = "Hello" str.append(", Swift") print(str) // Hello, Swift str = "Hello" // 문자열 초기화 str.appending(", Swift") // Hello, Swift pr..

    String

    안녕하세요:) 오늘은 String(문자열)에 대해서 알아보는 시간을 가지도록 할게요! 1. String, Character String은 문자열을 나타내는 자료형입니다. String 타입 데이터의 값을 표현할 때는 큰따옴표(" ")를 사용합니다. 문자열을 변수로 저장하면 언제든지 변경이 가능합니다. 빈 문자를 저장하고 싶다면 큰따옴표 사이에 공백을 추가해야 합니다. 문자로 처리하고 싶다면 타입을 반드시 지정해 줘야 합니다. let str = "안녕하세요" // Immutable String 바꿀 수 없는 문자열 var str2 = "반가워요" // Mutable String 바꿀 수 있는 문자열 let str3 = "A" // 이건 문자열일까요? 문자일까요? -> 문자열입니다! let Ch: Charac..