Programming/Swift(iOS)
-
Swift TupleProgramming/Swift(iOS) 2021. 4. 1. 20:40
Swift에서 사용하는 Tuple에 대한 정리 'Tuple'은 서로 다른 타입을 하나로 묶어서 저장할 수 있습니다. 아래와 같이 문자열, Int, Float을 하나로 묶어서 표현 가능합니다. var t = ("Hello Wolrd", 1, 2.5) 이제 함수에서 Tuple을 return하는 방법입니다. func foo() -> (String, Int) { return ("Tom", 42) } // return 된 값을 임시로 0,1로 표현 var result = foo() print("\(result.0), \(result.1)") var (name, age) = foo() print(name, age) func foo2() -> (name:String, age:Int) { //넘겨줄 Data의 name..
-
Swift 언어의 특징Programming/Swift(iOS) 2021. 4. 1. 00:06
회사에서 교육받은 Swift 언어 교육을 정리해보려한다. 장점 고성능 함수형 프로그래밍 프로토콜 지향 프로그래밍 - POP(Protocol Oriented Programming) 강력한 컴파일 타임 언어 단점 모듈 호환성이 떨어진다. 엄격한 타입 체크 - 다른 언어에 비해 상대적으로 엄격하다. 프로토콜이 난해하다. 동시성 지원이 떨어진다. - 언어적으로 지원되는 기능이 없다. - 3rd party 기능으로 지원 해주고 있다. (GCD, Reactive, Extension(RxSwift)) Applet Platform에 종속적이다. - 리눅스 기반에서도 사용가능하지만, 지원하는 패키지 수자 적다. - 결국 맥북 사라는 얘기다. 컴파일 시간 - LLVM 기반의 컴파일러를 이용하므로써, 정적 분석등 유용한 ..
-
Xcode CommandLine ProjectProgramming/Swift(iOS) 2021. 3. 31. 23:59
XCode를 사용하면서 간단히 알아볼 수 있는 것들은 PlayGround를 열어서 코딩했었다. 하지만, 어시턴트같은게 잘 지원이 안되는거 같은 느낌(?)을 받고 있었는데, 이번 교육에서 XCode Project를 Command Line Project로 만들어서 사용하면 된다는걸 배웠다. (아마도 Visual Studio에서 C++ project를 빈 프로젝트로 만드는 것이랑 비슷한것 같다.) XCode에서 Project를 새로 만들었을 때, "macOS - Command Line Tool" 선택한다. Target Membership이 현재 빌드에 포함시키는지 여부를 결정한다. 즉, 파일이 여러개라면 Target Membership 체크에 여부에 따라서 빌드에 포함시킬지/제외시킬지 결정할 수 있다. 그리고..