【Xcode8】색과 이미지를 표현하는 새로운 리터럴

4531 단어 XcodeiOSUIKitSwift

지금까지의 리터럴



리터럴은 문자열이라든지 수치의 값이라고 생각해 괜찮다고 생각합니다.
정확한 정의를 아는 사람이 있으면, 코멘트란에서 가르쳐 주시면 기쁩니다.
기본적인 리터럴 표현은 다음과 같습니다.

문자열 리터럴



String형의 오브젝트에 격납할 수 있는"(쿼츠)로 묶인 문자열이군요.

문자열 리터럴
let stringLiteral = "これは文字列リテラルです😃"

정수 리터럴



Int 형의 오브젝트에 격납할 수 있는 수치입니다.

정수 리터럴
let intLiteral = 123

데이터형을 확인하면
와 같이 형추론되어 「Int」가 됩니다.

실수 리터럴



이른바 부동 소수점 수를 표현합니다.
Double형과 Float형이 있어, 각각 정밀도가 다릅니다.

실수 리터럴(Double형)
let doubleLiteral = 1.23

형식 추론을 만들면 소수점 리터럴이 자동으로 Double 형식이 됩니다.
Float 형으로 하고 싶은 경우는, 형태를 명시합니다.

실수 리터럴(Float형)
let floatLiteral: Float = 12.3

새로운 리터럴



Xcode8부터 리터럴에 컬러와 이미지를 표현할 수 있게 되었습니다.
매우 직관적인 코드가되므로 적극적으로 사용하고 싶은 곳입니다.
익숙하지 않으면 뭔가 기분 나쁘지만.

컬러 리터럴



UIColor 클래스의 형태 프로퍼티를 지정하는 방법이군요.
뷰의 백그라운드 칼라나, 라벨의 텍스트 칼라등으로 사용합니다.

지금까지의 기술 방법
let colorOfSea = UIColor.blue

위의 UIColor 라고 기술하는 곳에서 color literal 라고 기술해 봅시다.
그러면 입력 완성이 활성화되고 Color Literal를 선택할 수 있습니다.


Color Literal을 선택하면 컬러 패널이 표시되므로 원하는 색상을 선택합시다.


형식을 확인하면 UIColor 입니다.


그러나 이 컬러 리터럴은 UIKit 프레임워크를 가져와야 하는 것 같습니다. import UIKit가 기술되어 있지 않으면 ...

형식을 추론할 수 없으면 오류가 발생합니다.
UIColor 클래스를 사용하게 되므로 당연하네요.

이미지 리터럴



컬러뿐만 아니라 이미지 파일(이미지)도 리터럴로 취급할 수 있게 되었습니다.
이 프로젝트는 "iPhone.png, coffee.png, money.png"를 제공합니다.


이미지 등을 다룰 때, 지금까지는 이렇게 기술하고 있었습니다.

지금까지의 기술 방법(이미지)
let iPhone = UIImage(named: "iPhone")

새로 사용 가능한 리터럴 표현의 경우 위의 UIImage 부분에 image literal를 입력합니다. 그러면 역시 입력 완성이 작동되므로 Image Literal를 선택합니다.



패널에 프로젝트에 제공된 이미지 파일이 표시되므로 원하는 이미지를 선택합니다. 그러면 코드 내에 썸네일이 표시되어 직관적이라면 직관적인 외형이 됩니다.


데이터 형식을 확인하면 물론 UIImage 입니다.

이 리터럴도 UIKit에 의존하고 있다는 것이군요.

잡감



새로운 리터럴은, Xcode8의 새로운 기능의 알기 쉬운 부류에 들어갈까 생각합니다만, 바리바리의 프로그래머에게는 조금 외형이 기분 나쁘다고 느낄지도 모릅니다. 사용된 이미지의 파일명을 확인하는 것도 뭔가 불편합니다.
내가 생각하는 것에 따라, 이 새로운 리터럴은 Swift를 초·중학생 등의 보다 젊은 세대에 친해지게 하는 것이 목적이 아닐까 생각합니다. iPad에서 본격적인 Swift 프로그래밍 환경이 갖추어진 것과 같은 타이밍에, 리터럴이 늘어난 것은 우연이 아닐 것입니다.

좋은 웹페이지 즐겨찾기