Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Realm,rx swift,repro を使ってみて

1,342 views

Published on

メルカリ様登壇内容

Published in: Software
  • Be the first to comment

  • Be the first to like this

Realm,rx swift,repro を使ってみて

  1. 1. Realm,RxSwift,Repro を使ってみて
  2. 2. Realm
  3. 3. データベースFrameWork
  4. 4. FrameWorkとは 枠組み、骨組み、骨格、下部構 造、構造、組織などの意味を持 つ英単語。
  5. 5. RxSwift
  6. 6. 関数型言語 を使用したFrameWork
  7. 7. Repro
  8. 8. ユーザーのアプリ利用動画を 使ってコンバージョン率や定着 率を改善するモバイルアナリティ クスツール。
  9. 9. 今回の発表内容 仕事、プライベートで使用した中 で、感じた気づきの共有
  10. 10. 永田大祐 フリーランス ios歴1.5年 週7日実施(少し他言語も) 1日12時間〜20時間実施
  11. 11. この2ヶ月ぐらいで登壇をさせて いただきました。
  12. 12. 青葉台 カジュアルSwift勉強会様 Swift愛好会様 ios馬場様 フリースタイルPort もくもく会様 Realm Meet Up 様 AKIBA.swift 様 第2回RxSwift勉強会 @ Sansan 様
  13. 13. iosエンジニア ニュースアプリ ReacticeCocoa Realm 使用 相続税アプリ CoreData使用 SDK Realmを使用 漫画アプリ Obc セキュリティアプリ Obc カメラアプリ Obc Android アキパス
  14. 14. プライベートでは 仕事を獲得するために、 短期間でアプリを多数作りまし た。
  15. 15. RateDollarMap こちらでReproを使用していま す。
  16. 16. プログラミングを 初めて作ったアプリ
  17. 17. iosがこちら
  18. 18. Androidがこちら
  19. 19. 現在はリモート業務や、常駐で実 施しています。 勉強会も登壇させていただきました が、これからは、製品レベルを上げ た物を作るため時間を確保したい と思います。
  20. 20. それでは発表します。
  21. 21. Realm
  22. 22. RealmをCoreData と比べて
  23. 23. CoraDataの基本
  24. 24. モデルクラスを作る 自動生成 XXX .xcdatamodeldでクラス内の変数を設定する。 NSMnaegedObject NSManagedObjectContextでレコード(RDB)を呼ぶ NSFetchedResultsControllerオブジェクトの挿入 あとは画面に表記するコードを書く
  25. 25. クラス設計
  26. 26. http://w ww.gologo13.com/2014/01/02/note-about-nsfetchedresultscontroller-in-coredata/
  27. 27. モデルクラスの作成
  28. 28. コードで作成
  29. 29. プロトコルで宣言して
  30. 30. NSManagedObject 永続化するオブジェクトは必ずこのクラスのオブジェクトかこのクラスのサブクラスのオブジェクトでなければいけない。 NSManagedObjectContext データの検索挿入更新削除やUndoRedoを行うクラス NSFetchRequest データの検索条件を管理するクラスここで指定した条件がSQLに変換されてデータの検索に使われる NSManagedObjectオブジェクトを監視するコントローラクラス NSManegedObjecrオブジェクトが挿入、変更削除された時にNSFecthdResultsControllerDelegateオブジェクトに通知する NSEntityDescpriton エンティティの定義を管理するクラス。エンティティ記述と呼ばれているエンティティについては後術 NSManagedObjectModel エンティティ同士の関連を管理するクラス NSPrerisitenteStoreConrdinator NSpersistentStoreを管理するクラス。データベースを複数管理することができる
  31. 31. 上記のメソッドを駆使して、データベースを作成します。 感じたことは、メソッド名が長く、 ロジックを理解するのが大変でした。 実際に業務で使用した場合も、メソッド名が似ていて、 名前が長く、ロジックを理解するのが大変でした。
  32. 32. Realm
  33. 33. Realmクラスを作る 型は多数サポート してます。
  34. 34. Realmファイルが 自動で作成されるので、 データ保存、削除が基本
  35. 35. Realmコードサンプル
  36. 36. シンプルで効率良く、 開発できます。 今回は割愛ますが、 NsFileManagerも同時に勉強する と良いと思います。
  37. 37. RxSwift
  38. 38. Map関数の併用
  39. 39. Map関数とは? 配列内の要素に処理を適用し、その配列を使 いたい場合に使用します。
  40. 40. 判定分のような使い方 RxSwiftサンプルコード
  41. 41. 突然に思いました。 関数型言語を理解する上で必要な こと。 Swiftらしいコーディングを実施する 中で必要なこと。
  42. 42. Generics
  43. 43. Genericsを用いることで指定した要件、もしく は任意の様々な型を扱うことができるので、柔 軟で再利用可能な型や関数を定義することが できます。
  44. 44. いくつもの種類が あると思いますが、今回Swift3で引 数の書き方など変更があると思う ので、キーワードで。
  45. 45. 大きく分けて2つ Generic Types Associated Types
  46. 46. Generic Types 構造体・クラス
  47. 47. Associated Types プロトコル
  48. 48. あとは自分で勉強してください。
  49. 49. Swiftのコーディングを実施する上で、 関数型言語のライブラリー Genericsなどの関数を使用するメソッドを探求 していく必要があると思いました。 これらを理解する事により、文字数的に可読性 がある運用ができると思います。 逆に理解していないと運用厳しい。
  50. 50. Repro
  51. 51. Repro
  52. 52. ユーザーのアプリ利用動画を 使ってコンバージョン率や定着 率を改善するモバイルアナリティ クスツール。
  53. 53. アプリを使用するユーザーに Pusu通知も送れます。
  54. 54. Reproを使用して 気づいた事
  55. 55. プライベートでは 仕事を獲得するために、 短期間でアプリを多数作りまし た。
  56. 56. このぐらいの利用率じゃ 儲ける事はできない。
  57. 57. 製品レベル、デザインレベル 楽しさ、Swiftらしさ を向上させて
  58. 58. アプリを作ろう。
  59. 59. Thank you iosDCReject!!!

×