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
370
Goでwebアプリ作っている話
shizuoka.go #12の資料です
polidog
August 26, 2017
Tweet
Share
More Decks by polidog
See All by polidog
小さな開発会社を作った理由
polidog
1
2.2k
小さな開発会社がWebサービスを作る理由
polidog
1
470
トランザクションスクリプトは何がダメなのか?
polidog
2
2.7k
React初心者がHooksを理解するためにコードを読んでみた
polidog
0
460
object-mapperを作ってる話
polidog
0
270
2020年から始めるSymfonyフレームワーク
polidog
2
1.2k
はじめてのモダンPHP
polidog
0
510
ソフトウェア設計は難しくない
polidog
3
920
柔軟なアプリケーションをSymfonyで作るために考えている事
polidog
1
2.9k
Other Decks in Technology
See All in Technology
RAGHack: Kickoff and RAG 101
pamelafox
0
200
AWS IAM Identity Center議論会 〜 認証認可結合モデルと認証認可分離モデル / 20240827-jawsug-arch-iam_identity_center
opelab
3
320
タイミーのBraze活用 ~PUSH通知を活用したレコメンド~
ozeshun
2
120
開発者体験を意識した開発チームの生産性向上の取り組み
ham0215
3
650
手軽に始める? おうちサーバーのすゝめ
nyagasan
0
180
株式会社M2X エンジニアチーム紹介資料
m2xsoftware
0
320
バックログを導入し やっぱやめた話
ota42y
0
170
標準ライブラリの奥深アップデートを掘り下げよう!
logica0419
2
390
Dojo 20240830 COBOL to Java on Z
ichikawayasuhisa
0
240
ログラスが面白いと思う理由をマネージャーがエモく語ってみる / 20240829 vs LT
yoshikiiida
1
520
日経電子版から始まった内製開発の現在地と向き合っている課題/inhouse
nishiuma
0
230
contenteditableと向き合う
kikuchikakeru
2
140
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
327
20k
Building Your Own Lightsaber
phodgson
101
5.9k
Rails Girls Zürich Keynote
gr2m
93
13k
For a Future-Friendly Web
brad_frost
173
9.3k
Bootstrapping a Software Product
garrettdimon
PRO
304
110k
A Tale of Four Properties
chriscoyier
155
22k
We Have a Design System, Now What?
morganepeng
48
7.1k
How to train your dragon (web standard)
notwaldorf
85
5.6k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
Unsuck your backbone
ammeep
667
57k
The Cult of Friendly URLs
andyhume
76
5.9k
Happy Clients
brianwarren
96
6.6k
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ྑ͍αʔϏεͳͷ Ͱɺྑ͍ίʔυͰαʔϏεΛ ͍ͤͨ͞
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·͠ ͨɻ