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
PRO
August 26, 2017
Technology
440
1
Share
Goでwebアプリ作っている話
shizuoka.go #12の資料です
polidog
PRO
August 26, 2017
More Decks by polidog
See All by polidog
AIがコードを書く時代の ジェネレーティブプログラミング
polidog
PRO
3
900
小さな開発会社を作った理由(再)
polidog
PRO
0
240
React Server ComponentsでAPI不要の開発体験
polidog
PRO
1
790
小さな開発会社が受託開発に力を入れる理由
polidog
PRO
0
480
小さな開発会社を作った理由
polidog
PRO
1
3.5k
小さな開発会社がWebサービスを作る理由
polidog
PRO
1
810
トランザクションスクリプトは何がダメなのか?
polidog
PRO
2
4k
React初心者がHooksを理解するためにコードを読んでみた
polidog
PRO
0
610
object-mapperを作ってる話
polidog
PRO
0
410
Other Decks in Technology
See All in Technology
小さいVue.jsを30分で作る
hal_spidernight
0
150
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.5k
10サービス以上のメール到達率改善を地道に継続的に進めている話 / Continue to improve email delivery rates across multiple services
yamaguchitk333
6
1.5k
サンプリングは「作る」のか「使う」のか? 分散トレースのコストと運用を両立する実践的戦略 / Why you need the tail sampling and why you don't want it
ymotongpoo
4
170
サービスの信頼性を高めるため、形骸化した「プロダクションミーティング」を立て直すまでの取り組み
stefafafan
1
260
全社統制を維持しながら現場負担をどう減らすか〜プラットフォームチームとセキュリティチームで進めたSecurity Hub活用によるAWS統制の見直し〜/secjaws-security-hub-custom-insights
mhrtech
1
410
会社説明資料|株式会社ギークプラス ソフトウェア事業部
geekplus_tech
0
220
オライリーイベント登壇資料「鉄リサイクル・産廃業界におけるAI技術実応用のカタチ」
takarasawa_
0
390
クラウドネイティブ DB はいかにして制約を 克服したか? 〜進化歴史から紐解く、スケーラブルアーキテクチャ設計指針〜
hacomono
PRO
6
920
ブラウザの投機的読み込みと投機ルールAPIを理解し、Webサービスのパフォーマンスを最適化する
shuta13
3
300
変化の激しい時代をゴキゲンに生き抜くために 〜ストレスマネジメントのススメ〜
kakehashi
PRO
5
1.3k
AIの揺らぎに“コシ”を与える階層化品質設計
ickx
0
270
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
170
Ethics towards AI in product and experience design
skipperchong
2
270
BBQ
matthewcrist
89
10k
Bash Introduction
62gerente
615
210k
Documentation Writing (for coders)
carmenintech
77
5.3k
Are puppies a ranking factor?
jonoalderson
1
3.4k
Context Engineering - Making Every Token Count
addyosmani
9
870
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
290
WCS-LA-2024
lcolladotor
0
580
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
190
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ྑ͍αʔϏεͳͷ Ͱɺྑ͍ίʔυͰαʔϏεΛ ͍ͤͨ͞
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·͠ ͨɻ