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
Head First Golang Image Package
Search
Seiji Takahashi
November 13, 2018
Programming
2
10k
Head First Golang Image Package
Talk session @ golang.tokyo #19
Seiji Takahashi
November 13, 2018
Tweet
Share
More Decks by Seiji Takahashi
See All by Seiji Takahashi
Go Backends for frontends with GraphQL and gRPC
timakin
6
3.8k
Design Pattern for Image and Text Composition in Go
timakin
5
6.5k
Golang API Testing the HARD way
timakin
13
6.4k
React Native Beyond Prototype
timakin
2
1.6k
Performance Optimization on Google AppEngine
timakin
5
6.2k
testcache.pdf
timakin
1
130
How Go cache
timakin
1
68
How Go cache tests
timakin
1
3k
A/Bテスト機構がもたらす 大胆な開発体制及び ゆるやかなアプリ体験の変化 / Architecture and benefits of AB-test allocation system.
timakin
4
7.6k
Other Decks in Programming
See All in Programming
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
9
2.4k
LLM Supervised Fine-tuningの理論と実践
datanalyticslabo
8
1.9k
.NETでOBS Studio操作してみたけど…… / Operating OBS Studio by .NET
skasweb
0
120
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
280
Androidアプリの One Experience リリース
nein37
0
1.2k
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7.7k
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
1
430
Swiftコンパイラ超入門+async関数の仕組み
shiz
0
170
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
300
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
940
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
390
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1k
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Why Our Code Smells
bkeepers
PRO
335
57k
Music & Morning Musume
bryan
46
6.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
Producing Creativity
orderedlist
PRO
343
39k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Thoughts on Productivity
jonyablonski
68
4.4k
Transcript
Head First Golang image package @__timakin__ golang.tokyo#19
SEIJI TAKAHASHI
None
ΞδΣϯμ *NBHFύοέʔδͷհ ࣮ྫͰֶͿ*NBHFύοέʔδ ը૾ͷ߹ɾՃ ը૾ͱจࣈͷ߹
QBDLBHFl*NBHFz w %ը૾Λѻ͏ͨΊͷύοέʔδ w +1( 1/( (*'ʹରԠ w Ͱ͖Δ͜ͱ w
৭ใऔಘ w 1PJOU 3FDUBOHMFͷૢ࡞ w ݁߹ॲཧʢESBXʣ w ϑΥʔϚοτͷσίʔυ
ྫʣͷ࢛֯ܗΛඳը
ϞβΠΫ γϟʔϓௐ ໌Δ͞ௐ ͳͲɺେମΓ͍ͨ͜ͱͰ͖Δ͕ ίʔυྔ͕ଟ͗͢ΔͷͰׂѪ
ͱ͍͏͔
ؙ࢛֯ͷඳըͱ͔ Ṗͷ৭ௐͱ͔
ͦΜͳ͜ͱͨͯ͘͠ ͜͜ʹ͖ͯ·͔͢ʁ
࣮ફͯ͠Έ·͠ΐ͏ʂ
ը૾ͷ߹ɾՃ
ͱ͜ΖͰօ͞Μ
!EFFFFU͞Μɻ ࠃͰϚΠΫϩαʔϏεͱ ͍͑͜ͷํɻ
Ͱ͕͢ɺ
ˌEFFFFU෩
None
खʹ࣋ͬͨΦϒδΣΫτʢʣΛ தԝʹਾ͑ͳ͕Β ࣸਅΛࡱΔࡱӨٕ๏ʢʁʣ
!?
खʹ࣋ͬͨΦϒδΣΫτʢʣΛ தԝʹਾ͑ͳ͕Β ࣸਅΛࡱΔࡱӨٕ๏ʢʁʣ
ͦΜͳʹखʹ͓͠ΌΕͳ Λ࣋ͭػձͳ͍
୭Ͱख๏Λ࠶ݱͰ͖Δͱศར
None
ɿW
Γ͍ͨ͜ͱ w Ͱ͍͍ײ͡ͷงғؾΛग़͍ͨ͠ w ͦΕΛखʹ࣋ͬͨঢ়ଶͰதԝʹఴ͍͑ͨ w ʹϑΥʔΧε͍ͯ͠Δ෩ʹ͍ͨ͠
ඞཁͳͷ w खɺɺഎܠ
ΦϦδφϧ
ඞཁͳͱ͜Ζ
దͳഎܠΛ୳͢
ݟ͚ͭΔ
࣮ w ྆ը૾ͷಡΈࠐΈ w എܠʹదͳ΅͔͠ΛೖΕΔ w खͷը૾Λਃ͠༁ఔʹαΠζௐ͢Δ w खट͕ࠨԼʹདྷΔΑ͏ʹͬ͢ͱ߹ w
ϑΝΠϧग़ྗ
HJUIVCDPNEJTJOUFHSBUJPOJNBHJOH w JNBHFύοέʔδͷϥούʔ w ΅͔͠໌ௐ͕ͷ͍͢͝؆୯ʹͰ͖Δ
ਃ͠༁ఔͷαΠζௐ
ͬ͢ͱࠨԼʹ߹
ग़ྗʜ
None
ը૾ͷ߹ɾՃ w HJUIVCDPNEJTJOUFHSBUJPOJNBHJOHΛ͏ ͱ͍ͩͿָʹ΅͔͠ͳͲΛೖΕΒΕΔ w ߹ͷࡍج४͕ࠨ্Ͱ͋Δ͜ͱʹҙ w ਖ਼༧֎ͷͦΕͬΆ͞ʹͳͬͨ
ˠਅ໘ͳ
αʔϏεӡ༻தɺ Ϛʔέࢪࡦͱͯ͠0(1ը૾Λ ࡞͢Δ͜ͱ͕͋ΔͷͰʁ
ը૾ͱจࣈͷ߹
Γ͍ͨ͜ͱ w 0(1എܠը૾ʹจࣈΛ߹͢Δ w ҙͷจࣈྻΛҙͷϑΥϯτͰɺ దͳҐஔʹදࣔ͢Δ
ૉࡐ
࣮ w ҙͷϑΥϯτΛಡΈࠐΉ w ͦͷϑΥϯτͰςΩετΛҙͷҐஔʹඳը w എܠͱॏͶ߹Θͤͯॻ͖ग़͠
HJUIVCDPNHPMBOHGSFFUZQFUSVFUZQF w ҙͷϑΥϯτͰςΩετΛҙͷҐஔʹग़͢ʹɺ ௨ৗͷը૾ՃͰෆՄɻ w GSFFUZQFύοέʔδΛ͏ɻ
ϑΥϯτͷಡΈࠐΈ
എܠΛॻ͖ग़͓ͯ͘͠
GPOU%SBXFSΛͬͨςΩετඳը
ग़ྗʜ
ग़ྗʜ
ը૾ͱจࣈͷ߹ w ϑΥϯτҐஔௐΛॊೈʹ͍ͨ͠߹ɺ GSFFUZQFύοέʔδͱGPOU%SBXMFSͷ߹Θٕͤ Ͱ͍͚Δ w ը૾ͷͲͷҐஔʹදࣔ͢Δ͔ɺจࣈͷંΓฦ͠ Ͳ͏͢Δ͔దٓௐͷඞཁ͋Γ
·ͱΊ JNBHFͰ৭ɾେ͖͞ͳͲ͕؆୯ʹऔಘͰ͖Δ ϥούʔΛ͑Ճ؆୯ ߹ͷ߹࠲ඪɾॻ͖ग़͠ॲཧͷ࣮͕ར༻έʔεʹԠ͡ ͯมΘͬͯ͘ΔͷͰҙͷඞཁ͋Γ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