프로퍼티는 클래스, 구조체, 열거형 내부에 선언되어 호출되는 상수나 변수를 의미한다. 프로퍼티의 종류에는 Stored Properties 와 Computed Properties가 있는데, stored는 말 그대로 값을 저장하고 있는 프로퍼티이고, Computed는 값을 저장하고 있지 않고 특정하게 계산한 값을 반환해주는 프로퍼티이다. Computed 는 클래스, 구조체, 열거형에 모두 사용이 가능하지만 Stored는 클래스와 구조체 내에서만 사용이 가능하다. 추가로 프로퍼티 옵저버를 정의하여 값이 변할 때마다 모니터링할 수 있다. 1. Stored Properties 저장 프로퍼티는 앞서 봐왔던 예제와 동일하게 단순히 값을 저장하고 있는 프로퍼티이다. struct FixedLengthRange { var..
클래스와 구조체는 코드의 조직화와 객체화를 위하여 반드시 필요한 요소이다. 그만큼 익숙하기도 한데, 기초적인 부분부터 복습한다는 느낌으로 정리해보려고 한다. 구조체와 클래스는 값과 메서드를 내부에서 정의하고 그 기능을 확장한다는 맥락에서는 동일하지만, 다음 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..
자주 사용하면서도 항상 구글링을 해서 찾았던 리눅스 명령어들을 이제서야 정리를 좀 해보려고 한다. 각 기본 명령어에 대한 설명은 여기에서 매우 자세하게 설명하여, 참고했다. 1. ls (List segments) : 현재 위치의 파일 목록 조회 ls -l : 파일의 상세정보 ls -a : 숨김 파일 표시 ls -t : 파일들을 생성시간순(제일 최신 것부터)으로 표시 ls -rt : 파일들을 생성시간순(제일 오래된 것부터)으로 표시 ls -f : 파일 표시 시 마지막 유형에 나타내는 파일명을 끝에 표시 ('/' : 디렉터리, '*' : 실행파일, '@' : 링크 등등,,,) 2. cd (Change directory) :디렉터리 이동 cd [디렉터리 경로] : 이동하려는 디렉터리로 이동 (경로 입력 시 '..
- react
- react-native
- 인천 구월동 맛집
- 인천 구월동 이탈리안 맛집
- 파니노구스토
- 정보보안기사 #실기 #정리
- await
- AsyncStorage
- 이탈리안 레스토랑
- Promise
- redux
- 맛집
- Async
- redux-thunk
- javascript
- Total
- Today
- Yesterday