Swift
Tuple
안녕하세요:) 오늘은 Tuple에 대해서 알아보도록 할게요!!!! 1. Tuple 튜플은 두 개 이상의 값을 저장할 수 있습니다. 서로 다른 형식의 값을 저장하는 것도 가능합니다. 튜플 멤버에 접근할 때는 점문법을 사용합니다. 튜플 멤버의 값을 변경할 때는 상수가 아닌 변수로 선언해야 합니다. 새로운 멤버의 추가, 삭제는 불가능합니다. (expr1, expr2,...) // expr1 -> Tuple Member 튜플에 저장된 하나의 값은 Tuple Member라고 합니다. var tuple = (20, "Hi", 12.34, "Hello") tuple.0 // 20 tuple.1 // Hi tuple.2 // 12.34 tuple.3 // Hello tuple.0 = 400 2. Named Tuple ..
Closures
안녕하세요:) 오늘은 Closure에 대해서 알아보도록 하겠습니다~ 1. Closure(클로저) 클로저는 비교적 짧고 독립적인 코드 조각입니다. 클로저는 함수와 서로 호환됩니다. Swift에서 클로저는 이름이 없는 함수입니다. 클로저를 호출할 때는 Argument Label을 사용하지 않습니다. 글로벌 스코프에서 단독으로 사용할 수 없기 때문에 변수나 상수에 저장해야 합니다. { (parameters) -> ReturnType in statements } { statements } // 가장 단순한 클로저 표현식 let a = { print("Hello, blog") } a() // Hello, blog // 파라미터와 리턴형이 있는 클로저 let a2 = { (str: String) -> String ..
Function
안녕하세요:) 오늘은 Function에 대해서 알아보도록 할게요!! Function은 프로그램의 실행 과정 중에서 독립적으로 처리될 수 있는 부분을 분리하여 구조화한 객체를 의미합니다. 이렇게 독립적으로 작성된 함수는 여러 번 호출하여 사용할 수 있어서 같은 코드를 작성할 필요가 없다는 장점을 가지고 있습니다. 그럼 Swift에서 사용하는 Function에 대해서 알아볼까요? 1. Function 함수는 특정 기능을 수행하는 코드 조각입니다. 파라미터와 리턴 값을 생략할 수 있습니다. 함수의 파라미터는 하나도 없을 수도 있고, 하나 이상일 수도 있습니다. 함수를 사용하면 코드의 가독성이 좋아지고 불필요한 코드의 반복을 줄일 수 있습니다. 코드를 변경해야 할 때 함수 내부만 수정하면 되므로 유지 보수가 용..

Optional
안녕하세요:) 오늘은 Optional에 대해서 알아보는 시간을 가져보도록 하겠습니다! Optional을 우리말로 번역하면 "선택적인"으로 번역할 수 있습니다. 말 그대로 선택! swift에서는 어떤 의미로 사용될까요? 지금부터 알아보도록 하겠습니다. 1. Optional 옵셔널은 값을 가지지 않아도 되는 형식입니다. 옵셔널이 아닌 타입 뒤에 물음표( ? )를 붙이면 옵셔널 타입이 됩니다. nil은 값이 없다는 것을 나타내는 특별한 키워드입니다. nil을 반환하려면 해당 값이 Type Annotation으로 옵셔널 타입을 지정해야 합니다. name: Type? // 타입 뒤에 물음표(?)를 붙여주면 옵셔널 타입이 됩니다. var optionalNum: Int? // nil, 옵셔널 Int라고 읽습니다. v..
Loop statements - While문
안녕하세요~:) 오늘은 while 반복문에 대해서 알아보도록 하겠습니다. while 반복문은 while문과 repeat-while이 있고, for-in문과 다르게 사용됩니다. 반복하는 것은 같지만 조건에 따라서 반복 횟수가 결정됩니다. 그럼 언제 while문을 사용하는냐!!? 실행 햇수가 명확하지 않을 때 직접 실행해보기 전까지는 실행 횟수를 알 수 없을 때 실행 횟수를 기반으로 할 수 없는 조건일 때 while condition { statement } while문은 조건에 따라서 반복 횟수가 결정됩니다. condition이 true일 경우 코드를 반복합니다. 이 경우에 무한 루프에 빠지지 않도록 조심해야 합니다!!! condition이 false일 경우 이어지는 다음 코드가 실행됩니다. 그리고 특정 ..

