この記事は株式会社クロノスの「~2020年春~勝手にやりますアドベントカレンダー」の14日目の記事ですが、 記事内容は現在も更新していってます 。
「~2020年春~勝手にやりますアドベントカレンダー」インデックスはこちら
はじめに
他の方もまとめてくれているものが沢山あります。あくまで自身のメモ代わりで。
とりあず、開発序盤は、ライブラリ漁りしてる事が多いです。
毎回探すのが面倒なので、まとめてメモしておくことにします。
※基本的には自分が開発で実際に導入したもののみ記載(一部違う)。
※AWSやFirebaseは除外。
サマリ
- Alamofire
- Moya
- MagicalRecord
- Realm
- SwiftyJson
- SWXMLHash
- SwiftyXMLParser
- SVProgressHUD
- SwiftSpiner
- PKHUD
- CDAlertView
- MessageKit
- IQKeyboardManagerSwift
- TextFieldEffects
- SwiftyPickerPopover
- HideShowPasswordTextField
- R.swift
- KeychainAccess
- PromiseKit
- Promise
- SwiftPrettyPrint
- Gedatsu
通信系ライブラリ
Alamofire
いわずもがな、超メジャー通信ライブラリ
説明不要かな
Moya
Alamofireをさらに拡張して、使いやすくしたライブラリ
Alamofireに慣れているとそれほどかもしれませんが、
ちょっとした所で使いやすくなっています。
DB関連
MagicalRecord
CoreDataを簡単に利用するためのライブラリ
こちらも老舗のメジャーライブラリ
Realm
モバイルデータベースのRealmです。
デファクトスタンダードと言っても過言ではないと思ってます。
パース系
最近はほとんどがJSON利用しているので、XMLとかライブラリあると地味に助かってます。
SwiftyJson
Jsonパース系では、追随を許さないくらいのメジャーライブラリ
SWXMLHash
こちらはXMLをパースしてくれます。
XMLは最近使うことがあまりないのですが、たまにでてくると非常に面倒なので助かります。
SwiftyXMLParser
Yahoo Japanさんが提供してくれているライブラリ
SwiftyJsonやSWXMLHashをインスパイヤされて作成さたようです。
使い方の好み的には、SWXMLHashよりこっちかなー。
UI系
ローディング関係は、好みが分かれたり、アプリのコンセプトなどにもよるので
スタンダード(地味?)なものが好まれている印象です。
SVProgressHUD
こちらも有名なローディングライブラリ
試してみたら、iOS13だと位置がずれた。。。
※画像はGithub引用
SwiftSpiner
PKHUD
Swift製で派手な要素はないが、シンプルで使いやすくなってます。
※画像はGithub引用
CDAlertView
アラート(ダイアログ)表示ライブラリ
表示だけでなく、アニメーションも可能、使い方もシンプルなので便利です。
※画像はGithub引用
MessageKit
LineのようなチャットメッセージUIを提供してくれます。
導入方法も簡単、テキスト、画像、MAPなどにも対応しています。
※画像はGithub引用
IQKeyboardManagerSwift
こちらは、入力時のキーボードが表示された際に画面を自動であげてくるライブラリです。
導入含めてめちゃくちゃ助かってます。
※画像はGithub引用
TextFieldEffects
テキスト入力フィールドをスタイリッシュにしてくれます。
いくつかスタイルも用意されていて、使いやすいです。
SwiftyPickerPopover
HideShowPasswordTextField
TexFieldの文字を表示したり、マスクしたりできる便利
※画像はGithub引用
拡張、ユーティリティ、その他系
ユーティリティ関連、カテゴライズ面倒なのもここにいれてます。
R.swift
Androidでおなじみのリソース関連を簡単に取得できる仕組みですが、
それのSwift版ですね。
Storyboad、Segue、xib、image、などがコード補完で型までちゃんとして取得できる。
KeychainAccess
Keychainをラッピングして使いやすくしてくれています。
共通クラスに記述して使用してました。
PromiseKit
非同期処理用のライブラリ
シンプルに非同期処理が記述できるのがうり。
まぁ、Javascriptで慣れているかたも多いのではないでしょうか。
Promises
Google製のライブラリ
PromiseKitと同様にシンプルに非同期処理が記述できる
Github見るかぎり、こっちのほうが早いよって書いてある。
※これは未使用
SwiftPrettyPrint
print(), debugPrint() and dump() での出力を見やすくしてくれるライブラリ
スタンダードライブラリと言っても過言ではないのかなと。
※使ってるくせに忘れてました
Gedatsu
AutoLayoutのあいまいな制約について分かりやすい状態でログに出力してくれる。
※画像はGithub引用
まとめ
一回使って便利だったものは、CocoaPods、Carthageと管理は変われど、概ねリピートしてます。
その他、もっと使ってるのですが暇を見つけて追加していきます。
他にもコード拡張などもあるので、それもいつか記事にしたい。