2016年 iOS 開発手法,使用しているライブラリなどまとめ

年末なので,聞いたり,自分が経験した iOS 開発手法についてまとめておこうと思います.

個人的にはようやく今年の後半になって Swift3 のみで書かれたアプリ開発に参加しました.
以下のライブラリ,ツールの選定についても Swift3 を考慮した選定となっていると思います.
また,開発手法に関してもオブジェクトの配置は,コードベースの AutoLayout を採用したりと変化がありました.
来年もさらに,デバイスのスクリーン サイズが増えそうなので,AutoLayout まわりの知識はより必要となっていくと思われます.
以前,AutoLayout についてざっとチェックした際には,InterfaceBuilder での作業が繁雑であること.また,コードベースの AutoLayout は馴染みのない記載方法だと感じ,あまりいい印象はなかったのですが,最近では AutoLayout + ライブラリ(snapkit など)の利用でレイアウト制約を記述する負担を軽減する手法も紹介されつつあるようです.
今後の技術トレンドとしては,プロトコル指向についてウォッチしていきたいなと考えています.

▼ 開発ツール,ライブラリ

Xcode これがないと始まらない標準 IDE
CocoaPods ライブラリ管理
Carthage ライブラリ管理
Bundler CocoaPodsのバージョンを管理.
SwiftLint コードの品質チェックツール
Swimat Swift の Formatter
mergepbx pbxファイルのマージ用
SnapKit AutoLayout を DSL 風に記述できる.
R.swift Storyboard名や画像名をプロパティーとして取得できる.
Alamofire 通信ライブラリ
ObjectMapper
AlamofireObjectMapper
Kingfisher 画像ダウンロード
XCGLogger ロガー
KeychainAccess Keychainを簡単に使うライブラリ
RealmSwift データベース

▼ SwiftLint

https://github.com/realm/SwiftLint
インストール方法
brew install swiftlint

SwiftLintを試してみた

▼ mergepbx

Xcode プロジェクトの構成情報 pbxproj ファイルを Git でマージするときに手助けしてくれるツール.

インストール方法
$ git clone https://github.com/simonwagner/mergepbx
$ cd mergepbx/
$ ./build.py
$ sudo cp mergepbx /usr/local/bin/

mergepbxを使ってみる

▼ SnapKit

https://github.com/SnapKit/SnapKit#installation
http://snapkit.io/docs/

▼ R.swift

StoryboardからViewControllerを取得する
画像リソースを取得する
フォントやLocalizable Stringを取得する

さらに便利になったR.swiftの実力を見るがいい

R.swiftを使ってStoryboard名や画像名のTypoを0にする

▼ Kingfisher

KingFisher は,SDWebImageを参考にSwiftで実装されていそうです.

[Swift]KingFisherで画像URLから画像データをダウンロード

▼ KeychainAccess

SwiftでKeychainを簡単に使うライブラリ “KeychainAccess” を書きました

▼ RealmSwift

公式ドキュメント
https://realm.io/jp/docs/swift/latest/

RealmSwift入門編

Realm Swiftのまとめ

▼ 参考:

妄想iOSアプリ新規開発

iOSアプリケーションでコードベースのレイアウトを積極利用する

▼ 今後,チェックしたい技術トレンドなど

オブジェクト指向とプロトコル指向
画面遷移(ルーティング)

コメントを残す

メールアドレスが公開されることはありません。