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
4k
Design Pattern for Image and Text Composition in Go
timakin
5
6.7k
Golang API Testing the HARD way
timakin
13
6.7k
React Native Beyond Prototype
timakin
2
1.6k
Performance Optimization on Google AppEngine
timakin
5
6.4k
testcache.pdf
timakin
1
160
How Go cache
timakin
1
96
How Go cache tests
timakin
1
3.2k
A/Bテスト機構がもたらす 大胆な開発体制及び ゆるやかなアプリ体験の変化 / Architecture and benefits of AB-test allocation system.
timakin
4
7.8k
Other Decks in Programming
See All in Programming
Improving my own Ruby thereafter
sisshiki1969
1
160
デザイナーが Androidエンジニアに 挑戦してみた
874wokiite
0
550
AI時代のUIはどこへ行く?
yusukebe
18
9.1k
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
520
Updates on MLS on Ruby (and maybe more)
sylph01
1
180
より安全で効率的な Go コードへ: Protocol Buffers Opaque API の導入
shwatanap
2
750
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
250
AI Agents: How Do They Work and How to Build Them @ Shift 2025
slobodan
0
100
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
1.8k
AIと私たちの学習の変化を考える - Claude Codeの学習モードを例に
azukiazusa1
11
4.4k
Deep Dive into Kotlin Flow
jmatsu
1
370
個人開発で徳島大学生60%以上の心を掴んだアプリ、そして手放した話
akidon0000
1
150
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.6k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Code Review Best Practice
trishagee
71
19k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
930
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Speed Design
sergeychernyshev
32
1.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
For a Future-Friendly Web
brad_frost
180
9.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
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Ͱ৭ɾେ͖͞ͳͲ͕؆୯ʹऔಘͰ͖Δ ϥούʔΛ͑Ճ؆୯ ߹ͷ߹࠲ඪɾॻ͖ग़͠ॲཧͷ࣮͕ར༻έʔεʹԠ͡ ͯมΘͬͯ͘ΔͷͰҙͷඞཁ͋Γ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