사진 게시판
트위터 @caizer

푸허얼......... 막혔던 숨이 팍~ 트이는 기분이로군요. ㅠㅠ 이제..  iOS5 도 일반에 공개되었고, 더불어 개발툴인 Xcode 4.2 역시 정식으로 릴리즈되었습니다. 그 얘기인 즉슨!.. NDA이고 뭐구.. 이젠 막 떠들고 싶은 걸 떠들어도 된다는 얘기겠죠! 엉엉.. ㅠㅠ 


4.2 정식버전으로 넘어오면서, 징글징글했던 버그와의 전쟁도 끝났고.... 할까말까.. 할까말까... 덜덜 떨면서 몇발자욱 떨어져서 지켜만 보던 바로 그 기능 두가지도 이제 마음 껏 활용할 수 있게 되었죠!


먼저!.. ARC!.. Automatic Reference Counting의 줄임말인 ARC는 iOS컴파일에 애플의 LLVM 컴파일러 3.0을 사용하게되면서 얻어진 환상적인 녀석인데요. 


말그대로, 더 이상 iOS개발할 때도 객체의 참조를 신경쓰지 않아도 되게 되었습니다. OS X용 개발할 때는 꽤 오래전부터 이게 가능했는데.. ㅠㅠ 카이젼 경험해 본 적이 없었죠. Xcode 2.0때가 마지막으로 맥용 앱을 작성해본 때였던 지라... retain, release, autorelease에 무척 익숙했고...... 오히려 이 3가지 없이 Objective C를 쓴다는 것 자체가 무척 어색한게 사실이었습니다. 어떻게보면 iOS용 앱을 만드는게 더 편했다고나 할까요?... 


근데 막상... 덜덜거리면서.. 설마 이래도 되나싶을 정도로.. ㅠㅠ 해보니까 큰일입니다. ㅠㅠ 손가락과 머리는 retain과 release... autorelease를 썼다가 지웠다가.. 썼다가 지웠다가하면서....(새 Xcode로 ARC를 켜고 작업하면 너 자꾸 왜이러냐며 그러지 말라고 합니다. ㅠㅠb) 마음은 그래도 불안불안. 


하루종일 몇가지 샘플을 만들고 지지고 볶은 뒤에야......... 적응할 수 있었죠. 다만.. 어제는 또 예전 프로젝트를 열어서 작업하다보니.. ㅠㅠ 다시 예전 습관으로 금새 돌아가더군요. 당분간은 두가지 습관이 묘하게 얽히면서 공존할 듯 합니다. 


iOS에서 ARC가 안되었던 이유는 오로지 '속도'와 '메모리 효율성'이라는 것 때문이었는데요. 애플의 새 LLVM 컴파일러는 정말 대단합니다. 자세한 건 애플이 내놓은 ARC와 비ARC 비교차트를 찾아보시면!.. ㅠㅠ 엉엉.. 


그동안 코딩하면서 전체의 1/3 정도 차지했던 메모리 관리에 대한 압박에서 훨훨 벗어날 수 있게 되었습니다. 어우~씐난닷! 마돈나돈나~


여하튼간에.. ㅠㅠ 내년 1월까지 마무리지어야하는 iPad 앱프로젝트를 하나 시작했는데요... 어차피 새로 만드는 앱이라 과감하게작부터 ARC를!.. 그리고 지켜만봤던 두가지 중 다른 하나인 '스토리보드'를 사용하기 시작했습니다


스토리보드는, Interface Builder를 통해 Nib파일을 만들어서 인터페이스만 쏘옥~ 만들 수 있던 것을........... 좀 더 거시적 관점에서 보고 인터페이스 구성요소를 거대한 지도위에 순서도마냥....... 그림을 그려가며 슥슥~ 슥슥~ UI를 다 만드는 겁니다. 음.. 이렇게 설명하니깐 좀 어색한데요. 그림으로 대충 보면.. 


storyboardIsAmazing.jpg

이겁니다! 이거!... 네.. 농담같지만.. 사실이에요. ㅠㅠ 엉엉......... 뷰컨트롤러 별로 하나의 Nib 파일을 만들고, 그걸 불러다가 로딩하고 또 날리고...... awakeFromNib이니 viewDidLoad니.... iOS개발자라면 기계적으로 팍팍팍 두들겨대던 바로 그것들.... 한마디로 '시간낭비'하던 또 다른 1/3가 사라져버렸습니다. 엉엉.. ㅠㅠ 스토리보드로 모든 Nib들을 전부 대신하는 형태죠. 당연히 이전의 코딩방식으로 스토리보드를 쓸 순 없고요. ㅠㅠ Segue 라고 불리우는 새로운 방법이 도입되었죠. 네.. 세그웨이의 그 세그입니다. ㅠㅠ 


하루 정도 코딩하면서.. 대체 베타기간동안 그토록 많은 ViewController 관련 에러가 많았었는지.. 깨닫게 되었죠. 그리고 Modal View Controller Presenting 때의 메시지가 iOS5부터 새롭게 바뀌게되었는지... 정말이지 배경을 알게되고나니.. 감탄 감탄의 연속.. ㅠㅠ 엉엉.. 이건 스토리보드를 직접 해봐야 알죠. 엉엉.. ㅠㅠ 자꾸 눈물이.. ㅠㅠ 흑흑.. 

 

