2014년 9월 12일 금요일

Swift - Xcode 6.1 Beta 변경점

이제 Xcode 6가 GM이 되면서 더 이상 베타가 아니게 되었다. GM 버전은 최종 릴리즈 후보로써 큰 문제가 없다면 바로 정식릴리즈가 되는 버전이다. 그런데 6 GM 버전에는 Swift로 맥(Cocoa) 앱을 개발 할 수 없다는 문제가 있다. 그래서 6.1 베타를 찾아보게 되었다.

2014년 9월 4일 목요일

Swift - Xcode 6 Beta 7 변경점

늘상 한국시간 기준 화요일에 릴리즈 되길래 이번주는 넘어가나보다 했지만 그 다음날에 베타7이 나와버렸다. 이번에는 변화가 좀 있길래 스위프트(Swift) 언어 위주로 변경된 점을 정리해본다.

2014년 9월 2일 화요일

Swift - 옵셔널(Optional) 엑세스

스위프트(Swift)의 옵셔널(Optional)은 '값이 없음(No Value)' 이라는 것을 심어주기 위한 기능이다. 단순하게 사용하려 한다면 그저 nil 초기화 여부를 조사하기 위한 용도로써 쓸 수 있겠지만, 액세스라던가 옵셔널 체인(Optional Chain) 등등을 아무런 지식 없이 쓰다보면 컴파일 에러나 런타임 에러를 종종 보게 될 것 같다. 그래서 약간의 시험과 더불어 개념을 조금 더 파고 들어가 보고자 한다.

2014년 8월 27일 수요일

[Python] 클래스 오브젝트 생성 제어

좀 특별한 경우겠지만, 특정 클래스의 오브젝트를 생성 할 때 조건을 만족하지 않으면 생성되지 않고 None이 되게 하고 싶은 경우라고 가정하자. 이렇게 하면 클래스 오브젝트 생성을 이용해 밸리데이션(Validation)이 가능해진다.

하지만 파이썬의 클래스 생성자격인 __init__ 은 값을 리턴 할 수가 없다. (정확히는 None만 리턴이 가능하다) 사실 대부분의 OOP에서 클래스의 생성자는 리턴을 가질 수 없다. Objective-C 같이 특이한 경우를 제외하고는...

2014년 8월 22일 금요일

Swift의 기본 프로토콜 세 가지: Equatable, Comparable, Printable

애플의 공식 스위프트 가이드(?)에 언급된 세 가지 프로토콜로 Equatable, Comparable, Printable이 있다. '-able' 이라는 이름이 붙은 걸로 보면 특정 동작이 가능하도록 유도하는 프로토콜로 추측이 가능하다. 이 프로토콜들에 대해 간략히 정리해본다.

2014년 8월 21일 목요일

OS X Yosemite DP 에서 Homebrew 실행문제 해결하기

현재 애플에선 한창 개발중인 OS X Yosemite Developer Preview 에서 내부 프레임워크들이 버전업이 됨이 따라 이에 의존성이 있는 소프트웨어들이 영향을 받게 되었다. 그 중에는 Homebrew도 끼어 있다.

2014년 8월 20일 수요일

Xcode 6 Beta 6 에서 발생한 링크에러 및 해결

Xcode 6 Beta 6를 사용하면서 약간의 변경점 때문에 Swift 코드를 일부 수정하고 빌드를 했더니 링크 단계에서 에러가 발생했다. 이번 베타에서도 뭔가 깊숙한 곳에서 바뀐게 있나 하고 답답해 했었다. 다행히도 해결책이 있어서 글로 정리해 본다.

2014년 8월 19일 화요일

Swift - 값(Value)과 레퍼런스(Reference)

애플의 공식 스위프트(Swift) 블로그에서 재미있는 내용이 올라와서 이를 설명해보는 글을 작성해본다. 참고로 글 내용은 값과 레퍼런스의 차이에 대한 것인데, 이 덕분에 클래스(class)와 구조체(struct)의 차이점을 한 가지 더 알 수 있게 되었다. 이 글에서는 이 중 값과 레퍼런스에 대한 부분만 정리한다.

2014년 8월 13일 수요일

Xcode 6 유닛테스트(Unit Test) 기초가이드

앞서 Swift 프로젝트에서 유닛 테스트 하기에 관한 글을 썼었는데 이번 글은 Xcode 6 에서 제공하는 유닛 테스트(Unit Test)의 기본 가이드이다. 코드는 스위프트를 기준으로 하겠지만 Objective-C 에서도 구조가 동일하기 때문에 이해하기에 어려울 것은 없을 것이다.