Slide 1

Slide 1 text

Realm Japan Meetup #11

Slide 2

Slide 2 text

#realm_jp

Slide 3

Slide 3 text

https://github.com/kishikawakatsumi/ kishikawa katsumi http://kishikawakatsumi.hatenablog.com/ Realm

Slide 4

Slide 4 text

Realm Objective-C/Swift 0.97.1 ˖ 'JYDSBTIFTXIFOBO3-.3FBMNJTEFBMMPDBUFEGSPNUIF XSPOHUISFBE ˖ *OEFYJOH#00-#PPMBOE/4%BUFQSPQFSUJFTBSFOPX TVQQPSUFE ˖ 4XJGU"EETVQQPSUGPSJOEFYJOHPQUJPOBMQSPQFSUJFT

Slide 5

Slide 5 text

Realm Objective-C/Swift 0.98.0ʢ༧ఆʣ ˖ "TZOD2VFSJFT

Slide 6

Slide 6 text

Realm Objective-C/Swift 0.99.0ʢ༧ఆʣ ˖ 'JOFHSBJOFE/PUJDBUJPO

Slide 7

Slide 7 text

Realmͷ஗ԆϩʔυΛ׆༻͢Δʹ͸

Slide 8

Slide 8 text

Realmͷجຊతͳ࢖͍ํ

Slide 9

Slide 9 text

class Article: Object { dynamic var id: Int = 0 dynamic var title: String = "" dynamic var content: String = "" dynamic var creationDate: NSDate = NSDate() dynamic var modificationDate: NSDate = NSDate() dynamic var deletionDate: NSDate? = nil dynamic var user: User? = nil let comments = List() override static func primaryKey() -> String? { return "id" } } class Comment: Object { dynamic var id: Int = 0 dynamic var content: String = "" dynamic var user: User? = nil override static func primaryKey() -> String? { return "id" } } class User: Object { dynamic var id: Int = 0 dynamic var name: String = "" override static func primaryKey() -> String? { return "id" } }

Slide 10

Slide 10 text

let realm = try! Realm() let article = Article() article.title = titleTextfield.text article.contents = contentTextfield.text let currentUser = realm.objectForPrimaryKey(User.self, key: userID) article.user = currentUser try! realm.write { in realm.add(article) }

Slide 11

Slide 11 text

let realm = try! Realm() let articles = realm.objects(Article).filter("user = %@", currentUser) let article = articles[0]

Slide 12

Slide 12 text

let realm = try! Realm() let currentUser = realm.objectForPrimaryKey(User.self, key: userID) try! realm.write { in currentUser.name = "..." }

Slide 13

Slide 13 text

஗ԆϩʔυΛ׆༻͢Δ

Slide 14

Slide 14 text

override func viewDidLoad() { ... articles = realm.objects(Article).filter("user = %@", currentUser) } override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return articles.count } override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCellWithIdentifier("", forIndexPath: indexPath) let article = articles[indexPath.row] cell.title = article.title cell.content = article.content cell.username = article.user.name return cell }

Slide 15

Slide 15 text

஗Ԇϩʔυͷ࢓૊Έ

Slide 16

Slide 16 text

஗Ԇϩʔυͷ࢓૊Έ articles = realm.objects(Article).filter("user = %@", currentUser)

Slide 17

Slide 17 text

஗Ԇϩʔυͷ࢓૊Έ articles = realm.objects(Article) .filter("user = %@", currentUser)

Slide 18

Slide 18 text

஗Ԇϩʔυͷ࢓૊Έ let allArticles = realm.objects(Article) let articles = allArticles.filter(“user = %@", currentUser)

Slide 19

Slide 19 text

஗Ԇϩʔυͷ࢓૊Έ let allArticles = realm.objects(Article) let articles = allArticles.filter(“user = %@", currentUser) 3FTVMUT"SUJDMF 5BCMF"SUJDMF

Slide 20

Slide 20 text

ඇಉظΫΤϦ (Swift) let allArticles = realm.objects(Article) let articles = allArticles.filter(“user = %@", currentUser) 3FTVMUT"SUJDMF 5BCMF"SUJDMF 3FTVMUT"SUJDMF 5BCMF"SUJDMF 2VFSZVTFS

Slide 21

Slide 21 text

ඇಉظΫΤϦ (Swift) let articles = allArticles.filter(“user = %@", currentUser) let count = articles.count 3FTVMUT"SUJDMF 5BCMF"SUJDMF 2VFSZVTFS 3FTVMUT"SUJDMF 5BCMF"SUJDMF 2VFSZVTFS $PVOU 7JFX

Slide 22

Slide 22 text

ඇಉظΫΤϦ (Swift) let count = articles.count let article = articles[0] 3FTVMUT"SUJDMF 5BCMF"SUJDMF 2VFSZVTFS $PVOU 7JFX "SUJDMF 3PX*OEFY 3FTVMUT"SUJDMF 5BCMF"SUJDMF 2VFSZVTFS $PVOU 7JFX

Slide 23

Slide 23 text

ඇಉظΫΤϦ (Swift) let article = articles[0] let title = article.title "SUJDMF 3PX*OEFY 3FTVMUT"SUJDMF 5BCMF"SUJDMF 2VFSZVTFS $PVOU 7JFX "SUJDMF 3PX*OEFY 5JUMF(FUUFS 3FBMN 4USJOH 5JUMF

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

IUUQTUFDICPPTUFSCPPUIQN

Slide 26

Slide 26 text

Where to find us • # Realm Japan User Group: facebook.com/groups/realmjp • # Twitter: twitter.com/realmJapan • GitHub: github.com/realm • # StackOverflow: ja.stackoverflow.com/questions/tagged/realm • # Email: [email protected] • # Slack: slack.realm.io/

Slide 27

Slide 27 text

Realm Japan User Group # facebook.com/groups/realmjp

Slide 28

Slide 28 text

Public Realm Slack # slack.realm.io/

Slide 29

Slide 29 text

Official Twitter/Facebook twitter.com/realm facebook.com/655569387879379

Slide 30

Slide 30 text

Official Web site # realm.io/jp

Slide 31

Slide 31 text

Next Realm Meetup

Slide 32

Slide 32 text

http://bit.ly/RealmJP_11 ୹͍Ξϯέʔτʹ͝ڠྗ͍ͩ͘͞