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
750
FirestoreのGeoPoint型を使いこなす
大塚真言
October 29, 2019
Tweet
Share
More Decks by 大塚真言
See All by 大塚真言
自社プロダクトを作ってみた.pdf
shingen29
0
280
CI/CD実践入門! GitHub ActionsでCI/CD環境を作ってみよう!
shingen29
0
97
CI/CD実践入門! GitHub ActionsでCI/CD環境を作ってみよう!
shingen29
0
280
ユースケース駆動開発で自社プロダクトを作ってみた!
shingen29
1
7.2k
MDN Web Docsから学ぶ 公式ドキュメントを読むメリット
shingen29
0
870
PHP8をざっくり解説してみる
shingen29
0
310
最近のプロジェクトを振り返ってみる
shingen29
0
390
Style Guideとstylelintを使ってHTML/CSSを綺麗に書こう!
shingen29
2
860
Stripe CLIを触ってみた!
shingen29
1
240
Other Decks in Programming
See All in Programming
Claude Code派?Gemini CLI派? みんなで比較LT会!_20250716
junholee
1
800
バイブスあるコーディングで ~PHP~ 便利ツールをつくるプラクティス
uzulla
1
320
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
yakenji
1
910
Strands Agents で実現する名刺解析アーキテクチャ
omiya0555
1
110
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
3
520
Go製CLIツールをnpmで配布するには
syumai
2
1.1k
Workers を定期実行する方法は一つじゃない
rokuosan
0
140
一人でAIプロダクトを作るならAIにはもっと働いてもらいたい / I want AI to work harder
rkaga
2
170
オホーツクでコミュニティを立ち上げた理由―地方出身プログラマの挑戦 / TechRAMEN 2025 Conference
lemonade_37
1
430
No Install CMS戦略 〜 5年先を見据えたフロントエンド開発を考える / no_install_cms
rdlabo
0
430
PHPUnitの限界をPlaywrightで補完するテストアプローチ
yuzneri
0
370
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
950
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
540
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Six Lessons from altMBA
skipperchong
28
3.9k
Rails Girls Zürich Keynote
gr2m
95
14k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Navigating Team Friction
lara
188
15k
Scaling GitHub
holman
461
140k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Documentation Writing (for coders)
carmenintech
73
5k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
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ҢܦΛऔΓѻ͍͍͢ • దͳϥΠϒϥϦͱΈ߹ΘͤΔ͜ͱͰ࣮༻ తͳػೳΛ࡞Δ͜ͱ͕Ͱ͖Δ ·ͱΊ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