SlideShare a Scribd company logo
1 of 59
Download to read offline
파크히어
Realm
사용 사례
2016. 03. 31
이선협 / ParkingSquare
발표자 소개
- 이선협 / KC
- NHN NEXT
- 파킹스퀘어에서 iOS 개발 담당
- 산업기능요원으로 복무 중
- https://github.com/kciter
- https://medium.com/@kciter
파크히어 소개
- 주차 예약 서비스
- 합리적인 가격으로 내 주차 자리를 보장
- iOS, 안드로이드, 모바일웹, PC웹
- http://www.parkhere.co.kr/
목차
- Why Realm?
- 어떻게해야 Realm을 잘썼다고 소문이 날까?
- 기존 파크히어 로직의 문제점
- 리팩토링
- 하나씩 살펴보기
- 네트워크 로직
- 오브젝트 맵핑
- MVVM
- 결론
- Q & A
목차
- Why Realm?
- 어떻게해야 Realm을 잘썼다고 소문이 날까?
- 기존 파크히어 로직의 문제점
- 리팩토링
- 하나씩 살펴보기
- 네트워크 서비스
- 오브젝트 맵핑
- MVVM
- 결론
- Q & A
- iOS 앱 개발을 처음 접할 때 알았으면 좋았을 내용iOS 앱 개발을 처음 접할 때 알았으면 좋았을 내용!!!
을 위주로 담았습니다
PARK HERE는 왜 Realm을 사용했을까요?
Why Realm?1. 좋은 성능
- SQLite, Core Data보다 좋은 성능을 보여줌
Why Realm?2. 편리한 사용성
- 설치와 사용이 쉬움
- 쉽게 데이터 모델 정의 가능
- 간단하게 관계 설정 가능
- 0.96 업데이트로 NULL 속성도 지원
- Core Data보다 러닝커브가 적고 사용하기 쉬움
Why Realm?3. 오픈소스
- 계속해서 발전하는 오픈소스
- 꾸준히 새로운 기능 추가 중
Why Realm?4. Core Data는 불편해보였다…
- 데이터 모델 파일을 따로 만들어야함
Why Realm?4. Core Data는 불편해보였다…
- 데이터 모델 파일을 따로 만들어야함
- 사용법이 Realm에 비해 복잡하다
Core Data Realm
데이터 불러오는 코드
Why Realm?4. Core Data는 불편해보였다…
- 데이터 모델 파일을 따로 만들어야함
- 사용법이 Realm에 비해 복잡하다
- Learning Curve가 크다
Why Realm?4. Core Data는 불편해보였다…
- 데이터 모델 파일을 따로 만들어야함
- 사용법이 Realm에 비해 복잡하다
- Learning Curve가 크다
- 별도로 구현해야할 기능들이 Realm에 구현되어 있다

(Notification, Realm().add(_:update:) 등)
Why Realm?4. Core Data는 불편해보였다…
- 데이터 모델 파일을 따로 만들어야함
- 사용법이 Realm에 비해 복잡하다
- Learning Curve가 크다
- 별도로 구현해야할 기능들은 Realm에 있다 

