Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Evernoteを作る
Search
ninjinkun
September 30, 2012
Technology
1
2k
Evernoteを作る
YAPC Asia 2012 LTThon
ninjinkun
September 30, 2012
Tweet
Share
More Decks by ninjinkun
See All by ninjinkun
買収から2ヶ月でシステム統合した話
ninjinkun
0
110
Designer's and Engineer's Thinking Styles
ninjinkun
0
220
Launchable Webinar テストを効率化して生産性を上げる方法
ninjinkun
2
560
ディープリンクの 設計と実装 - iOSDC2017
ninjinkun
18
10k
スマートフォンアプリ開発における共創的な開発チーム
ninjinkun
61
19k
ReSwiftでアプリの状態管理 / Reactive Swift Meetup
ninjinkun
9
17k
フリルのアプリ開発今昔物語
ninjinkun
3
2.2k
プロトタイピング合宿によるデザインリニューアル
ninjinkun
1
3.1k
デザイナーが仕事をしやすいアプリエンジニアを考える
ninjinkun
4
680
Other Decks in Technology
See All in Technology
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
150
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
160
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
440
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
440
エラーとアクセシビリティ
schktjm
1
1.2k
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
460
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
200
AWSで始める実践Dagster入門
kitagawaz
1
610
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
810
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
130
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
220
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
270
Featured
See All Featured
Balancing Empowerment & Direction
lara
3
620
GitHub's CSS Performance
jonrohan
1032
460k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
The Cult of Friendly URLs
andyhume
79
6.6k
Gamification - CAS2011
davidbonilla
81
5.4k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Transcript
EvernoteΛ࡞Δ ninjinkun
ninjinkun • ͯͳ εϚʔτϑΥϯΤΩεύʔτ • Objecitve-C, Java • Perl࠷ۙͪΐͬͱ…
σʔλΛಉظ͍ͨ͠ • ੈϚϧνσόΠε࣌ • σόΠε͕ϩʔΧϧDBΛ࣋ͭ • σόΠεؒͰDBΛಉظ͍ͨ͠ • ϒϩάͷԼॻ͖ͱ͔ಉظ͍ͨ͠
iCloudͷ͜Ε͡Όͳ͍ײ σʔλΛಉظ͍ͨ͠ • αʔόʔAppleͷఏڙͷΈ • Ϋϥυғ͍ࠐΈઓུ • Զͨͪͷཉ͍͠ͷ͜Ε͡Όͳ͍Μͩʂʂ
EvernoteΈ͍ͨͳͷ࡞Γ͍ͨ σʔλΛಉظ͍ͨ͠ • ͳΜ͔େมͦ͏ͩͳ… • υΩϡϝϯτ͋ͬͨ • Evernote Synchronization via
EDAM Evernote Synchronization via EDAM v1.0.5 March 7, 2011
EDAM • Evernote Data Access and Management • σʔλͷ࣋ͪํͱಉظͷ༷ •
ͻͱͭͷதԝαʔϏεɺෳͷΫϥΠΞϯτ
EDAM • ϞόΠϧΫϥΠΞϯτͷࣄΛߟྀ • 3GճઢͳͲɺϋʔυͳڥఆ • ࣌ܭ͕৴༻Ͱ͖ͳ͍ • λΠϜελϯϓʹཔΒͳ͍
ϦϑΝϨϯε࣮తͳͷΛ࡞ͬͯΈ·ͨ͠ σϞ • Amon2::Liteͬͯ·͢! • https://github.com/ninjinkun/EDAMSync • αʔό • ΫϥΠΞϯτ
• iPhoneΞϓϦΫϥΠΞϯτ • ΤϯτϦͷআʹະରԠ
αʔόʔ EDAM • Update Sequence Number (USN) • ΤϯτϦʔ͝ͱʹ࣋ͭ •
ߋ৽͞ΕΔͱάϩʔόϧʹΠϯΫϦϝϯτ • create($entryA) # $entryA->usn => 250 • edit($entryA) # $entryA->usn => 251 • edit($entryB) # $entryB->usn => 252 • GUID • ΤϯτϦʔΛࣝผ͢ΔID
ΫϥΠΞϯτ EDAM • dirtyϑϥά • ΤϯτϦʔ͝ͱʹ࣋ͭ • Update Sequence Number
(USN) • ΤϯτϦʔ͝ͱʹ࣋ͭ • ΫϥΠΞϯτͰߋ৽͠ͳ͍ • GUID • ΤϯτϦʔΛࣝผ͢ΔID
͓ΘΓʹ • EDAMΛֶEvernote࡞ΕΔ • ΫϥΠΞϯταΠυͷίʔυ͕݁ߏଟ͍ • ͰAlter Table͍ͩͳ… • ࣌ܭ͕৴༻Ͱ͖ΔͳΒλΠϜελϯϕʔεͰͰ͖
Δ͔