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
FirestoreのGeoPoint型を使いこなす
Search
大塚真言
October 29, 2019
Programming
1
710
FirestoreのGeoPoint型を使いこなす
大塚真言
October 29, 2019
Tweet
Share
More Decks by 大塚真言
See All by 大塚真言
自社プロダクトを作ってみた.pdf
shingen29
0
260
CI/CD実践入門! GitHub ActionsでCI/CD環境を作ってみよう!
shingen29
0
85
CI/CD実践入門! GitHub ActionsでCI/CD環境を作ってみよう!
shingen29
0
250
ユースケース駆動開発で自社プロダクトを作ってみた!
shingen29
1
6.6k
MDN Web Docsから学ぶ 公式ドキュメントを読むメリット
shingen29
0
840
PHP8をざっくり解説してみる
shingen29
0
300
最近のプロジェクトを振り返ってみる
shingen29
0
360
Style Guideとstylelintを使ってHTML/CSSを綺麗に書こう!
shingen29
2
800
Stripe CLIを触ってみた!
shingen29
1
220
Other Decks in Programming
See All in Programming
SwiftUI Viewの責務分離
elmetal
PRO
2
270
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
150
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
200
Rubyで始める関数型ドメインモデリング
shogo_tksk
0
140
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
14
4.6k
Kotlinの開発でも AIをいい感じに使いたい / Making the Most of AI in Kotlin Development
kohii00
5
1.3k
Jakarta EE meets AI
ivargrimstad
0
400
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
380
color-scheme: light dark; を完全に理解する
uhyo
7
490
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
590
Open source software: how to live long and go far
gaelvaroquaux
0
660
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
230
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
182
22k
A Philosophy of Restraint
colly
203
16k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Fireside Chat
paigeccino
34
3.2k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Faster Mobile Websites
deanohume
306
31k
How STYLIGHT went responsive
nonsquared
98
5.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Transcript
FirestoreͷGeoPointܕΛ͍͜ͳ͢ ʙGeoFireXΛͬͨҐஔใݕࡧʙ 2019/10/29 Firebase Meetup in Osaka #6 ͠Μ͛Μ
ࣗݾհ -BSBWFM 7VFKT 'JSFCBTF
ձࣾհ ߹ಉձࣾϊϚυϦ ۀظ ैۀһ໊ 8FCܥडୗ։ൃ
αφେ͖ʢि4Քಇʣ ࠷ۙɺभ/P ౬Βͬ͘͢ ߦ͖ͬͯ·ͨ͠ʂʂ
Firestoreͬͯ·͢ʁ!
Firestoreͷಛ • ϦΞϧλΠϜσʔλऔಘ • ΦϑϥΠϯαϙʔτ • ଟ༷ͳσʔλܕʢจࣈྻɺɺλΠϜελ ϯϓܕɺGeoPointܕͳͲʣ • O/RϚοϐϯάෆཁ
• ҐஔใʢҢͱܦʣΛอଘ͢Δσʔλܕ GeoPointܕͱ
• 1ΧϥϜͰҢͱܦ͕ѻ͑Δ GeoPointܕͱ
• ΫϥΠΞϯτ͔ΒΦϒδΣΫτͱͯ͠؆୯ ʹऔಘͰ͖Δ GeoPointܕͱ Ң ܦ
·͋ɺҢܦ͕؆୯ʹѻ͑ͯ… ࣮༻తͳ͍ํ͕Γ͍ͨʂ
ݱࡏ͔Βܘ̋kmͷΛ ݕࡧ͢Δػೳ
༻ͨ͠ϥΠϒϥϦ • ᶃొ • GoogleMaps Geocoding API • ngeohashʢҢܦΛϋογϡԽ͢Δʣ •
ᶄݕࡧ • GeoFireX ※ https://github.com/codediodeio/geofirex
ᶃొ ॅॴ ٶ࡚ݝٶ࡚ࢢ٦௨౦ ᶃ Geocoding API Ң: 31.915439, ܦ: 131.42418
ᶄ ngeohash geohash: wvtmwdh0v
• ٿ্ͷશ࠲ඪΛҢܦΛͱʹϋογϡ Խͨ͠ͷʢ ྫ: wvtmwdh0v ʣ • 1~10ܻͰදݱ͞Εɺܻ͕େ͖͍ͱਫ਼͕ߴ ͍ •
จࣈྻ͕ۙࣅͯ͠Δ΄Ͳೋؒڑ͕͍ۙ GeohashͬͯԿʁ
ᶄݕࡧ ݱࡏͷ(FP'JSF1PJOUΦϒδΣΫτ DPOTUDFOUFSHFPpSFYQPJOU ܘLNҎΛݕࡧൣғʹઃఆ DPOTUSBEJVT HFPIBTIͱHFPQPJOUܕͷϑΟʔϧυΛࢦఆ DPOTUpFMEbMPDBUJPO`
ᶄݕࡧ औಘ͢ΔίϨΫγϣϯΛࢦఆ DPOTUDPMMFDUJPOHFPpSFYDPMMFDUJPO bDMJOJDT` DMJOJDTίϨΫγϣϯΛରʹ ݱࡏ͔ΒLNҎͷΛऔಘ͢Δ DPOTUDMJOJDTDPMMFDUJPOXJUIJO DFOUFS SBEJVT
pFME
• FirestoreҢܦΛऔΓѻ͍͍͢ • దͳϥΠϒϥϦͱΈ߹ΘͤΔ͜ͱͰ࣮༻ తͳػೳΛ࡞Δ͜ͱ͕Ͱ͖Δ ·ͱΊ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