(Notification, Realm().add(_:update:) 등)
객체화하여 사용하거나 MagicalRecord같은 라이브러리를 이용해도 좋지만
이미 필요한 기능이 구현되어있고 성능도 더 좋은 Realm을 사용하기로 결정했습
니다.
어떻게 Realm을 써야 잘썼다고 소문이날까?
기존 파크히어 로직
뷰 진입
서버에
데이터 요청
JSON Parse UI 적용
Realm 적용 전
기존 파크히어 로직Realm 적용 전
뷰 진입
서버에
데이터 요청
JSON Parse UI 적용
AFNetworking SwiftyJSON Callback
- 첫 iOS 앱 제작 경험
- AFNetworking 사용
- SwiftyJSON 라이브러리로 일일이 JSON Parsing
- 데이터 반환을 Callback을 이용함
- MVC Architecture
기존 파크히어 로직Realm 적용 전
뷰 진입
서버에
데이터 요청
JSON Parse UI 적용
AFNetworking SwiftyJSON Callback
- 첫 iOS 앱 제작 경험 (경험 미숙으로 잘못된 구조 작성)
- AFNetworking 사용 (Swift와 어울리지 않음)
- SwiftyJSON 라이브러리로 일일이 JSON Parsing (단순 반복 작업, 중복 코드)
- 데이터 반환을 Callback을 이용함 (중복 코드, 클래스간 의존성)
- MVC Architecture (Massive View Controller 문제)
기존 파크히어 로직Realm 적용 전
뷰 진입
서버에
데이터 요청
JSON Parse UI 적용
AFNetworking SwiftyJSON Callback
- 첫 iOS 앱 제작 경험
- AFNetworking 사용 (Swift와 어울리지 않음)
- SwiftyJSON 라이브러리로 일일이 JSON Parsing (단순 반복 작업, 중복 코드)
- 데이터 반환을 Callback을 이용함 (중복 코드, 클래스간 의존성)
- MVC Architecture (Massive View Controller 문제)
Realm을 잘 활용할 수 있도록 리팩토링하자!
뷰 진입
서버에
데이터 요청
JSON Parse Realm 쓰기
Realm 읽기 UI 적용
목표
- 클래스간 의존도 낮춤
- 중복 코드를 제거
- 불필요한 노가다성 코드 제거
리팩토링
- 바퀴를 다시 발명하지 말자 (라이브러리 적극 이용)
- MVVM 아키텍처 사용
- AFNetworking대신 Swift와 어울리는 Alamofire 사용
- Model 데이터를 Mapping해주는 라이브러리 사용 (ObjectMapper)
- Reactive 프로그래밍
MVVM
- [Model - View - ViewModel]로 구성됨
- Massive View Controller 문제 해결
- View에 ViewModel를 바인딩하여 사용 (KVO)
Alamofire
- https://github.com/Alamofire/Alamofire
- HTTP 라이브러리
- Custom Response Serializer 작성 가능
ObjectMapper
- https://github.com/Hearst-DD/ObjectMapper
- JSON 데이터를 Object에 맵핑해주는 라이브러리
- Transform을 이용하여 다양한 데이터 타입 대응가능
- Enum 값 처리 가능 (Raw Value)
- Realm Object에도 사용 가능
AlamofireObjectMapper
- https://github.com/tristanhimmelman/AlamofireObjectMapper
- Alamofire의 Custom Response Serializer를 통해 구현됨
- Response Data를 바로 Object에 바인딩
Step By Step으로 하나씩 적용해보겠습니다
뷰 진입
서버에
데이터 요청
JSON Parse Realm 쓰기
Realm 읽기 UI 적용
사용법은 매우 간단합니다
사용법은 매우 간단합니다
받아온 데이터를
Realm에 Write
사용법은 매우 간단합니다
ObjectMapper를 통해
간단하게 줄일 수 있다
뷰 진입
서버에
데이터 요청
JSON Parse Realm 쓰기
Realm 읽기 UI 적용
기존 코드 ObjectMapper 적용 코드
기존 코드 ObjectMapper 적용 코드
추가된 코드
기존 코드 ObjectMapper 적용 코드
추가된 코드
JSON의 Key값
기존 코드 ObjectMapper 적용 코드
기존 코드 ObjectMapper 적용 코드
AlamofireObjectMapper 라이브러리를 이용하여
Response를 받음과 동시에 오브젝트를 받을 수 있습니다
JSON 객체 대신 Object, Object Array값을 받을 수 있습니다
뷰 진입
서버에
데이터 요청
JSON Parse Realm 쓰기
Realm 읽기 UI 적용
View
Controller
View
View Model
Model
MVVM
Update
Notify
User Event
Update
View
Controller
View
View Model
Model
MVVM
Update
Notify
User Event
Update
각각의 View마다 분리하여 사용
View
Controller
View
View Model
Model
MVVM
Update
Notify
User Event
Update
재사용이 가능합니다
View
Controller
View
View Model
Model
MVVM
Update
Notify
User Event
Update
View / View Controller
View / View Controller
KVO를 통해 Model과 View를 바인딩
View Model
View / View Controller
KVO를 통해 Model과 View를 바인딩
View Model
View / View Controller
KVO를 통해 Model과 View를 바인딩
Init과 동시에 Area 정보를 Realm에서 가져옴
View Model
View / View Controller
KVO를 통해 Model과 View를 바인딩
Init과 동시에 Area 정보를 Realm에서 가져옴
View Model
View / View Controller
KVO를 통해 Model과 View를 바인딩
Init과 동시에 Area 정보를 Realm에서 가져옴
AreaService를 통해 Area 데이터 요청
View Model
View / View Controller
KVO를 통해 Model과 View를 바인딩
Init과 동시에 Area 정보를 Realm에서 가져옴
AreaService를 통해 Area 데이터 요청
View Model
View / View Controller
KVO를 통해 Model과 View를 바인딩
Init과 동시에 Area 정보를 Realm에서 가져옴
AreaService를 통해 Area 데이터 요청
Realm에 Response Object를 Write
View Model
View / View Controller
KVO를 통해 Model과 View를 바인딩
Init과 동시에 Area 정보를 Realm에서 가져옴
AreaService를 통해 Area 데이터 요청
Realm에 Response Object를 Write
Notify
Realm 알림 기능을 통해
데이터 업데이트
뷰 진입
서버에
데이터 요청
JSON Parse Realm 쓰기
Realm 읽기 UI 적용
뷰 진입
서버에
데이터 요청
JSON Parse Realm 쓰기
Realm 읽기 UI 적용
Alamofire ObjectMapper
AlamofireObjectMapper
Realm Notification
KVO
뷰 진입
서버에
데이터 요청
JSON Parse Realm 쓰기
Realm 읽기 UI 적용
Alamofire ObjectMapper
AlamofireObjectMapper
Realm Notification
KVO
원하던 흐름이 깔끔하게 구현되었습니다
결론
- 이것저것 문제가 있던 소스를 Realm 적용과 함께 리팩토링
- 여러 라이브러리를 이용하여 Realm을 쉽게 사용
- Realm을 사용하여 UX적인 개선이 이루어짐
- iOS 앱 개발을 처음 접할 때 알았으면 좋았을 내용
감사합니다
2016. 03. 31
이선협 / ParkingSquare

