본문 바로가기

Smart Device/Swift42

Swift Generics - Generics generic 함수나 type을 만들기 위해 함수명이나 타입명 뒤에 ''를 넣고 그 안에 명을 쓰면된다. func repeat(item: T, times: Int) -> [T] { var result = [T]() for i in 0...times { result.append(item) } return result} repeat("knock", 4)-> ["knock", "knock", "knock", "knock", "knock"] classes, enumerations 그리고 structures 뿐만 아니라 함수나 매서드까지 제네릭형식으로 만들 수 있다. // Reimplement the Swift standard library's optional type enum Optional.. 2014. 7. 3.
Swift protocol - protocol 다수위 클래스들이 공통으로 사용할 수 있는 매서드를 묶어 클래스에 적용하는 것을 말한다. protocol을 선언하기 위해서는 키워드 'protocol'을 사용한다. protocol ExampleProtocol { var simpleDescription: String { get } mutating func adjust() } classes, enumerations, stucts는 protocol을 모두 적용할 수 있다. class SimpleClass: ExampleProtocol { var simpleDescription: String = "A very simple class." var anotherProperty: Int = 69105 func adjust() { simpleDesc.. 2014. 7. 3.
Swift struct - struct 구조체를 만들기 위해서는 struct를 사용한다. 구조체는 클래스의 함수나 초기화 등과같은 많은 같은 동작을 제공한다. 구조체와 클래스의 중요한 차이점중에 하나로 구조체는 코드에 값을 전달하고 클래스는 참조를 전달하는 것이다. 예1) struct Card { var rank: Rank var suit: Suit func simpleDescription() -> String { return "The \(rank.simpleDescription()) of \(suit.simpleDescription())" } } let threeOfSpades = Card(rank: .Three, suit: .Spades) let threeOfSpadesDescription = threeOfSpades.si.. 2014. 7. 2.
Swift Enumerations - Enumerationsenumeration은 enum 키워드로 만들 수 있다. enumeration은 Class와 같은 다른 형식들과 마찬가지로자기자신과 관련된 Method를 가질 수 있다. enum Rank: Int { case Ace = 1 case Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten case Jack, Queen, King func simpleDescription() -> String { switch self { case .Ace: return "ace" case .Jack: return "jack" case .Queen: return "queen" case .King: return "king" default: return String(.. 2014. 6. 29.