클래스와 구조체는 코드의 조직화와 객체화를 위하여 반드시 필요한 요소이다. 그만큼 익숙하기도 한데, 기초적인 부분부터 복습한다는 느낌으로 정리해보려고 한다. 구조체와 클래스는 값과 메서드를 내부에서 정의하고 그 기능을 확장한다는 맥락에서는 동일하지만, 다음 4가지 특징은 클래스만의 고유 특징이다. - 상속 - 타입 캐스팅: 런타임에 클래스 인스턴스의 타입을 확인 - 소멸자 - 참조 카운트: 클래스 인스턴스에 하나 이상의 참조가 가능 1. 선언 문법 class SomeClass { // 클래스 내용은 여기에 } struct SomeStructure { // 구조체 내용은 여기에 } struct Resolution { var width = 0 var height = 0 } class VideoMode { v..
사실 열거형 문법이야 언어마다 조금씩은 다르지만 큰 틀은 동일해서, 안다루고 넘어가려다 문법적인 표현 정도는 다루는 게 맞다고 생각을 해서 간단하게 다루고 넘어가려고 한다. 열거형 문법은 enum 키워드로 선언을 하고 case 키워드를 사용하여 구분 지어준다. enum CompassPoint { case north case south case east case west } 아래와 같이 case를 콤마로 구분하여 한 줄에 적을 수도 있다. enum Planet { case mercury, venus, earth, mars, jupiter, saturn, uranus, neptune } 열거형 타입을 최초로 변수에 정의할 때는 클래스의 타입을 명시해야 하지만, 이후에는 아래와 같이 생략하여도 무방하다. va..
클로저는 이름을 가지고 있던 가지고 있지 않던 {} 로 묶이는 거의 모든 코드 블록을 뜻한다고 생각하면 된다. 보통의 경우, 클로저라고 하면 이름이 없는 unnamed Clpsure를 뜻하며 익명함수라고도 한다. 클로저도 익명이긴 하지만 함수의 특징을 모두 가지고 있기 때문에 인자나 반환 값을 모두 가질 수 있다. 1. 클로저 표현식 클로저는 익명함수인 만큼 func 키워드를 사용 않는다. { (parameters) Return Type in Statement } 위와 같이 표현하며, in 키워드를 기준으로 Closure head 와 Closure Body로 구분할 수 있다. 실제로 클로저를 어떻게 선언하고 사용하는 지 확인해보면, - Parameter와 Return Type 이 둘 다 없는 경우: le..
1. Defining and Calling swift에서는 아래와 같이 함수를 선언할 수 있다. func greet(person: String) -> String { let greeting = "Hello, " + person + "!" return greeting } func 키워드를 앞에 붙이고 선언하며, person 이라는 String 파라미터를 인자로 받고 String 을 반환 값으로 반환하는 함수이다. 2. 복수의 값을 반환하는 함수 아래와 같이 튜플을 함수의 반환 값으로 사용하여 복수의 값을 반환할 수도 있다. func minMax(array: [Int]) -> (min: Int, max: Int) { var currentMin = array[0] var currentMax = array[0]..
Swift에서는 Collection Type으로 Array, Set, Dictionary 이렇게 세 가지를 지원한다. 기본적인 내용이지만, 한번 더 복습해보도록 하자. 1. Array - Basic: 아래와 같이 빈 배열을 선언할 수 있다. var someInts = [Int] () print("someInts is of type [Int] with \(someInts.count) items.") // someInts is of type [Int] with 0 items. someInts.append(3) // 배열에 3을 추가 했습니다. someInts = [] // 배열을 비웠습니다. 배열의 아이템 타입은 그대로 Int로 유지됩니다. repeating 메서드와 count 메서드를 사용하여 기본 값으로..
1. Multiline String Literals swift 는 여러 줄의 String 을 """ 기호를 사용하여 표현할 수 있으며, 닫는 따옴표들이 어디에 위치하는 지에 따라 indent 또한 편리하게 설정할 수가 있다. let wiseWords = """ this is multi lines String """ print(wiseWords) // this // is // multi // lines // String let wiseWords = """ this is multi lines String """ print(wiseWords) //this //is //multi //lines //String Multiline String 내에서 줄바꿈을 하지만 출력 값에는 줄바꿈이 없어야 할 때는 \ 를 사용..
1. Conditional Operator 기본적으로 swift의 if 조건문은 아래와 같이 사용할 수 있다. let condition = 0 if condition == 0 { print("condition is correct") } else if condition < 0 { print("condition is less than zero") } else { print("condition is bigger than zero") } 삼항연산자 또한 사용이 가능하다. let contentHeight = 40 let hasHeader = true let rowHeight = contentHeight + (hasHeader ? 50 : 20) 2. Nil-Coalescing Operator Nil-Coalesc..
회사에서 놀고있던 아이맥을 내 자리로 가져온 김에 ios 개발에도 살짝 발을 담구려고 한다. 가장 먼저 swift 문법을 알아야 ios를 공부할 수 있기에, 공식 문서를 참조하여 열심히 핥아보려고 한다. 따로 글을 나누지 않고 이 포스팅 안에서 공식 문서가 설명하는 모든 문법을 정리할 것이다. 그럼 들어가보자. 1. Constants and Variables 변수는 var, 상수는 let을 사용하여 선언하며, 다중으로 아래와 같이 선언하여 사용할 수도 있다. let maximumNumberOfLoginAttempts = 10 var currentLoginAttempt = 0 var x = 0.0, y = 0.0, z = 0.0 2. Type Annotations run time 에러를 막기 위해 pyth..
- 정보보안기사 #실기 #정리
- await
- Promise
- redux-thunk
- 이탈리안 레스토랑
- 인천 구월동 맛집
- AsyncStorage
- react
- 맛집
- redux
- 인천 구월동 이탈리안 맛집
- react-native
- 파니노구스토
- Async
- javascript
- Total
- Today
- Yesterday