More Related Content

What's hot

[1B6]Realm a database for android & ios
[1B6]Realm a database for android & ios[1B6]Realm a database for android & ios
[1B6]Realm a database for android & iosNAVER D2
 
REST API 설계
REST API 설계REST API 설계
REST API 설계Terry Cho
 
세션3 node.js의 의미와 자바의 대안
세션3 node.js의 의미와 자바의 대안세션3 node.js의 의미와 자바의 대안
세션3 node.js의 의미와 자바의 대안Lee Ji Eun
 
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XpressEngine
 
Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Daum DNA
 
Vert.x 세미나 이지원_배포용
Vert.x 세미나 이지원_배포용Vert.x 세미나 이지원_배포용
Vert.x 세미나 이지원_배포용지원 이
 
Nodejs 발표자료
Nodejs 발표자료Nodejs 발표자료
Nodejs 발표자료shanka2
 
20131217 html5
20131217 html520131217 html5
20131217 html5DK Lee
 
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기John Kim
 
Resource Handling in Spring MVC
Resource Handling in Spring MVCResource Handling in Spring MVC
Resource Handling in Spring MVCArawn Park
 
C# Game Server
C# Game ServerC# Game Server
C# Game Serverlactrious
 
Startup JavaScript 7 - Node.JS 기초
Startup JavaScript 7 - Node.JS 기초Startup JavaScript 7 - Node.JS 기초
Startup JavaScript 7 - Node.JS 기초Circulus
 
