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

66
Realm,RxSwift,Repro を使ってみて

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

Page 1: Realm,rx swift,repro を使ってみて

Realm,RxSwift,Reproを使ってみて

Page 3: Realm,rx swift,repro を使ってみて

データベースFrameWork

Page 4: Realm,rx swift,repro を使ってみて

FrameWorkとは枠組み、骨組み、骨格、下部構造、構造、組織などの意味を持

つ英単語。

Page 6: Realm,rx swift,repro を使ってみて

関数型言語を使用したFrameWork

Page 8: Realm,rx swift,repro を使ってみて

ユーザーのアプリ利用動画を

使ってコンバージョン率や定着

率を改善するモバイルアナリティ

クスツール。

Page 9: Realm,rx swift,repro を使ってみて

今回の発表内容

仕事、プライベートで使用した中で、感じた気づきの共有

Page 10: Realm,rx swift,repro を使ってみて

永田大祐フリーランスios歴1.5年週7日実施(少し他言語も)1日12時間〜20時間実施

Page 11: Realm,rx swift,repro を使ってみて

この2ヶ月ぐらいで登壇をさせていただきました。

Page 12: Realm,rx swift,repro を使ってみて

青葉台 カジュアルSwift勉強会様Swift愛好会様

ios馬場様フリースタイルPort もくもく会様

Realm Meet Up 様AKIBA.swift 様

第2回RxSwift勉強会 @ Sansan 様

Page 13: Realm,rx swift,repro を使ってみて

iosエンジニアニュースアプリ ReacticeCocoa Realm 使用相続税アプリ CoreData使用SDK Realmを使用漫画アプリ Obcセキュリティアプリ Obcカメラアプリ Obc

Androidアキパス

Page 14: Realm,rx swift,repro を使ってみて

プライベートでは仕事を獲得するために、短期間でアプリを多数作りました。

Page 16: Realm,rx swift,repro を使ってみて

プログラミングを初めて作ったアプリ

Page 17: Realm,rx swift,repro を使ってみて

iosがこちら

Page 18: Realm,rx swift,repro を使ってみて

Androidがこちら

Page 19: Realm,rx swift,repro を使ってみて

現在はリモート業務や、常駐で実施しています。勉強会も登壇させていただきましたが、これからは、製品レベルを上げた物を作るため時間を確保したいと思います。

Page 20: Realm,rx swift,repro を使ってみて

それでは発表します。

Page 23: Realm,rx swift,repro を使ってみて

CoraDataの基本

Page 24: Realm,rx swift,repro を使ってみて

モデルクラスを作る 自動生成

XXX .xcdatamodeldでクラス内の変数を設定する。

NSMnaegedObjectNSManagedObjectContextでレコード(RDB)を呼ぶ

NSFetchedResultsControllerオブジェクトの挿入

あとは画面に表記するコードを書く

Page 25: Realm,rx swift,repro を使ってみて

クラス設計

Page 26: Realm,rx swift,repro を使ってみて

http://www.gologo13.com/2014/01/02/note-about-nsfetchedresultscontroller-in-coredata/

Page 27: Realm,rx swift,repro を使ってみて

モデルクラスの作成

Page 28: Realm,rx swift,repro を使ってみて
Page 29: Realm,rx swift,repro を使ってみて

コードで作成

Page 30: Realm,rx swift,repro を使ってみて
Page 31: Realm,rx swift,repro を使ってみて

プロトコルで宣言して

Page 32: Realm,rx swift,repro を使ってみて

NSManagedObject

永続化するオブジェクトは必ずこのクラスのオブジェクトかこのクラスのサブクラスのオブジェクトでなければいけない。

NSManagedObjectContext

データの検索挿入更新削除やUndoRedoを行うクラス

NSFetchRequest

データの検索条件を管理するクラスここで指定した条件がSQLに変換されてデータの検索に使われる

NSManagedObjectオブジェクトを監視するコントローラクラス

NSManegedObjecrオブジェクトが挿入、変更削除された時にNSFecthdResultsControllerDelegateオブジェクトに通知する

NSEntityDescpritonエンティティの定義を管理するクラス。エンティティ記述と呼ばれているエンティティについては後術

NSManagedObjectModelエンティティ同士の関連を管理するクラス

NSPrerisitenteStoreConrdinatorNSpersistentStoreを管理するクラス。データベースを複数管理することができる

Page 33: Realm,rx swift,repro を使ってみて

上記のメソッドを駆使して、データベースを作成します。

感じたことは、メソッド名が長く、

ロジックを理解するのが大変でした。

実際に業務で使用した場合も、メソッド名が似ていて、

名前が長く、ロジックを理解するのが大変でした。

Page 36: Realm,rx swift,repro を使ってみて
Page 39: Realm,rx swift,repro を使ってみて

シンプルで効率良く、

開発できます。

今回は割愛ますが、

NsFileManagerも同時に勉強する

と良いと思います。

Page 41: Realm,rx swift,repro を使ってみて

Map関数の併用

Page 42: Realm,rx swift,repro を使ってみて

Map関数とは?配列内の要素に処理を適用し、その配列を使

いたい場合に使用します。

Page 44: Realm,rx swift,repro を使ってみて

突然に思いました。

関数型言語を理解する上で必要な

こと。

Swiftらしいコーディングを実施する

中で必要なこと。

Page 45: Realm,rx swift,repro を使ってみて

Generics

Page 46: Realm,rx swift,repro を使ってみて

Genericsを用いることで指定した要件、もしく

は任意の様々な型を扱うことができるので、柔

軟で再利用可能な型や関数を定義することが

できます。

Page 47: Realm,rx swift,repro を使ってみて

いくつもの種類が

あると思いますが、今回Swift3で引

数の書き方など変更があると思う

ので、キーワードで。

Page 48: Realm,rx swift,repro を使ってみて

大きく分けて2つGeneric Types Associated Types

Page 49: Realm,rx swift,repro を使ってみて

Generic Types 構造体・クラス

Page 50: Realm,rx swift,repro を使ってみて

Associated Types プロトコル

Page 51: Realm,rx swift,repro を使ってみて

あとは自分で勉強してください。

Page 52: Realm,rx swift,repro を使ってみて

Swiftのコーディングを実施する上で、

関数型言語のライブラリー

Genericsなどの関数を使用するメソッドを探求

していく必要があると思いました。

これらを理解する事により、文字数的に可読性

がある運用ができると思います。

逆に理解していないと運用厳しい。

Page 55: Realm,rx swift,repro を使ってみて

ユーザーのアプリ利用動画を

使ってコンバージョン率や定着

率を改善するモバイルアナリティ

クスツール。

Page 56: Realm,rx swift,repro を使ってみて

アプリを使用するユーザーにPusu通知も送れます。

Page 57: Realm,rx swift,repro を使ってみて
Page 58: Realm,rx swift,repro を使ってみて
Page 59: Realm,rx swift,repro を使ってみて
Page 60: Realm,rx swift,repro を使ってみて
Page 61: Realm,rx swift,repro を使ってみて

Reproを使用して気づいた事

Page 62: Realm,rx swift,repro を使ってみて

プライベートでは仕事を獲得するために、短期間でアプリを多数作りました。

Page 63: Realm,rx swift,repro を使ってみて

このぐらいの利用率じゃ儲ける事はできない。

Page 64: Realm,rx swift,repro を使ってみて

製品レベル、デザインレベル楽しさ、Swiftらしさ

を向上させて

Page 65: Realm,rx swift,repro を使ってみて

アプリを作ろう。

Page 66: Realm,rx swift,repro を使ってみて

Thank you iosDCReject!!!