Swift 앱 개발에 사용하기 좋은 라이브러리 요약

8024 단어 도서관iOSSwift
Swift 초보자 자신이 최근에 알았다 & 사용해 좋았던 라이브러리를 정리해 갑니다
수시로 업데이트 예정입니다

우이



SnapKit/SnapKit



코드로 쉽게 AutoLayout을 구현할 수 있습니다.

이미 AutoLayout을 사용하는 View에서 코드로 addSubview()를 할 때 유용했습니다.

Sample.swift
// viewにnewViewを追加
view.addSubview(newView)

// Superview(view)のTop、Bottom、Leading、Trailingに各margin0で制約を与える
newView.snp_makeConstraints { make -> Void in
    make.top.leading.trailing.bottom.equalTo(view)
}

facebook/pop



바운스의 움직임 등, 애니메이션의 구현을 간단하게 할 수 있는 라이브러리

TIPS: Objective-C제이므로 필요 BridgingHeader입니다

devxoul/JLToast



안드로이드가 부러웠다! 토스트 디스플레이 라이브러리입니다.
다음과 같은 Attribute도 부여할 수 있어 편리했습니다


Attribute


JLToastViewBackgroundColorAttributeName

JLToastViewCornerRadiusAttributeName

JLToastViewTextInsetsAttributeName

JLToastViewTextColorAttributeName

JLToastViewFontAttributeName

JLToastViewPortraitOffsetYAttributeName

JLToastViewLandscapeOffsetYAttributeName


TIPS: 현시점에서는 Attribute를 하나씩 설정할 수 밖에 할 수 없기 때문에, Fork해 동시에 복수 설정할 수 있도록(듯이) 하면 좋을지도 모릅니다 ( 샘플이 있습니다. )

JSON/Model Mapping



Hearst-DD/ObjectMapper



JSON 형식의 API 응답 및 plist 매핑에 사용합니다.

TIPS : Objective-C에서 말하는 Mantle/Mantle

네트워크



Alamofire/Alamofire



네트워크 통신용 클래식 라이브러리

TIPS : Objective-C에서 말하는 AFNetworking/AFNetworking

Image Downloader



onevcat/Kingfisher



이미지 다운로드 및 캐싱 라이브러리
TIPS: rs/SDWebImage 에도 INSPIRE된 것 같습니다! function명도 비슷해서 사용의 용이성◎

Reactive Programming



ReactiveX/RxSwift



리액티브 프로그래밍에 사용

TIPS: Objective-C제에서는 ReactiveCocoa/ReactiveCocoa
(Swift 대응이 끝났습니다. leegun 씨 감사합니다!)

앞서 언급한 Alamofire나 ObjectMapper와 병용한 네트워크 주위의 구현에 도움이 됩니다.
또, 값 감시를 해 MVVM 모델을 구현하거나, 용도는 다양하고 매우 편리합니다

TIPS: RxSwift+MVVM 모델 샘플 있습니다

Data Base



realm/realm-cocoa (RealmSwift)



쉽게 앱 내에서 데이터베이스를 구현할 수 있습니다.
전술한 ObjectMapper와의 병용도 편리합니다

TIPS: 공식 사이트 이나 문서도 정비되어 있으므로◎

Date



malcommac/SwiftDate



NSDate의 번거로운 취급이 훨씬 쉬워지고 놀랐습니다.

Before: SwiftDate 없음(일반)

WithoutSwiftDate.swift
// 現在日時を取得
let nowDate = NSDate()

// フォーマット指定(YYYY/MM/DD HH:MM:SS)
let formatter = NSDateFormatter()
formatter.dateFormat = "YYYY/MM/DD HH:MM:SS"

print("\(formatter.stringFromDate(nowDate))") // 2016/02/35 11:02:09

After: SwiftDate 있음

WithSwiftDate.swift
// 現在日時を指定フォーマット(YYYY/MM/DD HH:MM:SS)で取得
let nowDate = NSDate().toString(DateFormat.Custom("YYYY/MM/DD HH:MM:SS"))
print("\(nowDate)") // 2016/02/35 11:02:09

이런 코드도 쉽게 할 수 있었습니다
let date = 5.days.fromNow // 現在から5日後のNSDataオブジェクト
let date = 4.hours.ago // 現在から4時間前のNSDataオブジェクト
let date = (5.days + 2.hours - 15.minutes).fromNow // 計算もらくらく!

로그



DaveWoodCom/XCGLogger



로그 출력용 라이브러리



라이브러리 선정 포인트



cocoacontrols 등에서 찾으면 겉보기에 멋진 라이브러리를 많이 찾을 수 있습니다.
자계를 담아 그런 가운데 좋은 도서관을 만나기 위해 조심해야 할 일을 정리해 보았습니다.
  • Star의 수
  • 포크 수
  • Contributors 수

  • Issues 살펴보기
  • 버그 보고에 대응하고 있습니까?
  • 이상한 부분을 훅하고 있습니까?


  • 갱신일시
  • 대체로 최종 갱신 2month가 기준


  • 버전이 1 이상인가?
  • 1 이하의 경우 앱의베이스와 관련된 부분에 사용하지 마십시오.


  • 이상
    고마워요

    좋은 웹페이지 즐겨찾기