spring.io를 통해 배우는 spring 개발사례
spring.io를 통해 배우는 spring 개발사례spring.io를 통해 배우는 spring 개발사례
spring.io를 통해 배우는 spring 개발사례Daehwan Lee
 
막하는 스터디 네 번째 만남 AngularJs (20151108)
막하는 스터디 네 번째 만남 AngularJs (20151108)막하는 스터디 네 번째 만남 AngularJs (20151108)
막하는 스터디 네 번째 만남 AngularJs (20151108)연웅 조
 
막하는스터디 두번째만남 Express(20151025)
막하는스터디 두번째만남 Express(20151025)막하는스터디 두번째만남 Express(20151025)
막하는스터디 두번째만남 Express(20151025)연웅 조
 

What's hot (20)

Node.js 기본과정
Node.js 기본과정Node.js 기본과정
Node.js 기본과정
 
[1B6]Realm a database for android & ios
[1B6]Realm a database for android & ios[1B6]Realm a database for android & ios
[1B6]Realm a database for android & ios
 
Node.js intro
Node.js introNode.js intro
Node.js intro
 
REST API 설계
REST API 설계REST API 설계
REST API 설계
 
세션3 node.js의 의미와 자바의 대안
세션3 node.js의 의미와 자바의 대안세션3 node.js의 의미와 자바의 대안
세션3 node.js의 의미와 자바의 대안
 
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
XECon2015 :: [2-2] 박상현 - React로 개발하는 SPA 실무 이야기
 
Node.js 심화과정
Node.js 심화과정Node.js 심화과정
Node.js 심화과정
 
Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012Javascript everywhere - Node.js | Devon 2012
Javascript everywhere - Node.js | Devon 2012
 
Vert.x 세미나 이지원_배포용
Vert.x 세미나 이지원_배포용Vert.x 세미나 이지원_배포용
Vert.x 세미나 이지원_배포용
 
Nodejs 발표자료
Nodejs 발표자료Nodejs 발표자료
Nodejs 발표자료
 
20131217 html5
20131217 html520131217 html5
20131217 html5
 
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기NODE.JS 글로벌 기업 적용 사례  그리고, real-time 어플리케이션 개발하기
NODE.JS 글로벌 기업 적용 사례 그리고, real-time 어플리케이션 개발하기
 
Resource Handling in Spring MVC
Resource Handling in Spring MVCResource Handling in Spring MVC
Resource Handling in Spring MVC
 
C# Game Server
C# Game ServerC# Game Server
C# Game Server
 
Startup JavaScript 7 - Node.JS 기초
Startup JavaScript 7 - Node.JS 기초Startup JavaScript 7 - Node.JS 기초
Startup JavaScript 7 - Node.JS 기초
 
spring.io를 통해 배우는 spring 개발사례
spring.io를 통해 배우는 spring 개발사례spring.io를 통해 배우는 spring 개발사례
spring.io를 통해 배우는 spring 개발사례
 
4-3. jquery
4-3. jquery4-3. jquery
4-3. jquery
 
막하는 스터디 네 번째 만남 AngularJs (20151108)
막하는 스터디 네 번째 만남 AngularJs (20151108)막하는 스터디 네 번째 만남 AngularJs (20151108)
막하는 스터디 네 번째 만남 AngularJs (20151108)
 
Spring Boot 1
Spring Boot 1Spring Boot 1
Spring Boot 1
 
막하는스터디 두번째만남 Express(20151025)
막하는스터디 두번째만남 Express(20151025)막하는스터디 두번째만남 Express(20151025)
막하는스터디 두번째만남 Express(20151025)
 

Viewers also liked

Realm 코딩카페 - 이종찬
Realm   코딩카페 - 이종찬Realm   코딩카페 - 이종찬
Realm 코딩카페 - 이종찬Lee-Jong-Chan
 
Realm: 초고속 데이터베이스
Realm: 초고속 데이터베이스Realm: 초고속 데이터베이스
Realm: 초고속 데이터베이스Leonardo YongUk Kim
 
