iOS 앱 실무 개발에 사용되는 기본 리소스

2017-02-01
27 Views

필자가 iOS 앱 개발시 자주 사용하던 Swift 3.0기준 리소스를 정리한 것을 공개한다.

상수 공통 정리 App.swift 만들기

어떤 파일이라도 참조하는 상수를 struct로 관리하며 값이 중간에 변경해야 하는데 할 수 없는 경우 이 파일의 값을 변경하면 된다. 이 말은 앱의 전반적인 설정을 모아두는 클래스라고 보면 된다.

R.swift 도입하기

소스코드 완성형 리소스 관리에 용이하고 이름을 잘못 입력하는 것을 방지하고 소스코드도 짧게 작성할 수 있는 장점이 있다.

[설치방법]

  1. Cocoapods를 통해 설치하기 때문에 프로젝트내에 터미널에서 pod init를 실행한다.
  2. Podfile에 pod ‘R.swift’를 추가하고 pod install로 프로젝트에 설치한다.
  3. 프로젝트명.xcworkspace파일로 프로젝트를 열고 xcode에서 Targets -> Build Phases를 열고 [+]버튼을 클릭하여 [New Run Script Phase]를 선택한다.
  4. 신규로 추가된 Run Script를 Check pods Manifest.lock아래로 이동시킨다.
  5. 다음으로 Runt Script화면에서 “$PODS_ROOT/R.swift/rswift” “$SRCROOT”를 추가한다.
  6. 다음으로 프로젝트를 빌드(Command + B)를 하면 프로젝트 루트에 생성되는 R.generated.swift파일을 프로젝트로 끌어와 추가한다. 이때 “Copy items if needed”를 체크하지 않는다.
  7. 마지막으로 git을 통해 소스관리를 한다면 .gitignore파일에 *.generated.swift를 추가한다.

이를 사용하는 이유에 대해 간단하게 비교해보면 다음과 같다.

R.swift없이 사용시

R.swift사용시

자주 사용하는 패턴

synx를 사용하여 Group과 디렉토리 구성을 일치시키기

Xcode에서 Group을 만들어도 실제 디렉토리 구조는 변경되지 않기 때문에 도구를 별도로 사용하여 구성해야 한다. 그래서 추천하는 도구가 바로 synx라는 커멘트라인 도구를 사용하여 실제 디렉토리 구조로 일치시켜 주는데 참고하자.

설치(터미널) $gem install synx

APIKit과 Realm 사용하기

Extension 관련

base64 문자열 디코딩

페이드인/페이드아웃 애니메이션

날짜 형식 변경

 

Facebook Comments

You may be interested

페이지 로딩 위치에 따른 사용자 시선 유도
Swift 3.0
shares3 views
Swift 3.0
shares3 views

페이지 로딩 위치에 따른 사용자 시선 유도

MJ Kim - 4월 29, 2017

로딩되는 표시를 표시할 위치를 조금 고민해보면서 사용자경험(UX)를 개선하기 위함을 고려해서 정리해 본다. 로딩을 생각해보면 대부분 한가운데에 표시하면 된다고 생각하지만, Twitter…

iOS와 Android UX의 차이점
Swift 3.0
shares2 views
Swift 3.0
shares2 views

iOS와 Android UX의 차이점

MJ Kim - 4월 29, 2017

최근 필자가 iOS와 Android를 같이 개발하다보니 UX의 차이점을 기억하고자 정리해본다.  이를 정리하는 이유는 운영체제별로 차이점을 이해하고 그 차이점을 극복하기 위함이다.…

모바일 앱 아키텍처
Swift
shares26 views
Swift
shares26 views

모바일 앱 아키텍처

MJ Kim - 4월 22, 2017

이 내용은 나름대로 개발해본 내용을 토대로 정리해본 모바일 앱 아키텍처에 대한 내용이다. 이를 정리한 이유는 오래된 아키텍처부터 최근 아키텍처까지 정리해보고…