Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Swift Realm korean

1fa9cb8c7997c8c4d3d251fb5e41f749?s=47 Realm
August 25, 2016

Swift Realm korean

Slide for Let'Swift 2016 Korea conference

1fa9cb8c7997c8c4d3d251fb5e41f749?s=128

Realm

August 25, 2016
Tweet

Transcript

  1. ݽ߄ੌ ؘ੉ఠ߬੉झ CodeLab

  2. Minwoo Park߅޹਋ @tebica *OD

  3. None
  4. Core Data ॳࣁਃ?

  5. There is no such thing as a free lunch ..

  6. ॳӝ औҊ ز੘ࣘبо ࡅܰҊ ׮নೠ ӝמਸ ઁҕೞҊ য়೑ࣗझ੉ݶࢲ ޖܐੋ

  7. Swift ݽ߄ੌ ؘ੉ఠ߬੉झ

  8. Swift ?

  9. 졶짢핊섾핂쩮핂큲42-JUF$PSF%BUB읊샎 찮읆콛솒 쭎믾쁳 퀺풂칺푷 [FSPDPQZ 짆묻킲읺쨆읺큲펓 짆묻 셂잖 훊 솓핊

    폏묻 묻 훟묻 핊쫆 폲콚큲 줂욚 IUUQSFBMNJPLS
  10. Mobile DB World

  11. SQLite ୌೞ Mobile DB World

  12. 2014֙ 7ਘ 15ੌ ҕѐ

  13. 2 ֙੉ ૑դ ૑Ә, ׼न਷ ੉޷ Realmਸ ॳҊ੓׮

  14. !

  15. *T

  16. None
  17. Realm [relm] ۬ http://endic.naver.com/enkrEntry.nhn? sLn=kr&entryId=57e330e64f644ffda62f545eb1ed4bbe

  18. Realm is not an ORM
 on top of SQLite
 Realm

    has own C++ core Core Data GreenDAO ORM lite ActiveAndroid are Sqlite based
  19. C++ core: cross platform

  20. Why Realm?

  21. 1. Fast 2. Easy to use 3. Features

  22. Fast

  23. http://static.realm.io/downloads/java/android-benchmark.zip

  24. None
  25. memory mapped file Zero-copy

  26. Traditional ORM must copy 1. Data on disk 2. Read

    from disk 3. Copy raw data into deserialised intermediate
 in-memory representation (allocates memory) 4. Copy intermediate representation into
 language-level in-memory object (allocates memory) 5. Return final object from property access
  27. Realm skips the copy Whole file is memory-mapped & same

    format on disk
 as in-memory 1. Calculate offset of data to read 2. Read from mmapped file 3. Return raw value from property access
  28. Results ੗ز সؘ੉౟

  29. Easy to use

  30. рѾೠ ௏٘

  31. ׮নೠ ௪ܻ + Chaining ௪ܻ

  32. Sorting

  33. Relation

  34. Blocking write Non-blocking read Thread safety

  35. Features
 for mobile developers

  36. In-memory Realm

  37. AES-256+SHA2 by 64-byte encryption key Encryption

  38. ݣ౭ Threadীࢲ Realm ࢎਊೞӝ ˖펺얺큲엖슪읊멆맧픎3FBMN핆큲큲읊뫃퓮쿦펔삲
 ˖팒줂쌚빦믆킪헞픦큲뺓컅섾핂읊짦몮
 삲읆큲엖슪펞컪섾핂많쪎몋쇦펖쁢힎읊먿헣푢펔핂
 캏핊뫎쇪섾핂읊쫊쿦핖킃삖삲

  39. Realm੉ backgroundীࢲ সؘ੉౟ غ঻ਸٸ UI Thread ীࢲ ঌܿ ߉Ҋ रযਃ!

    & fine-grained notification Notification
  40. Browser

  41. CSV Converter

  42. String & Data upto 16MB

  43. None
  44. .JHSBUJPO
 %FCVHHJOH
 .VMUJQMF%#

  45. And..

  46. https://github.com/realm/ Open source

  47. Issue on Github

  48. PR on Github

  49. Work with community

  50. Growing fast

  51. None
  52. ૑դ 1֙زউ Realmীѱ ޖटੌ੉ ੓঻ա? Fine-Grained Notifications Nanosecond Dates Optional

    Properties Swift 2 Swift Playgrounds + REPL Live, Queryable Inverse Relationships Key-Value Observation Predicate Subqueries Results Background Updates Encrypted Realm Debugging ObjC Nullability & Generics tvOS watchOS Improved KVC for Collections Frozen Enumeration Schema Subsets Better Carthage Support RealmCollectionType Realm.Configuration Query Improvements Performance Improvements Memory Overhead Improvements Error Handling Improvements Interprocess Improvements Migrations Class Renaming Skipping Migrations
  53. Already compatible with Swift 3 & Xcode 8 https://github.com/realm/realm-cocoa/issues/3796

  54. Facebook Community

  55. Realm, Swift ׏झ ਍৔

  56. • Realm ೠҴ ಕ੉झ࠘ ಕ੉૑: facebook.com/realmkr • Realm ೠҴ ಕ੉झ࠘

    Ӓܛ: facebook.com/groups/realmkr • Realm ೠҴ ౟ਤఠ: twitter.com/realmkorea • GitHub: github.com/realm • StackOverflow: stackoverflow.com/questions/tagged/realm • Email: kr@realm.io 묻펂 &OHMJTITVQQPSU Strong support
  57. None
  58. Want to be the default choice for iOS/Android

  59. Swift ۽ ॻৈ઎Ҋ Swift ܳ ૑ਗೞҊח Swift ֎੉౭࠳ ؘ੉ఠ߬੉झ ޛۿ

    Objective-C ب ૑ਗ೧ਃ~
  60. Made by great developers

  61. For great developers

  62. ݽ߄ੌ ѐߊ੄ ҕ૞ ੼ब

  63. Thank you Minwoo Park kr@realm.io www.realm.io/kr @realmkorea