Tour of Vue.js
Tour of Vue.jsTour of Vue.js
Tour of Vue.js선협 이
 
왜 Swift를 해야할까요?
왜 Swift를 해야할까요?왜 Swift를 해야할까요?
왜 Swift를 해야할까요?선협 이
 
Realm: Building a mobile database
Realm: Building a mobile databaseRealm: Building a mobile database
Realm: Building a mobile databaseChristian Melchior
 
C++ 코드 품질 관리 비법
C++ 코드 품질 관리 비법C++ 코드 품질 관리 비법
C++ 코드 품질 관리 비법선협 이
 
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)승용 윤
 
Functional Reactive Programming With RxSwift
Functional Reactive Programming With RxSwiftFunctional Reactive Programming With RxSwift
Functional Reactive Programming With RxSwift선협 이
 
android 개발에 도움이 되는 라이브러리 이철혁
android 개발에 도움이 되는 라이브러리 이철혁android 개발에 도움이 되는 라이브러리 이철혁
android 개발에 도움이 되는 라이브러리 이철혁Yeaji Shin
 
Realm Java for Android
Realm Java for AndroidRealm Java for Android
Realm Java for AndroidGokhan Arik
 
Closure, Higher-order function in Swift
Closure, Higher-order function in SwiftClosure, Higher-order function in Swift
Closure, Higher-order function in SwiftSeongGyu Jo
 
CocoaPoderと賢者の宝石 〜 まだ bundle exec で消耗してるの? 〜
CocoaPoderと賢者の宝石 〜 まだ bundle exec で消耗してるの? 〜CocoaPoderと賢者の宝石 〜 まだ bundle exec で消耗してるの? 〜
CocoaPoderと賢者の宝石 〜 まだ bundle exec で消耗してるの? 〜niwatako
 
Introduction to Realm Mobile Platform
Introduction to Realm Mobile PlatformIntroduction to Realm Mobile Platform
Introduction to Realm Mobile PlatformChristian Melchior
 
[IGC2015] 엔씨소프트 김주용-내가 사랑한 MMO들
[IGC2015] 엔씨소프트 김주용-내가 사랑한 MMO들[IGC2015] 엔씨소프트 김주용-내가 사랑한 MMO들
[IGC2015] 엔씨소프트 김주용-내가 사랑한 MMO들강 민우
 
xUnitTestPattern/chapter7
xUnitTestPattern/chapter7xUnitTestPattern/chapter7
xUnitTestPattern/chapter7종빈 오
 
Android Studio 개발 셋팅 + Genymotion
Android Studio 개발 셋팅 + GenymotionAndroid Studio 개발 셋팅 + Genymotion
Android Studio 개발 셋팅 + GenymotionYoungSu Son
 
Advanced realm in swift
Advanced realm in swiftAdvanced realm in swift
Advanced realm in swiftYusuke Kita
 

Viewers also liked (20)

Realm 코딩카페 - 이종찬
Realm   코딩카페 - 이종찬Realm   코딩카페 - 이종찬
Realm 코딩카페 - 이종찬
 
Realm: 초고속 데이터베이스
Realm: 초고속 데이터베이스Realm: 초고속 데이터베이스
Realm: 초고속 데이터베이스
 
Tour of Vue.js
Tour of Vue.jsTour of Vue.js
Tour of Vue.js
 
왜 Swift를 해야할까요?
왜 Swift를 해야할까요?왜 Swift를 해야할까요?
왜 Swift를 해야할까요?
 
Realm: Building a mobile database
Realm: Building a mobile databaseRealm: Building a mobile database
Realm: Building a mobile database
 
C++ 코드 품질 관리 비법
C++ 코드 품질 관리 비법C++ 코드 품질 관리 비법
C++ 코드 품질 관리 비법
 
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
 
Functional Reactive Programming With RxSwift
Functional Reactive Programming With RxSwiftFunctional Reactive Programming With RxSwift
Functional Reactive Programming With RxSwift
 
