Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
120
Designer's and Engineer's Thinking Styles
ninjinkun
0
240
Launchable Webinar テストを効率化して生産性を上げる方法
ninjinkun
2
570
ディープリンクの 設計と実装 - iOSDC2017
ninjinkun
18
10k
スマートフォンアプリ開発における共創的な開発チーム
ninjinkun
61
19k
ReSwiftでアプリの状態管理 / Reactive Swift Meetup
ninjinkun
9
17k
フリルのアプリ開発今昔物語
ninjinkun
3
2.2k
プロトタイピング合宿によるデザインリニューアル
ninjinkun
1
3.1k
デザイナーが仕事をしやすいアプリエンジニアを考える
ninjinkun
4
690
Other Decks in Technology
See All in Technology
AI駆動開発によるDDDの実践
dip_tech
PRO
0
230
Digitization部 紹介資料
sansan33
PRO
1
6.1k
事業部のプロジェクト進行と開発チームの改善の “時間軸" のすり合わせ
konifar
9
2.5k
あなたの知らないDateのひみつ / The Secret of "Date" You Haven't known #tqrk16
expajp
0
110
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
620
意外と難しいドメイン駆動設計の話
zozotech
PRO
0
950
生成AIシステムとAIエージェントに関する性能や安全性の評価
shibuiwilliam
2
300
進化の早すぎる生成 AI と向き合う
satohjohn
0
480
Bakuraku Engineering Team Deck
layerx
PRO
10
2.9k
MS Ignite 2025で発表されたFoundry IQをRecap
satodayo
3
220
IPv6-mostly field report from RubyKaigi 2026
sorah
0
250
AI/MLのマルチテナント基盤を支えるコンテナ技術
pfn
PRO
4
630
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
BBQ
matthewcrist
89
9.9k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Faster Mobile Websites
deanohume
310
31k
Agile that works and the tools we love
rasmusluckow
331
21k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
The World Runs on Bad Software
bkeepers
PRO
72
12k
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͍ͩͳ… • ࣌ܭ͕৴༻Ͱ͖ΔͳΒλΠϜελϯϕʔεͰͰ͖
Δ͔