2018년 5월 8일 화요일

Range, 범위에 대한 이야기 | Swift

Swift 의 Range 기능은 1.0 이라는 초창기 버전 부터 존재했으며 Swift 버전이 올라감에 따라 여러 가지 기능이 붙거나 세분화 되었습니다. 그런데 제 블로그에서는 별도로 정리를 한 글이 없어서 이 범위(Range)에 대한 것을 정리해 봅니다.

참고로 이 글은 Swift 4.0 을 기준으로 쓰여 졌습니다.

2018년 5월 1일 화요일

Result of call to ... is unused | Swift

언제 부터인지 기억나지는 않지만 스위프트(Swift)에서 값을 반환(return)하는 함수나 메소드 등을 그냥 호출하면, 즉 리턴값을 받지 않고 그냥 호출하는 코드에서는 아래와 같은 경고가 뜹니다.
Result of call to (Some Function or Method) is unused
메시지만 봐서는 별거 아닌 것일지도 모릅니다. 당연히 내용도 간단하고 해결법도 단순해 보입니다.

2018년 4월 23일 월요일

연산형 지역 변수 (Local Computed Variables) | Swift

우연찮게 미디엄 뉴스레터에서 보게 된 글에서 약간의 충격(?)을 받게 된 것이 있는데 바로 제목의 연산형 지역 변수입니다. 말이 잘 이해가 안 될 수도 있는데 영문 표현인 Local Computed Variables 의미를 거의 직역한 것이라서 애매하긴 합니다. 적당한 한국어 표현이 떠오르지 않네요.

하여간 매우 단순한 기능이지만 어떤 면에서 아주 유용하기에 간단하게 소개해 봅니다.

2018년 4월 9일 월요일

[Objective-C] Block implicitly retains 'self' 경고 해결하기

Xcode 를 9.3 으로 업데이트 하기 전만 해도 별 문제 없던 프로젝트가 갑자기 아래와 같은 경고를 내뿜기 시작 했습니다.
Block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior
블록이 self 를 잡아 물고 가버릴 수도 있는데 명확하지 않다는 식으로 이해가 됩니다. 그런데 경고가 발생한 위치를 보면 위 경고 메시지가 뭘 원하는 것인지 도통 이해 할 수가 없었습니다. 경고라 가볍게 넘어 갈 수도 있겠지만 일단 해결하는 방법을 알아봅시다.