Realm시작하기
Realm시작하기Realm시작하기
Realm시작하기
 
android 개발에 도움이 되는 라이브러리 이철혁
android 개발에 도움이 되는 라이브러리 이철혁android 개발에 도움이 되는 라이브러리 이철혁
android 개발에 도움이 되는 라이브러리 이철혁
 
Realm Java for Android
Realm Java for AndroidRealm Java for Android
Realm Java for Android
 
Closure, Higher-order function in Swift
Closure, Higher-order function in SwiftClosure, Higher-order function in Swift
Closure, Higher-order function in Swift
 
CocoaPoderと賢者の宝石 〜 まだ bundle exec で消耗してるの? 〜
CocoaPoderと賢者の宝石 〜 まだ bundle exec で消耗してるの? 〜CocoaPoderと賢者の宝石 〜 まだ bundle exec で消耗してるの? 〜
CocoaPoderと賢者の宝石 〜 まだ bundle exec で消耗してるの? 〜
 
Realm @Android
Realm @Android Realm @Android
Realm @Android
 
Introduction to Realm Mobile Platform
Introduction to Realm Mobile PlatformIntroduction to Realm Mobile Platform
Introduction to Realm Mobile Platform
 
[IGC2015] 엔씨소프트 김주용-내가 사랑한 MMO들
[IGC2015] 엔씨소프트 김주용-내가 사랑한 MMO들[IGC2015] 엔씨소프트 김주용-내가 사랑한 MMO들
[IGC2015] 엔씨소프트 김주용-내가 사랑한 MMO들
 
xUnitTestPattern/chapter7
xUnitTestPattern/chapter7xUnitTestPattern/chapter7
xUnitTestPattern/chapter7
 
C++11
C++11C++11
C++11
 
Android Studio 개발 셋팅 + Genymotion
Android Studio 개발 셋팅 + GenymotionAndroid Studio 개발 셋팅 + Genymotion
Android Studio 개발 셋팅 + Genymotion
 
Advanced realm in swift
Advanced realm in swiftAdvanced realm in swift
Advanced realm in swift
 

