Location via proxy:
[ UP ]
[Report a bug]
[Manage cookies]
No cookies
No scripts
No ads
No referrer
Show this form
Submit Search
iOS開発で使えるオープンソースのライブラリやサービスの紹介
•
74 likes
•
12,909 views
asakahara
Follow
【名古屋】第31回iPhoneアプリ開発者勉強会でLTした時の資料です。
Read less
Read more
1 of 15
Download now
More Related Content
iOS開発で使えるオープンソースのライブラリやサービスの紹介
1.
iOS開発で使えるオープンソースの ライブラリやサービスの紹介 【名古屋】第31回iPhoneアプリ開発者勉強会 2015/1/17 @asakahara
2.
自己紹介 • 京都からやってきました • 去年は岐阜で開催されたiPhone勉強会に参加 •
昨年の2月から株式会社はてなに入社し京都に移住 • それ以前は広島のECサイト運営会社とフリーランスで 4年ほどiOSアプリ開発に従事 • 個人でもiOSアプリを6本ほどリリース
3.
• はてなのアプリケーションエンジニア • はてなブックマークiOS、Androidアプリ、Pressoなどを担当 •
現在はSwiftで新規アプリの開発中 • はてなブログ:http://sakahara.hatenablog.jp/ • 個人サイト:http://www.mocology.com/ja/ • Twitter:@asakahara • qiita:http://qiita.com/asakahara •今やってること •ブログ、SNSなど
4.
iOSアプリ開発をよりスマートに 行えるオープンソースの ライブラリやサービスを紹介 今日のお題 •紹介するライブラリはSwiftでも使用可能 •定番とUI系のライブラリを主に紹介
5.
パッケージ管理 •CocoaPods • 定番のライブラリ管理ツール • 全てのライブラリに適用可能 •
現状はベータ版なら Swiftにも対応 •Carthage • Swiftに対応しているのがメリット • 現状はdynamic frameworkのみをサポート • そのため全てライブラリに対応するのは現状では無理 • iOS8以降で動作する
6.
• 全てSwiftで実装されている • こちらもHTTPネットワーク通信用ライブラリでMattt
Thompsonさんが開発 • インターフェイスはAFNetworkingとは異なる • ライブラリのソースコードはSwiftで実装する際に参考なるので読んでみるとよい 通信周りとそのサポートをするライブラリ#1 •AFNetworking • 定番中の定番のHTTPネットワーク通信用ライブラリ • iOS開発で著名なMattt Thompsonさんが開発 • APIサーバからJSONのレスポンスを取得してパースする処理なら数行で書ける •Alamofire
7.
通信周りとそのサポートをするライブラリ#2 •SDWebImage • こちらも定番の画像を非同期でダウンロード • デフォルトでキャッシュをうまくコントロールしてくれる •
アニメーションGIFにも対応 •Mantle • JSONをObjective-Cのオブジェクトに変換する • オブジェクトをJSONにして出力することもできる • NSManagedObjectへの変換にも対応しており、Core Dataを使う際も便利
8.
• どちらもUITableViewCellにスワイプメニューを表示する • 意外にこの手の機能を自前で実装するのは面倒 UI系ライブラリ#1 •
ローディング中のステータスを表示してくれるライブラリ • 細かい調整をしたいならMBProgressHUD • 単純にローディング中を表示したいだけならSVProgressHUD •MCSwipeTableViewCell、MGSwipeTableCell •MBProgressHUD、SVProgressHUD
9.
• UISegmentedControlをタブボタン風にしたUIControl • アニメーションや画像、フォントの設定、マージンの調整など 細かい部分まで対応 UI系ライブラリ#2 •AAMFeedback、CTFeedback •
ユーザーからのフィードバックをメールで送信する際にアプリ名やバージョンなど付加情報 を自動的に設定できる • 簡易的にメールでユーザーからフィードバックを受けたい場合によい • どちらも同じ機能を提供するが更新頻度の高いCTFeedbackがオススメ •HMSegmentedControl
10.
• UIBarButtonItemにバッジを表示する • バッジのフォント、カラー、位置など細かい設定も可能 UI系ライブラリ#3 •AMScrollingNavbar •
SafariようにスクロールするとUINavigationBarを非表示する • UITableViewやUIScrollViewに数行追加するだけ •BBBadgeBarButtonItem
11.
UI系ライブラリ#4 •RMUniversalAlert • UIAlertView、UIActionSheet、UIAlertControllerをBlocksで記述 • UIAlertView、UIActionSheetとiOS8以降で使える UIAlertControllerの切り替えは自動で実施
12.
テスト系ライブラリ •OHHTTPStubs • HTTP通信を内部でフックしてスタブ用のレスポンスを返してくれる • 通信周りのテストで使用
13.
サービス系 •Crashlytics • クラッシュレポートの解析サービス • Twitterに買収された •
自動でdSYMを送ってくれるので別途アップロードする必要がない •TestFlight • アプリリリース前のベータテスト用などにユーザーにアプリを配布できる • Appleが買収したことでAppleのデベロッパーツールの一部となったが、本 家もサービスは継続中 • Apple TestFlightなら本番同様のバイナリをDLできるのでAdHocなどでは発 生しない問題もリリース前に確認できる
14.
最後に • ライブラリを使うことで不要な開発コストを減らす • ライブラリは使うだけでなくそのソースコードを読むこと で知見がたまるし、不具合対応時には必要になってくる •
クラッシュの解析などはサービスを併用しないと難しい ので積極的に使うべき • 読むだけでなく自分でライブラリを作って公開することで 世の中に貢献しよう
15.
ご清聴ありがとう ございました!
Download