기존에 들였던 코딩 습관을 이상 버려야하지만.. 대신, 이번 적응기간만 끝나면 예전의 코딩 스타일로는 도저히 못돌아갈 같습니다. 다만 놀라운 혜택을 누리기 위해선 기존의 지식도 역시 필요하다는 점이... 아이러니합니다만.. 신규 iOS 개발자가 스토리보드만 쓰면 이전의 코드는 아예 이해도 못할 상황이 벌어질 것 같기도 하고요. 어떤 부분에 있어선 아예 앱 개발과정 전반에 걸쳐서 이해하는 방식이 상당히 차이가 날 수 있기 때문에… iOS 개발관련 서적 쓰시는 분들은 큰일이군요. ㅠㅠ ARC와 스토리보드 2가지만으로도 책을 어떻게 구성해야할지 엄청난 고민들을 하실 듯.... 카이져의 첫 스토리보드 프로젝트는 '당황스러움'으로 표현 할 수 있겠네요. 엉엉.. 지금은 괜찮아요. 그저 놀랍고 감사하기만 할 뿐.. ㅠㅠb ARC+스토리보드=무적 공식이 성립합니다. 


새롭게 iOS개발에 뛰어든다면.. 스토리보드를 무조건 쓰기를 권합니다. 기존의 코드들이 한 번에 사라지지는 않겠지만, 좀 길게 보면… 스토리보드를 사용하는 iOS 코딩만이 남을 수 밖에 없을 것 같습니다. iOS6정도만 가도.. 뭐.. Nib로딩하고, ModalView 내보내고 그러면 되게 이상한 기분이 들 것 같아요.


기존방식대로 작업하던 개발자들 역시, 빠른 시일내에 스토리보드로.. 새 프로젝트라면 반드시 도입하는 편이 좋을 듯 합니다. 기존의 프로젝트 이사가 복잡하다면 새롭게 추가되는 부분만 스토리보드를 채용할 수도 있지요, 그 반대의 경우도 가능하긴 합니다. 


테이블 뷰 작업할 때 '헉!' 하고, 여기에 데이타소스에다가 테이블뷰셀 리턴하는데 ARC로 autorelease도 없이 만들어서 리턴하니…. 뷰컨트롤러 서너개를 만들어서 왔다갔다하는데… 대체 뭘 작성한 코드가 거의 없네요. 심지어 실제로 돌아가는데도 불구하고.. 코드를 세세히 살피면서.. 대체 내가 뭘 빼먹은건 아닌가... 걱정아닌 걱정으로 한 참 시간을 보내기까지 했습니다. ㅠㅠ 


세상이 점점 좋아지네요. ㅠㅠb 2003년인가?... WWDC에서 Codeless Webbrowser 만드는 걸 즉석에서 시연할 때 느꼈던 기분과 비슷합니다. 







플레이스테이션> 10년 후 Xcode에선 또 얼마나 더 쉬워질래나요? ㅠㅠ Mac과 iOS이외에 플랫폼에서 프로그래밍이라는 건... 어릴 때 Apple II와 MSX에서 Basic 조물거린 것 밖에 없어서.. ㅠㅠ 다른 플랫폼에서 스토리보드 같은 녀석이 있는지는 모르겠습니다. 

번호 제목 글쓴이 날짜 조회 수
1950 요즘 화제가 되는 2권의 베스트셀러!!! 닥치고 정치와 스티브잡스 전기 [11] [4] file Caizer 2011.10.26 7026
1949 10월 26일 서울시장 보궐선거 투표 독려 메시지 [3] file Caizer 2011.10.26 6076
1948 카이져 생일날 풍경!.. ㅠㅠb (부제:욘사마빌딩과 DNA의 신비) [5] file Caizer 2011.10.23 6075
1947 iOS5 Tech Talk World Tour 2011이 이번엔 한국에서도!.. ㅠㅠb [2] [1] file Caizer 2011.10.21 7941
1946 iCloud로 이사는 잘 하셨나요? [13] [6] file Caizer 2011.10.15 8605
» Xcode 4.2로 온 뒤 가장 좋은 것 두가지!... ㅠㅠb [2] [16] file Caizer 2011.10.15 13229
1944 iPhone과 Galaxy S II 등 스마트폰들 BrowserMark 벤치마크 비교... [11] [21] file Caizer 2011.10.11 11077
1943 아......... Siri....... ㅠㅠ 흑흑.. [7] file Caizer 2011.10.09 8904
1942 향년 56세.. 잘가요. 스티브 잡스. ㅠㅠ 고마웠어요. 엉엉.. [4] file Caizer 2011.10.06 9321
1941 iOS5에 최적화 된, 카이져닷컴 북/매거진 솔루션! [2] file Caizer 2011.10.06 9968
1940 카이져닷컴 CEO의 10월 4일 애플 이벤트 소감은... ㅠㅠ [8] file Caizer 2011.10.06 6903
1939 하마 카이져. ㅠㅠ [1] file Caizer 2011.09.22 6293
1938 이것이 바로!.. 파워 아이패드 케이스다! ㅠㅠ [5] [1] file Caizer 2011.09.15 7166
1937 으악.. ㅠㅠ 흑흑.. 이게 결막염이었군요! ㅠㅠ [7] file Caizer 2011.09.04 7188
1936 얏호~ CEO도 오늘부터~ 4G~~~ ㅠㅠb [26] [4] file Caizer 2011.09.02 7136
1935 음식 공유 앱 두포크~!! ㅠㅠ [2] [1] file Caizer 2011.08.26 6486
1934 수고했어요. 스티브 잡스~ 생각해보니 당신 덕분에........ [16] file Caizer 2011.08.26 6771
1933 hp의 PC,모바일기기 사업 철수!!!... PC시장이여. 안녕~ ㅠㅠ 흑흑.. file Caizer 2011.08.19 8385
1932 우어.... 잘못하면 버릴 뻔한... 추억의 소란사이트! [5] [3] file Caizer 2011.08.18 7188
1931 만약!... 맥북의 수퍼드라이브를 교체해야 한다면!..... [6] [1] file Caizer 2011.08.10 8458
Copyright 2012 Caizer. All rights reserved.
XE Login