Loop statements - for문
안녕하세요:) 오늘은 반복문에 대해서 알아보도록 하겠습니다. 반복문은 주어진 조건에 의해 특정 코드 블록을 반복적으로 실행할 수 있게 해주는 구문입니다., 반복문은 for-in 반복문과 while 반복문이 있습니다. 오늘은 for-in 반복문에 대해서 알아보도록 하겠습니다. for loopConstant in Range { statement } for - in 반복문은 이런 형식으로 작성합니다. 일정 횟수만큼 특정 구문을 반복하고자 할 때 for-in 반복문을 사용합니다. loopConstant는 반복 상수라고 하고, 반복 상수는 값을 변경할 수 없습니다. for year in 1995...2020 { print("\(year) 년도") } 그럼 loopConstant를 사..
Conditional Statement - guard문
안녕하세요:) 이번에는 guard문에 대해서 알아보도록 하겠습니다! guard 문은 else 블록에서 코드의 실행을 종료해야 하고 else블록은 생략이 불가합니다. guard 문의 condition은 true 또는 false가 리턴되어야 합니다. condition이 true면 실행되는 블록은 없습니다. condition이 false일 경우 else 블록이 실행됩니다. optionalBinding과 사용할 수 있습니다. return, throw를 호출해서 스코프를 탈출해야 합니다. guard문은 코드의 중첩을 피할 수 있고 코드가 깔끔해지는 장점이 있습니다. guard condition else { //true or false가 리턴되어야 하고, else 블록을 생략 불가합니다. s..
Conditional Statement - switch문
안녕하세요:) 오늘은 switch 구문에 대해서 알아보려고 합니다! switch 문은 패턴으로 비교하고 그 결과를 바탕으로 실행할 코드를 결정하는 조건문입니다. 각 case에는 반드시 하나의 실행 가능한 문장이 포함되어야 합니다. case 블록에서 모든 경우의 수를 처리했을 경우 default 블록을 생략할 수 있습니다. case 비교 패턴을 작성할 때, 하나의 case 키워드 다음에 하나 이상의 비교 패턴을 연이어 작성할 수 있습니다. switch value { case pattern: code default: code } let num = 2 switch num { case 1: print("One") case 2: print("Two")..
Conditional Statement - if 구문
안녕하세요:) 오늘은 조건문에 대해서 알아보도록 하겠습니다. 조건문은 프로그램에서 하나 또는 그 이상의 조건값에 따라 특정 구문을 실행하도록 프로그램의 흐름을 분기하는 역할을 합니다. Swift에서 제공하는 조건문은 크게 세 가지입니다. if 구문 switch 구문 guard 구문 그럼 if 구문부터 알아보도록 할게요! if 구문은 하나 또는 그 이상의 조건을 평가하고 그 결과에 따라 코드 블록의 실행 여부를 결정하는 것이 if 조건문입니다. if 조건문은 조건의 참과 거짓을 판단하고 코드를 실행해야 합니다. 조건문은 반드시 Bool 타입의 true, false를 판단할 수 있는 형태의 구문이여야 합니다. condition이 true인 경우 코드 블록 내부의 구문이 실행됩니다. cond..
Operator
안녕하세요:) 오늘은 Swift에서 사용하는 연산자에 대해서 알아도록 할게요!! 1. 용어 연산자는 연산을 수행하는 기호입니다. 연산자에 의해 연산 되는 값의 수(피연산자의 수)에 따라 단항, 이항, 삼항 연산자로 구분됩니다. 단항 연산자(Unary OPerator) : 하나의 피연산자 앞뒤에 사용하는 연산자입니다. 이항 연산자(Binary Operator) : 두 피연산자 사이에 위치하는 연산자입니다. 삼항 연산자(Ternary OPerator) : 피 연산자가 세 개인 연산자입니다. 단항 연산자 ex) +a (prefix, 전치 연산자) , a+ (postfix, 후치 연산자) 이항 연산자 ex) a + b (infix, 중위 연산자) 삼항 연산자 ex) a ? b : c 2. Arithmetic O..