ios

    [swift] 기본문법(7)

    import UIKit /* 17. 옵셔널 체이닝 옵셔널에 속해 있는 nil 일지도 모르는 프로퍼티, 메서드, 서브스크립션 등을 가져오거나 호출할 때 사용할 수 있는 일련의 과정 */ struct Developer { let name: String } struct Company { let name: String var developer: Developer? } var company = Company(name: "gunter", developer: nil) print(company.developer) //nil var developer = Developer(name: "han") var company2 = Company(name: "james", developer: developer) print(compa..

    [swift] 기본문법(6)

    import UIKit /* 15. protocol 특정 역할을 하기 위한 메서드, 프로퍼티, 기타 요구사항 등의 청사진 */ protocol SomeProtocol {} protocol SomeProtocol2 {} struct SomeStructure: SomeProtocol, SomeProtocol2 {} /* 클래스는 프로토콜을 받기 전에 상속하는 슈퍼클래스를 먼저 써야한다. class SomeClass: SomeSuperClass, FirstProtocol, AnotherProtocol ... { } */ protocol FirstProtocol { var name: Int { get set } var age: Int { get } } protocol AnotherProtocol { static..

    [swift] 기본문법(5)

    import UIKit // 12. 상속 class Vehicle { var currentSpeed = 0.0 // var 앞에 final 을 붙이면 override 불가= var description: String { return "traveling at \(currentSpeed) miles per hour" } func makeNoise(){ print("speaker on") } } class Bicycle: Vehicle { var hasBasket = false } // 여기서 Vehicle은 슈퍼클래스, Bicycle은 서브클래스 라고 함 var bicycle = Bicycle() bicycle.currentSpeed // 0 bicycle.currentSpeed = 15 bicycle.cu..

    [swift] 기본문법(4)

    import UIKit /* 10. property 클래스, 구조체 또는 열거형 등에 관련된 값 */ //a. 저장 property struct Dog { var name: String let gender: String } var dog = Dog(name: "gunter", gender: "Male") print(dog) // 값 변경 dog.name = "james" //dog.gender = "Female" => dog는 변수로 되어있지만 gender가 상수이므로 변경 불가 let dog2 = Dog(name: "gunter", gender: "Male") //dog2.name = "paul" => 구조체인 dog2가 상수이므로 변경 불가 /* struct 와 달리 class 는 참조 값이므로 상수..

    [swift] 기본문법(3)

    import UIKit /* 8. 구조체와 class 사용방법은 같지만 구조체의 instance는 값 타입, class의 instance는 참조 타입 구조체와 class 의 이름은 대문자로 시작하는 파스칼표기법을 따른다. */ // a. 구조체 struct User { var nickname: String var age: Int func information(){ print("\(nickname) \(age)") } } // 인스턴스 생성 var user = User(nickname: "홍길동", age: 23) user.nickname user.nickname = "임꺽정" user.nickname // 임꺽정 user.information() // b. class class Dog { var name..

    [swift] 기본문법(2)

    import UIKit //5. 조건문 //a. if else let age = 23 if age < 19 { print("19세 미만입니다.") } else if age < 25 { print("25세 미만입니다.") } else { print("25세 이상입니다.") } //b. switch let color = "green" switch color { case "blue": print("파란색입니다.") case "green": print("초록색입니다.") case "red": print("빨간색입니다.") default: print("찾는 색상이 없습니다.") } // 범위도 가능 let temperature = 9 // ... 범위 연산자는 첫값과 끝값 모두 포함합니다. -20...9 === ..

    [swift] 기본문법(1)

    import UIKit // 변수타입 let constant = 100// 상수 => 자바스크립트에서는 변수이므로 헷갈리지 말자 var variable = 100// 변수 // 데이터 타입 var number1: Int = 100 // 부호 포함 정수 var number2: UInt = 100 // 부호 없는 정수 ex -100은 안됨 var number3: Float = 1.1 // 32bit 부동 소수점 var number4: Double = 1.2 // 64bit 부동 소수점 var isNumber: Bool = true var munja: Character = "a" // length 가 1인 "문자" 만 가능 (문자열 안됨) var munjaYoel: String = "안녕하세요" // 문자열 ..