본문 바로가기

ios

Swift에서 Objective-C의 상수 대체제에 관하여 오늘의 주제 Objective-C의 상수와 스위프트의 상수 안녕하세요 야곰입니다.Objective-C를 쓰다가 스위프트로 넘어왔을 때 고민되었던 부분 중의 하나인 스위프트의 상수에 관해 이야기해 보려 합니다. 혼자 프로젝트를 진행하다 보면 상수의 필요성을 많이 느낄 수 없을지 모르지만, 누군가 협업을 하게 된다면, 혹은 미래 또는 과거의 나와 협업(?)을 하게 된다면 상수의 필요성을 많이 느끼게 됩니다. 바꾸면 안 되는 데이터를 실수로 바꿔서 난감했던 경험이 없나요? 혹시 그런 적이 있다면 상수의 필요성에 대해서는 많이 공감하실 것으로 생각됩니다. * 오해가 생길 소지의 표현들이 있어서 처음 발행 이후 조금 수정하였습니다. 좋은 의견 주신 과니님 고맙습니다 :) 사라진 const 사실 저는 Objecti.. 더보기
CocoaPods 설치 및 Pod 설치 오늘의 Tip 1. CocoaPods이란?2. CocoaPods 설치3. Pod 설치4. Pod 찾아보기 안녕하세요 야곰입니다.오늘은 코코아팟에 대한 이야기를 해보려고 합니다. # CocoaPods이란? iOS 및 macOS, tvOS 등 애플 플랫폼에서 개발을 할 때, 외부 라이브러리를 관리하기 쉽도록 도와주는 의존성 관리 도구들이 있습니다. CocoaPods는 애플 플랫폼을 위한 의존성 관리도구의 일종입니다. 애플 플랫폼에서 사용할 수 있는 의존성 관리 도구의 대표적인 예로는 [CocoaPods], [Carthage], [Swift Package Manager] 등이 있습니다. 더 자세한 설명은 이미 써두신 분들이 많아 링크를 드립니다. CocoaPods에 대해 설명하고 있는 문서 링크[Naver D.. 더보기
야곰이 iOS에서 자주 사용하는 라이브러리 모음 iOS 오픈 라이브러리 모음 제가 자주 사용하는 라이브러리들을 모아봤습니다. 개인 취향이나 세부목적에 쓰는 기능이 아닌 보편적으로 쓸 수 있는 기능들을 위주입니다. 누군가에게는 도움이 되면 좋겠네요 :D * [] 안에 표시된 이름은 Objective-C로 작성된 유사 라이브러리입니다. * 유틸리티 Alamofire [AFNetworking]말이 필요없는 네트워킹 라이브러리죠! Swift로 쓰여졌으며 대부분의 네트워킹 기능을 아주 멋드러지게 구현해두었습니다. 형제로는 Objective-C로 쓰여진 AFNetworking이 있습니다. https://github.com/Alamofire/Alamofirehttps://github.com/AFNetworking/AFNetworking SwiftyJSON [JSO.. 더보기
What's New in Cocoa Touch [Session 205] 3/4 What's New in Cocoa Touch WWDC 2016 - Session 205 WWDC 2016 세션 205의 주제인 What's New In Cocoa Touch 요약정리입니다. 이 포스트는 세션 205요약 중 네 번째(마지막) 글입니다. 지난 포스팅2016/08/13 - [WWDC/WWDC2016] - What's New in Cocoa Touch [Session 205] 1/42016/09/05 - [WWDC/WWDC2016] - What's New in Cocoa Touch [Session 205] 2/42016/12/16 - [WWDC/WWDC2016] - What's New in Cocoa Touch [Session 205] 3/4 이번 포스팅에선 아래 주제를 정리합니다. # Int.. 더보기
What's New in Cocoa Touch [Session 205] 3/4 What's New in Cocoa Touch WWDC 2016 - Session 205 WWDC 2016 세션 205의 주제인 What's New In Cocoa Touch 요약정리입니다. 이 포스트는 세션 205요약 중 세 번째 글입니다. 지난 포스팅2016/08/13 - [WWDC/WWDC2016] - What's New in Cocoa Touch [Session 205] 1/42016/09/05 - [WWDC/WWDC2016] - What's New in Cocoa Touch [Session 205] 2/4이번 포스팅에선 아래 주제를 정리하고, 나머지 주제는 다음 포스팅에서 이어집니다. # Adopting System FeaturesOpening applicationsCore DataCloudKi.. 더보기
What's New in Cocoa Touch [Session 205] 2/4 What's New in Cocoa Touch WWDC 2016 - Session 205 WWDC 2016 세션 205의 주제인 What's New In Cocoa Touch 요약정리입니다. 이 포스트는 세션 205요약 중 두 번째 글입니다. 지난 포스팅2016/08/13 - [WWDC/WWDC2016] - What's New in Cocoa Touch [Session 205] 1/4 이번 포스팅에선 아래 주제를 정리하고, 나머지 주제는 다음 포스팅에서 이어집니다. # Building better user interfacesAccessibility InspectorSpeech RecognitionSmarter Text InputDynamic TypeImproved CustomizationPeek & Po.. 더보기
What's New in Cocoa Touch [Session 205] 1/4 What's New in Cocoa Touch WWDC 2016 - Session 205 WWDC 2016 세션 205의 주제인 What's New In Cocoa Touch 요약정리입니다.이 포스트는 세션 205요약 중 첫 번째 글입니다.이번 포스팅에선 아래 주제를 정리하고, 나머지 주제는 다음 포스팅에서 이어집니다. # What's Not New in Cocoa TouchAdaptivityAdvanced Touch InputKeyboard Support# Core technologiesSwift 3Grand Central DispatchFoundationUIPasteboardWide ColorImage RendererAsset Management # What's Not New in Cocoa Touc.. 더보기
Swift에 따른 Objective-C의 새로운 기능들 Objective-C의 기능 추가 1. Nullability annotations 2. Generics 안녕하세요 야곰입니다 :) Swift 2.0이 오픈소스화 되면서 관심이 많이 쏠리고 있습니다. 그러나 기존 Objective-C 프로그래머들 사이에서는 Swift에 따라 변화되는 다양한 모습들이 부담으로 다가오기도 합니다. Swift 언어 문법과 기능들에 더 잘 맞춰주기 위하여 기존의 API들이 변경되기도 하고, Objective-C의 문법적 기능들과 키워드들이 몇몇가지 추가되기도 했습니다. 그에대해 간략히 살펴보는 시간을 가져보도록 할게요. # 해당내용은 2015년 6월 말에 작성된 내용으로, 애플에 의해 추후 변동의 여지가 충분히 있음을 미리 알립니다. # Nullability Swift는 지난 포.. 더보기
Objective C 우린 왜 굳이 오브젝티브-C를 배워야 할까? # 재미있는 언어 Objective-C 여러분들께서는 오브젝티브-C를 어떻게 생각하시나요? 언어의 역사와 배경을 아는 것이 정말 무의미해 보일지 모르겠지만, 오브젝티브-C의 탄생 배경을 살펴보면 재미난 점도 많고, 사용하면서 부딪힐 의문에 대해서도 더 많이 이해하게 될 수 있습니다. 그럼 오브젝티브-C는 어떻게 태어났는지, 왜 제대로 알고 써야 할지 생각해 볼까요? # Objective-C는 어떻게 탄생하고 발전해왔을까? 오브젝티브-C는 ‘객체 지향 프로그래밍 C언어 [Object-Oriented Programming in C, OOPC]’라는 이름으로 시작된 언어입니다. 즉, C를 객체 지향 언어로 발전시킨 것으로, 1983년에 발표되었습니다. 당시 사람들은 구조적 프로그래밍 습관에 따라 프로그래밍을 .. 더보기
4인치 디바이스 지원하기 (iPhone 5) 오늘의 Tip 1. 4인치 디바이스 적용하기 음... 일단 매우 늦은감이 넘치지만ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 요청이 있어 짬내어 포스팅합니다. 아이폰 5가 출시되면서 화면 비율의 파편화가 생겼죠... Aㅏ........... 여튼...ㅋㅋㅋ 아이폰 5에 적절히 대응하는 방법에 대해 알아보도록 합시다. # 기본 준비 일단, 4인치 기기인지 구별할 수 있는 매크로를 구현해 봅시다. 프로젝트의 pch파일에 해당 매크로를 추가합니다. 이렇게 해 두면 프로젝트 어디에서라도 이 매크로를 사용할 수 있습니다. 그리고 한가지 팁을 더 추가하면 시뮬레이터에서 기기를 변경하는 방법입니다. 3.5인치, 4인치 번갈아가면서 하려면 기기를 선택할 줄 알아야 하죠. # nib(xib)을 사용하는 경우 여러가지 방법이 존재하지만, 제가.. 더보기
iOS개발하기 #52. UIGestureRecognizer 오늘의 주제 1. UIGestureRecognizer 사용해 보기 쉰 두번째 시간입니다.^^ 정말 오래간만의 포스팅입니다 :) 오늘은 '새벽다섯시반'님의 요청으로 포스팅을 진행해 보도록 하겠습니다. 길게 눌렀을 때 특정 동작을 할 수 있도록 구현해보고 싶다고 말씀하셨습니다. 그녀석은 바로 Gesture Rcognizer!! 그럼 알아볼까요? 스따뚜~~~~~~~~~~~~ # Gesture Recognizer란? 말 그대로 유저의 제스쳐를 인식하는 녀석입니다. 양쪽위아래로 밀기(swipe), 꾹 누르기(long press), 탭하기(tap, 여러번도 포함) 등등 많은 제스쳐를 인식할 수 있지요. 자, 그럼 그녀석을 어떻게 사용하느냐? 따라오세요~ 일단 프로젝트를 만들어야겠죠?ㅎ 네, 만듭니다. 옵션 체크된거.. 더보기
파헤치기 #5. iOS App Programming Guide (5) App States and Multitasking <1> 이 문서는 2013s 01. 기준으로 작성된 글이므로, 이후에 애플 문서의 내용이 변경될 수 있습니다. 또한 전문 번역가가 아니기 때문에 의역, 오역의 소지가 다분히 많습니다. 참고하시기 바랍니다. 공개 수배 합니다! 유용한 iOS 개발문서를 함께 번역해 나갈 분들을 찾습니다. 현재도 함께 작업중이신 분들 모두 전문 번역가 아닙니다. 모두 열정과 열의로 함께 작업하고 계십니다. 자신의 재능을 자신뿐만 아니라 또 다른 누군가를 위해서 사용한다면 더더욱 빛이 날 것입니다. 함께하길 원하는 분께서는 덧글 또는 이메일 주시기 바랍니다 :) 오늘의 주제 1. Manage App State Changes 파헤치기 다섯 번째 시간입니다.^^ 이번 파트는 Scott Lim 님께서 도와주셨습니다. 번역에 도움주셔서 진심.. 더보기
파헤치기 #4. iOS App Programming Guide (4) Core App Objects <2> 이 문서는 2012. 12. 기준으로 작성된 글이므로, 이후에 애플 문서의 내용이 변경될 수 있습니다. 또한 전문 번역가가 아니기 때문에 의역, 오역의 소지가 다분히 많습니다. 참고하시기 바랍니다. 공개 수배 합니다! 유용한 iOS 개발문서를 함께 번역해 나갈 분들을 찾습니다. 현재도 함께 작업중이신 분들 모두 전문 번역가 아닙니다. 모두 열정과 열의로 함께 작업하고 계십니다. 자신의 재능을 자신뿐만 아니라 또 다른 누군가를 위해서 사용한다면 더더욱 빛이 날 것입니다. 함께하길 원하는 분께서는 덧글 또는 이메일 주시기 바랍니다 :) 오늘의 주제 1. The User Interface 2. The App Bundle 파헤치기 네 번째 시간입니다.^^ 이번 파트는 낭만떡대 님께서 도와주셨습니다. 번역에 도움.. 더보기
파헤치기 #3. iOS App Programming Guide (3) Core App Objects <1> 이 문서는 2012. 12. 23. 기준으로 작성된 글이므로, 이후에 애플 문서의 내용이 변경될 수 있습니다. 또한 전문 번역가가 아니기 때문에 의역, 오역의 소지가 다분히 많습니다. 참고하시기 바랍니다. 공개 수배 합니다! 유용한 iOS 개발문서를 함께 번역해 나갈 분들을 찾습니다. 현재도 함께 작업중이신 분들 모두 전문 번역가 아닙니다. 모두 열정과 열의로 함께 작업하고 계십니다. 자신의 재능을 자신뿐만 아니라 또 다른 누군가를 위해서 사용한다면 더더욱 빛이 날 것입니다. 함께하길 원하는 분께서는 덧글 또는 이메일 주시기 바랍니다 :) 오늘의 주제 1. Core App Objects of Your App 2. The Data Model 파헤치기 세 번째 시간입니다.^^ 이번 파트는 낭만떡대 님께서 도.. 더보기
파헤치기 #2. iOS App Programming Guide (2) App Design Basics 오늘의 주제 1. App Design Basics 파헤치기 두 번째 입니다~^^ 처음 문서 파헤치기는 어땠나요? 좀 허접..아니 많이 허접하고... 이거 왜 쓰나 싶기도 하죠? 네... 뭐 ... 일단 해보고 보는겁니다 ㅎㅎ 일단 칼을 들었으면 무라도 베어봐야죠? 참...!! 공개 수배 합니다! 함께 이 일을 해나가실 분이 있으면 좋겠습니다!! 100% 완벽 번역과 해석을 요하는 것이 아닙니다. 중요 포인트를 짚어서 반(?)번역 이라도 함께 해 주실 분을 찾습니다! 아무래도 생각보다 시간이 많이 걸리네요... 물론 원문 그대로 보는 것이 훨씬 좋겠지만, 그래도 우리나라 글로 풀어 쓴다면 조금이나마 장벽을 낮출 수 있지 않을까 싶습니다. 저를 도와주실 의향이 있으시다면 주저마시고 이메일 yagomsoft@.. 더보기
iOS개발하기 #51. 실전 프로젝트. 간단한 계산기와 메모장(2) 오늘의 주제 1. 계산기 기능 넣기 2. 메모장 화면 구성 바꾸기 쉰 한 번째 시간입니다.^^ 지난 번에 만들어 놓은 계산기 아직 잘 갖고 계신가요?ㅎㅎㅎ 이제 계산기 로직을 완성해 볼 차례입니다. 아............. 지금 제가 글을 쓰고 있는 이 시간은 아직 훈련소에 가기 전이지만, 전 지금 훈련소에서 뒹굴고 있겠군요 ㅋㅋㅋㅋㅋㅋㅋㅋ 뭐, 응원의 한마디...는 볼 수 없겠지만 무탈히 돌아오도록 기도해주세요 ㅋㅋㅋㅋㅋ 2일 전인데 한달이라도 막상 가려니까 싱숭생숭 하네요 ㅋㅋㅋ 아마 들어가기 전까지도 계속 블로그 포스팅 예약을 하다 갈거 같은..ㅋㅋㅋㅋㅋㅋㅋㅋ 뭐 여튼 사설은 각설하고 시작해 봅니다~~~~~~~~~~~~~ # 계산기 기능 완성하기 일단, 지난번에 구현파일에 만들어 주었던 enum을.. 더보기
Xcode에서 Storyboard파일이 xml문서로 나올 때 오늘의 Tip 1. 스토리보드가 xml로 나올 때 스토리보드 화면으로 나오도록 열기 # 스토리보드야 나와줘!!! 으히히, 가끔 스토리보드 기반으로 작업하다보면 xCode가 멍때리는지 스토리보드가 아닌 xml문서로 열리는 경우가 가끔 생깁니다. 아래 화면처럼요. 자, 그럼 스토리보드로 열어 봅시다. 이렇게요 ㅎㅎ .storyboard파일에서 우클릭 또는 ctrl 클릭 하면 팝업메뉴가 나오죠. 거기서 Open As - Interface Builder를 선택해 줍니다. 짜잔~~~~~~~~~~~~~~~~~ 초간단 팁 끝~~~~~~~~~ by yagom facebook : http://fb.yagom.net twitter : http://twitter.yagom.net ( @yagomsoft ) p.s 제 포스팅.. 더보기
iOS개발하기 #50. 실전 프로젝트. 간단한 계산기와 메모장(1) 오늘의 주제 1. 실전 프로젝트 생성 벌써 쉰 번째 시간입니다.^^ 많이도 써왔나 보네요...ㅎㅎ 벌써 오십번 째 글이라니 +_+ 이거 한 편 쓰는데 시간이 얼마나 오래걸리는지 여러분들을 모르실거예요..ㅋㅋㅋㅋㅋㅋㅋ 이제 실전 프로젝트(?) 라고 하기는 좀 그렇지만 예제 앱을 하나 만들어 볼까해요. 물론 저는 디자인을 하지 못하기 때문에 그냥 있는 그대로의 녀석들을 쓰겠지만 말예요..ㅎㅎ 간단한 계산기랑 메모장(?) 정도를 만들어 볼까해요. 단순히 감을 익히는데에는 큰 무리가 없을 것이라고 봅니다. 스토리보드를 원하는 분들이 많이 계셔서, 간단한 앱이기도 하니까 스토리보드와 ARC를 사용하여 진행하도록 하겠습니다. iOS5.1 Xcode 4.3.3 기준입니다. 오늘의 간단 결과물입니다. 미리보기 +_+ㅋ.. 더보기
iOS개발하기 #49. 예외처리. @try, @catch, @finally 오늘의 주제 1. 예외처리 마흔 아홉번째 시간입니다.^^ 싱글턴 패턴에 대해서는 조금 익히셨나요? 그 외에도 디자인 패턴이란 것은 많이 존재합니다. 싱글턴 패턴은 아주 간단한 예에 지나지 않습니다. 디자인 패턴에 관심이 생기신다구요? 그렇다면 이제 아주 기초는 벗어나고 있다~ 라고 생각하시면 되겠습니다..ㅎㅎㅎ 물론 제가 말씀드리지 않은 것들은 정말 많지만, 저의 목표는 레퍼런스들을 나열하여 언제든 가져다 쓸 수 있는 것보다는 여러분들이 직접 원리를 알고, 개발문서를 통해 스스로 뭔가를 만들어 낼 수 있는 그런 포스팅이 되길 바라기 때문에 굳이 레퍼런스들을 다 나열하진 않았습니다. 많은 도움이 되셨는지 모르겠습니다. :) 이 기초 포스팅도 이제 막바지를 향해 달려가고 있습니다. 정말 몇 개 쓴거 같지도 .. 더보기
iOS개발하기 #48. 객체 간 자료교환 Singleton (2) 오늘의 주제 1. Singleton 패턴 사용해 보기 마흔 여덟 번째 시간입니다.^^ 지난 번에 이어서 싱글턴 패턴 사용 방법에 대해 알아보도록해요 ㅎ 일단... 뭐... ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 지금 여러분들이 이 포스팅을 보고계신 시간이면 저는 논산 훈련소에 있겠네요~ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 아이 좋아.............는 개뿔...... 면회 환영합니다..............는 개뿔.........ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 여튼 오늘부터는 한달동안 제가 덧글을 달아드릴 수 없게되었군요...ㅠ_ㅠ 몸 건강히 돌아오겠습니다.ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 한 달 캠프 으쌰~ 자 잡소리 때려치고~ 스따뚜~~~~~~~~~~~~ # 싱글톤 객체 활용 이제 싱글톤 객체를 사용하기 위해, 헤더를 impo.. 더보기