What's new in Swift(wwdc2022) [2]

2022. 9. 8. 02:07swift

옵션을 언래핑하는 경우 언래핑 값이 동일한 이름을 가지도록 하려면 오른쪽만 빼 버리면 된다?
그럼 Swift는 똑같다고 여길 겁니다. (가드문도 마찬가지입니다. 그 과정에서도..)

복잡한 클로저에도 결과 유형을 수동으로 지정하지않고도 do-catch 또는 if else를 사용하거나 인쇄 호출을 추가할 수 있습니다.

 

위 사진 함수를 아래 사진의 let regex = ~~~~~ 로 변형 시켰다....

위 변수를 아래 사진 순서대로 변형이 되었다..

첫 함수인 parseLine이라는 함수가 이렇게... 함축되었다.... 너무나도 간소화 됐다.

 

 

모든 컬렉션을 포함하여 프로토콜의 이름을 쓸 수 있는 거의 모든 위치에서 기본 관련 유형으로 만들 수 있습니다.

요소 같은 관련 유형이 있는 경우 해당 유형 이름을 프로토콜 이름 뒤에 꺾쇠괄호 안에 넣으면 기본 관련 유형으로 만들 수 있습니다. 

두 개의 함수 중에 윗 함수는 제네릭
아래 함수는 모든 유형을 사용합니다.
하지만 제네릭 버전이 성능이 좋아 윗 함수를 사용해야 합니다. 

 

제네릭은  두 개의 제네릭 유형 이름을 선언하고 둘 다 제한한 다음 마지막으로 이런 제네릭 유형 이름을 매개 변수 유형으로 사용해야 합니다.

 

아래 함수인 모든 컬렉션과 모든 메일 맵을 작성하는 것과 비교하면 많이 피곤한 작업입니다. 
따라서 여러 단점에도 불구하고 모든 유형을 사용하고 싶을 거다..  하지만 Swift는 제네릭을 모든 유형처럼 사용하기 쉽게 만들고 있습니다. 
제네릭 매개 변수가 한 곳에서만 사용되는 경우 일부 키워드를 약칭으로 사용하여 작성할 수 있습니다.  더하여 기본 관련 유형도 지원하므로 훨씬 더 이해하기 쉬운 코드를 통해 모든 메일 맵 항목 컬렉션을 수락할 수 있습니다.  이런 기능이 제공되니 제네릭을 피할 이유가 없을 겁니다.! 

'swift' 카테고리의 다른 글

swift 객체에 대해 생각해보자.  (1) 2022.09.16
What's new in Swift(wwdc2022) [3]  (2) 2022.09.08
What's new in Swift(wwdc2022) [1]  (1) 2022.09.08
고차함수 map!  (0) 2022.09.07
lazy var에 대해 알아보자  (0) 2022.09.06