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
Goでwebアプリ作っている話
Search
polidog
August 26, 2017
Technology
1
340
Goでwebアプリ作っている話
shizuoka.go #12の資料です
polidog
August 26, 2017
Tweet
Share
More Decks by polidog
See All by polidog
小さな開発会社がWebサービスを作る理由
polidog
1
380
トランザクションスクリプトは何がダメなのか?
polidog
2
2.4k
React初心者がHooksを理解するためにコードを読んでみた
polidog
0
410
object-mapperを作ってる話
polidog
0
250
2020年から始めるSymfonyフレームワーク
polidog
2
1.1k
はじめてのモダンPHP
polidog
0
440
ソフトウェア設計は難しくない
polidog
3
870
柔軟なアプリケーションをSymfonyで作るために考えている事
polidog
1
2.9k
Symfonyのキャッシュについて
polidog
2
580
Other Decks in Technology
See All in Technology
Real World Type Puzzle and Code Generation
yukukotani
4
620
kcp: Kubernetes APIs Are All You Need #techfeed_live / TechFeed Experts Night 28th
ytaka23
1
180
Observabilityジャーニーを実現するためのAWSサービス:OSS編
o11yfes2023
0
110
本当のガバクラ基礎
toru_kubota
0
300
DevRelによる信頼構築とデータ駆動で変わるエンジニア採用 / DevRel Trust Building to Data Driven Engineering Hiring
bobtani
1
120
知識と実践を紡ぐGenAI / Connecting Knowledge and experience with GenAI
aki_moon
2
150
cgroup v2 で何が変わったのか / TechFeed Experts Night #28
tenforward
2
150
社内での継続的な機械学習勉強会の開催のコツ
yudai00
2
380
#phpconkagawa レガシーコードにもオブザーバビリティを 〜少しずつ始めるサービス監視〜
yamato_sorariku
0
510
PhpStorm超絶技巧40分集中講義 #phpconkagawa
yusuke
4
700
Documentação de Produtos: Artefatos essenciais na prática
rigolon
1
280
TypescriptでのContextualな構造化ロギングと社内全体への導入
leveragestech
3
540
Featured
See All Featured
Designing with Data
zakiwarfel
96
4.8k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
What the flash - Photography Introduction
edds
64
11k
Side Projects
sachag
451
41k
Building Better People: How to give real-time feedback that sticks.
wjessup
356
18k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Facilitating Awesome Meetings
lara
43
5.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
15
1.6k
Building Adaptive Systems
keathley
32
1.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
In The Pink: A Labor of Love
frogandcode
138
21k
Designing on Purpose - Digital PM Summit 2013
jponch
111
6.5k
Transcript
GoͰwebΞϓϦ࡞ͬ ͍ͯΔ @polidog shizuoka.go #12
ࣗݾհ • @polidog • tavii.com Inc. • PHPer, Symfony Japan
User Group • Gotanda.goͷओ࠵ऀͰ͢
http://gotrip.jp
WordPress
GoͰ࡞Γ͢
ࠓ͢͜ͱ • GoΛ࠾༻ͨ͠ཧ༝ • Goݴޠͷֶͼํ • ͬͯΔϥΠϒϥϦʹ͍ͭͯ • ΜͰΔͷͱ͜Ζ
ͳͥGoΛ͓͏ͱࢥͬͨͷ ͔ʁ
GoΛ࠾༻ͨ͠ཧ༝ • ͦ͏(αʔόඅ͍҆ͨ͘͠) • Gotanda.goͷओ࠵ऀͳͷʹGo͕·ͱʹॻ͚ ͳ͍ • PHP͡Όͳ͍ύϥμΠϜΛֶͼ͍ͨ • GoϒʔϜ͋Δؾ͕͢Δ
http://tech.mercari.com/entry/2017/07/13/103000
None
Goݴޠͷֶͼํ
ֶͼํ • Tour of Go • ຊΛಡΉ • ͱʹ͔͘ҰͭԿ͔࡞ͬͯΈΔ
https://github.com/ polidog/go-itunes
None
GoͳਓPR͕Β͑Δ
https://github.com/polidog/go-itunes/pull/1
https://github.com/ polidog/go-nowplaying
None
webΞϓϦͷͨΊͷࢿྉΛಡΉ • GoݴޠʹΑΔWebΞϓϦέʔγϣϯ։ൃ • https://astaxie.gitbooks.io/build-web- application-with-golang/content/ja/
͍ͬͯΔϥΠϒϥϦʹ͍ͭ ͯ
ϑϨʔϜϫʔΫͷબ
ϑϨʔϜϫʔΫ • Revel • martini • goji • echo •
gin • chi
͍ͬͺ͍͋ΔͶ
None
None
None
chiΑͦ͞͏
chiͷಛ • ͍ܰ • ͍ • net/httpͷޓੑ͋Δ • ֎෦ͷύοέʔδʹґଘ͠ͳ͍
Regex url parameters
None
Database(ORM)
৭ʑύοέʔδ͋ΔΑͶ • gorm • gorp • dbr • xorm •
sqlx
http:// pospome.hatenablog.com/ entry/2017/02/18/172307
gorm͕ྑͦ͞͏
http://jinzhu.me/gorm/models.html#model- definition
http://jinzhu.me/gorm/associations.html
http://jinzhu.me/gorm/crud.html#preloading- eager-loading
https://github.com/jinzhu/ gorm/issues/246
Memcache
https://github.com/ bradfitz/gomemcache
ଞʹબࢶ͕ͳ͔ͬͨ
StructΛmecachedʹ อଘ͍ͨ͠
StructΛγϦΞϥΠζͯ͠ Ωϟογϡ͢Δ
http://twinbird- htn.hatenablog.com/entry/ 2017/01/01/181058
ύοέʔδཧ
ଞͷݴޠͩͱ • npm • gem • composer …etc
GoͰʁ
https://github.com/golang/ go/wiki/ PackageManagementTools
͍Ζ͍Ζ͋ΔͶ
ެ͔ࣜͩΒdep͓͏ʂ
dep init
ύοέʔδͷՃ
dep ensure -add ύοέʔδ ໊
ʊਓਓਓਓਓਓਓਓਓʊ ʼɹpre-alpha stateɹʻ ʉY^Y^Y^Y^Y^Y^Y^Yʉ
ΜͰ͍Δͱ͜Ζ
σΟϨΫτϦߏ
ΠϯελϯεͷҾ͖ճ͠
Contextͷ͍ํ
࠷ޙʹ
GoΛͬͱॻ͚ΔΑ͏ʹͳΓ ͍ͨ
Gotripྑ͍αʔϏεͳͷ Ͱɺྑ͍ίʔυͰαʔϏεΛ ͍ͤͨ͞
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·͠ ͨɻ