Similar to 파크히어 Realm 사용 사례

Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 인프라 연동 (CB-Spider)
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 인프라 연동 (CB-Spider)Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 인프라 연동 (CB-Spider)
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 인프라 연동 (CB-Spider)Cloud-Barista Community
 
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Spider - 멀티 클라우드 인프라 연동(Multi-Cloud Infrastruc...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Spider - 멀티 클라우드 인프라 연동(Multi-Cloud Infrastruc...Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Spider - 멀티 클라우드 인프라 연동(Multi-Cloud Infrastruc...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Spider - 멀티 클라우드 인프라 연동(Multi-Cloud Infrastruc...Cloud-Barista Community
 
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Spider / CB-Tumblebug : 멀티클라우드 인프라 서비스 (Multi-...
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Spider / CB-Tumblebug : 멀티클라우드 인프라 서비스 (Multi-...Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Spider / CB-Tumblebug : 멀티클라우드 인프라 서비스 (Multi-...
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Spider / CB-Tumblebug : 멀티클라우드 인프라 서비스 (Multi-...Cloud-Barista Community
 
Cloud-Barista 제6차 오픈 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
Cloud-Barista 제6차 오픈 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)Cloud-Barista 제6차 오픈 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
Cloud-Barista 제6차 오픈 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)Cloud-Barista Community
 
AWS Cloud Design Pattenr (Korean) - CDP Seminar in Korea
AWS Cloud Design Pattenr (Korean) - CDP Seminar in KoreaAWS Cloud Design Pattenr (Korean) - CDP Seminar in Korea
AWS Cloud Design Pattenr (Korean) - CDP Seminar in KoreaSORACOM, INC
 
Spring mvc
Spring mvcSpring mvc
Spring mvcksain
 
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기Amazon Web Services Korea
 
마이크로서비스 아키텍처로 개발하기
마이크로서비스 아키텍처로 개발하기마이크로서비스 아키텍처로 개발하기
마이크로서비스 아키텍처로 개발하기Jaewoo Ahn
 
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)Cloud-Barista Community
 
서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)수보 김
 
1711 azure-live
1711 azure-live1711 azure-live
1711 azure-live세준 김
 
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안Amazon Web Services Korea
 
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Spider-멀티 클라우드 인프라 연동(Multi-Cloud Infrastructu...
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Spider-멀티 클라우드 인프라 연동(Multi-Cloud Infrastructu...Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Spider-멀티 클라우드 인프라 연동(Multi-Cloud Infrastructu...
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Spider-멀티 클라우드 인프라 연동(Multi-Cloud Infrastructu...Cloud-Barista Community
 
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...Amazon Web Services Korea
 
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트Dae Kim
 
SOSCON 2017 - Backend.AI
SOSCON 2017 - Backend.AISOSCON 2017 - Backend.AI
SOSCON 2017 - Backend.AIJoongi Kim
 
AWS Summit Seoul 2015 - AWS 이용사례 - SM 엔터테인먼트 및 셰이커미디어 사례를 중심으로
AWS Summit Seoul 2015 - AWS 이용사례 - SM 엔터테인먼트 및 셰이커미디어 사례를 중심으로AWS Summit Seoul 2015 - AWS 이용사례 - SM 엔터테인먼트 및 셰이커미디어 사례를 중심으로
AWS Summit Seoul 2015 - AWS 이용사례 - SM 엔터테인먼트 및 셰이커미디어 사례를 중심으로Amazon Web Services Korea
 
introduction of IaC using CloudFormation
introduction of IaC using CloudFormationintroduction of IaC using CloudFormation
introduction of IaC using CloudFormationHongkiYim
 
04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)Hankyo
 

Similar to 파크히어 Realm 사용 사례 (20)

Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 인프라 연동 (CB-Spider)
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 인프라 연동 (CB-Spider)Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 인프라 연동 (CB-Spider)
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 인프라 연동 (CB-Spider)
 
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Spider - 멀티 클라우드 인프라 연동(Multi-Cloud Infrastruc...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Spider - 멀티 클라우드 인프라 연동(Multi-Cloud Infrastruc...Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Spider - 멀티 클라우드 인프라 연동(Multi-Cloud Infrastruc...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Spider - 멀티 클라우드 인프라 연동(Multi-Cloud Infrastruc...
 
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Spider / CB-Tumblebug : 멀티클라우드 인프라 서비스 (Multi-...
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Spider / CB-Tumblebug : 멀티클라우드 인프라 서비스 (Multi-...Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Spider / CB-Tumblebug : 멀티클라우드 인프라 서비스 (Multi-...
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Spider / CB-Tumblebug : 멀티클라우드 인프라 서비스 (Multi-...
 
Cloud-Barista 제6차 오픈 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
Cloud-Barista 제6차 오픈 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)Cloud-Barista 제6차 오픈 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
Cloud-Barista 제6차 오픈 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
 
AWS Cloud Design Pattenr (Korean) - CDP Seminar in Korea
AWS Cloud Design Pattenr (Korean) - CDP Seminar in KoreaAWS Cloud Design Pattenr (Korean) - CDP Seminar in Korea
AWS Cloud Design Pattenr (Korean) - CDP Seminar in Korea
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
 
마이크로서비스 아키텍처로 개발하기
마이크로서비스 아키텍처로 개발하기마이크로서비스 아키텍처로 개발하기
마이크로서비스 아키텍처로 개발하기
 
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 인프라 서비스 연동 (CB-Spider)
 
서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)
 
1711 azure-live
1711 azure-live1711 azure-live
1711 azure-live
 
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
 
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Spider-멀티 클라우드 인프라 연동(Multi-Cloud Infrastructu...
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Spider-멀티 클라우드 인프라 연동(Multi-Cloud Infrastructu...Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Spider-멀티 클라우드 인프라 연동(Multi-Cloud Infrastructu...
Cloud-Barista 제2차 오픈 컨퍼런스 : CB-Spider-멀티 클라우드 인프라 연동(Multi-Cloud Infrastructu...
 
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
 
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
 
2015 oce garuda
2015 oce garuda2015 oce garuda
2015 oce garuda
 
SOSCON 2017 - Backend.AI
SOSCON 2017 - Backend.AISOSCON 2017 - Backend.AI
SOSCON 2017 - Backend.AI
 
AWS Summit Seoul 2015 - AWS 이용사례 - SM 엔터테인먼트 및 셰이커미디어 사례를 중심으로
AWS Summit Seoul 2015 - AWS 이용사례 - SM 엔터테인먼트 및 셰이커미디어 사례를 중심으로AWS Summit Seoul 2015 - AWS 이용사례 - SM 엔터테인먼트 및 셰이커미디어 사례를 중심으로
AWS Summit Seoul 2015 - AWS 이용사례 - SM 엔터테인먼트 및 셰이커미디어 사례를 중심으로
 
introduction of IaC using CloudFormation
introduction of IaC using CloudFormationintroduction of IaC using CloudFormation
introduction of IaC using CloudFormation
 
04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)04.실행환경 교육교재(화면처리)
04.실행환경 교육교재(화면처리)
 

More from 선협 이

웹 개발을 위해 꼭 알아야하는 보안 공격
웹 개발을 위해 꼭 알아야하는 보안 공격웹 개발을 위해 꼭 알아야하는 보안 공격
웹 개발을 위해 꼭 알아야하는 보안 공격선협 이
 
MongoDB 이해하기
MongoDB 이해하기MongoDB 이해하기
MongoDB 이해하기선협 이
 
Deep dive into Vue.js
Deep dive into Vue.jsDeep dive into Vue.js
Deep dive into Vue.js선협 이
 
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막선협 이
 
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017선협 이
 
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2ndVue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd선협 이
 
Reactive Programming With Swift
Reactive Programming With SwiftReactive Programming With Swift
Reactive Programming With Swift선협 이
 
C++과 Lua script연동
C++과 Lua script연동C++과 Lua script연동
C++과 Lua script연동선협 이
 
MSBuild + Git + Jenkins
MSBuild + Git + JenkinsMSBuild + Git + Jenkins
MSBuild + Git + Jenkins선협 이
 
Post Effect 테스트
Post Effect 테스트Post Effect 테스트
Post Effect 테스트선협 이
 

More from 선협 이 (11)

웹 개발을 위해 꼭 알아야하는 보안 공격
웹 개발을 위해 꼭 알아야하는 보안 공격웹 개발을 위해 꼭 알아야하는 보안 공격
웹 개발을 위해 꼭 알아야하는 보안 공격
 
MongoDB 이해하기
MongoDB 이해하기MongoDB 이해하기
MongoDB 이해하기
 
Deep dive into Vue.js
Deep dive into Vue.jsDeep dive into Vue.js
Deep dive into Vue.js
 
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
오픈소스를 여행하는 히치하이커를 위한 안내서 - 자막
 
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
Metal 기반 특별한 UI/UX 제공하기 - Let'Swift 2017
 
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2ndVue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
Vue.js와 Reactive Programming 자막 :: Vuetiful Korea 2nd
 
Reactive Programming With Swift
Reactive Programming With SwiftReactive Programming With Swift
Reactive Programming With Swift
 
C++과 Lua script연동
C++과 Lua script연동C++과 Lua script연동
C++과 Lua script연동
 
MSBuild + Git + Jenkins
MSBuild + Git + JenkinsMSBuild + Git + Jenkins
MSBuild + Git + Jenkins
 
Post Effect 테스트
Post Effect 테스트Post Effect 테스트
Post Effect 테스트
 
C++과 TDD
C++과 TDDC++과 TDD
C++과 TDD
 

파크히어 Realm 사용 사례