未来研

iPhoneアプリ開発とかプログラミングとかの話題。

SWWDC 仙台iOS開発者勉強会 その22 - LT大会 - の発表資料です。

SWWDC 仙台iOS開発者勉強会 #22 - ライトニングトーク大会 - : ATND

去る2015/02/22(猫の日)、22回めのSWWDC(仙台iOS開発者勉強会)を行いました。ライトニングトーク(5分間のプレゼン)大会だったんですが、その時に私が使用した資料を公開します。

今回は、keynoteなどのスライド資料ではなく、MarkDownで資料をまとめてみました。 新しい挑戦なんですが、普通にスライドのほうが見やすかったかも。

あと、作ってたら盛り沢山になってしまって、とても5分間では終わらない内容に...。結局、20分くらい発表してました(どうもすいません...)。内容があちらこちらに発散してしまって、まとまりがなくだらだら続く感じに。ちゃんと内容を絞らないと、ダメですね。

まあとりあえず、資料を公開します↓。


あけましておめでとうございます

今年もよろしくお願いします。いろいろ忙しくて2月も終盤になっちゃいました。

2015年 SWWDCの予定

最近の活動

先週、東京に行って来ました。

---- ここから開発のお話です。 ----

Recent Works

最近作ったアプリ。

  • 試験勉強のアプリ
  • クーポンのアプリ

アプリの要件

  • Android版も同時開発
    • けっこう大変です
    • 仕様のすり合わせ=Androidのほうがアニメーションが遅かったり
  • わりと短期間

ライブラリの多用

スケジュールを考えると、どんどん使って行きたい。

FMDB

  • SQLiteのライブラリ
  • CoreDataを使おうと思ったんだけど、Androidと共用できなさそうなので。
    • CoreDataはSQLiteなんだけど独自のテーブルが作られる感じ(列名とかが自動)

AFNetWorking

  • 定番
  • Almofire(Swift)は使わなかった
    • その時点では、資料が少なかっため

UIAlertView

Swift使ってみた

  • 全体的に言えばそんなに問題なかった。
  • Optionalで引っかかる。( とりあえず! 的な使い方は避けたい。アプリが落ちるし。)
  • if let var = foo を多用してたら、ネストが深くなって見にくい
    • Swift 1.2 で多少改善されたみたい。

Swiftのライブラリ関連

  • 開発当初はライブラリが充実していなかったので、悩む。
    • 最近は結構いいらしい
  • 結局、CocoaPods + Objective-C Bridgeで乗り切る
  • JSONのライブラリはSwiftのが結構いいので、良いかも。

リリース時の心理的な負担

ユニットテスト

  • 最初はちゃんと書いてたのだけど、あまり書かなくなったり...
    • API の仕様変更が多くて、変えるのが大変だったり。
  • ストレスを減らすためにも、今年はなんとかやりたい

そういえばTestFlightが終わりますね

  • AppleのTestFlightはいまいち
    • iOS 8 でしか使えない
    • Internal Tester
    • External Tester = 審査が必要って...

テストフライト乗り換え案

最近のリジェクト事案

  • 3.1 Apps or metadata that mentions the name of any other mobile platform will be rejected
    • アプリ内の文章に“Android"と書いてたらリジェクト
  • 20.1 Sweepstakes and contests must be sponsored by the developer/company of the App
    • 「アップルは関係ありません」と明記すること。アップル製品のプレゼントもNG。

iOS Data Storage Guidelines

    1. Only documents and other data that is user-generated, or that cannot otherwise be recreated by your application, should be stored in the <Application_Home>/Documents directory and will be automatically backed up by iCloud.
    2. Documentsディレクトリにユーザー作成のコンテンツ以外のものを置くとNG
    3. 今こそ復習したい、iOSアプリのディレクトリ構成 - Qiita

Crashlytics

クラッシュレポートのサービス。本家よりもだいぶ詳しく出してくれます。 * The most powerful, yet lightest weight crash reporting solution for iOS and Android developers. | Crashlytics