일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 정규표현식
- 흐름도
- xcode
- UIViewController
- 스위프트
- 깃허브
- swift
- 플로우 차트
- Git과 Github차이점
- flow chart
- 순서도
- flowchart
- PushNotification
- APNS
- git사용법
- git이란
- ios
- github
- 계산기
- GitvsGithub
- Regex
- git
- 깃
- 정규식
- github란
- OS
- 애플
- 백준
- JSONSerialization
- 플로우차트
- Today
- Total
목록전체 글 (30)
Diana의 iOS 개발일기
1330번 import Foundation let test = readLine()!.components(separatedBy: " ") if Int(test[0])! > Int(test[1])!{ print(">") } else if Int(test[0])! < Int(test[1])!{ print("
1000번 import Foundation var testArr: [String] var test = readLine()! testArr = test.components(separatedBy: " ") print(Int(testArr[0])! + Int(testArr[1])!) 스위프트에서 형변환 형식은 "변환하고자하는 형(대상)"임에 유의하자. 아래는 다른 분의 풀이. print((readLine()?.split(separator: " ").map { Int($0)! }.reduce(0, +))!) 1001번 import Foundation var test = readLine()! var testArr: [String] = test.components(separatedBy: " ") print(Int(..
서브스크립트는 인스턴스 이름 뒤에 값을 대괄호로 감싸 표현해줌으로써 값에 쉽게 접근하고 설정할 수 있습니다. 주로 각 타입의 구현부에 위치하며 매개변수로 다양한 값을 가질 수 있지만 입력 매개변수는 받지 못하는 등 쉬운 듯 하지만 꽤나 섬세한 문법을 가지고 있으므로 주의를 기울일 필요가 있습니다. [서브스크립트 - Subscript] 서브스크립트는 컬렉션, 리스트, 시퀀스 등의 타입의 요소에 인덱스를 통해 접근하는 단축 문법입니다. 인덱스로 접근한다. 즉 우리가 평범하게 Array에 Array[Index], Dictionary에 Dictionary[Index]로 접근하던 것이 모두 서브스크립트입니다. 서브스크립트는 subscript 키워드를 사용하여 정의하며 인스턴스 메서드와 비슷하게 매개변수의 개수, ..
모나드는 디자인 패턴 중 하나로 스위프트의 함수형 프로그래밍에 대한 이해를 위해서 모나드의 개념을 알아두면 꽤나 도움이 됩니다. 개인적으로는 굉장히 헷갈렸던 부분이라 설명에 오류가 있을 수 있습니다. [모나드 - Monad] 모나드는 함수와 더불어 순서가 있는 연산을 처리할 때 자주 활용되는 디자인패턴 혹은 자료구조입니다. 프로그래밍에서 모나드는 아래 세 가지 조건을 모두 충족시켜야 합니다. 타입을 인자로 받는 타입(특정 타입의 값을 포장) 특정 타입의 값을 포장한 것을 반환하는 함수(메서드)가 존재 포장된 값을 변환하여 같은 형태로 포장하는 함수(메서드)가 존재 1. 컨텍스트(Context) 컨텍스트는 콘텐츠(Contents)를 담은 그 무언가 라는 의미입니다. 하나의 상자 정도로 이해하면 쉬울 듯 합..
10171번 - 고양이 let test = #""" \ /\ ) ( ') ( / ) \(__)| """# print(test) swift5 이전버전에서 특수문자를 "\"를 사용해 나타내준 것과는 달리 swift5부터는 #와 "의 조합으로 특수문자 표현이 가능하게 되었습니다. (따옴표 세개는 여러줄의 문자열을 String으로 변환할 때 사용) 10172번 - 개 let test = #""" |\_/| |q p| /} ( 0 )"""\ |"^"` | ||_/=\\__| """# print(test) 위와 동일.
맵과 필터 그리고 리듀스는 함수형 프로그래밍인 스위프트의 특징을 고스란히 가지고 있어 굉장히 재밌고 매력적인 고차함수들입니다. 이때 고차함수란 함수를 매개변수로 가지는 함수를 뜻하며 클로저(Closure)와 제네릭(Generic) 등의 중요 개념과 함께 사용되므로 해당 개념들에 대한 선행지식를 요구합니다. [맵 - Map] 맵은 자신을 호출할 때 매개변수로 전달된 함수를 실행하여 그 결과를 다시 반환해주는 함수입니다. 약간 컨테이너 타입을 위한 간단한 산술 연산자와 비슷하다고 생각하시면 좋을 듯 합니다. 맵은 map 키워드를 사용하며 배열, 딕셔너리, 세트, 옵셔널 등에서 사용이 가능합니다. 맵은 사용하면 컨테이너가 담고 있던 각각의 값을 매개변수를 통해 받은 함수에 적용한 후 다시 컨테이너에 포장하여 ..
보호되어 있는 글입니다.
옵셔널은 스위프트에서 굉장히 중요한 개념으로 통합니다. 옵셔널로 지정된 프로퍼티는 어떤 객체든 nil 을 가질 수 있는 Objective-C 와의 상호작용성이 확보되지요. 이러한 옵셔널에서 자주 사용되는 것이 옵셔널 체이닝으로 옵셔널 체이닝은 사용에 있어 실행 플로우를 이해하는 것이 가장 중요합니다. [옵셔널 체이닝(Optional Chaining)] 옵셔널 체이닝은 옵셔널의 가능성을 포함하고 있는, nil 일지도 모르는 프로퍼티, 메서드, 서브스크립션 등을 가져오거나 호출할 때 사용할 수 있는 일련의 과정입니다. 옵셔널 체이닝은 옵셔널을 반복 사용하여 코드 상에서는 옵셔널이 체인처럼 연결되어 있는 형태이므로 옵셔널 체이닝이라고 부릅니다. 옵셔널 체이닝은 여러 값들이 서로서로 연관된, 즉 중첩된 형태를 ..