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
9.7k
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.6k
Design Pattern for Image and Text Composition in Go
timakin
5
6.3k
Golang API Testing the HARD way
timakin
13
6.2k
React Native Beyond Prototype
timakin
2
1.5k
Performance Optimization on Google AppEngine
timakin
5
6k
testcache.pdf
timakin
1
110
How Go cache
timakin
1
60
How Go cache tests
timakin
1
2.8k
A/Bテスト機構がもたらす 大胆な開発体制及び ゆるやかなアプリ体験の変化 / Architecture and benefits of AB-test allocation system.
timakin
4
7.5k
Other Decks in Programming
See All in Programming
ピグパーティにおけるMongoDB CommunityバージョンからAtlasへの移行事例
10969hotaka
0
130
Exploring the Gradually Lost Technical Skills in the Cloud Native Era
hwchiu
2
3.9k
CSC307 Lecture 06
javiergs
PRO
0
360
Jetpack for KMP
fornewid
1
290
Modern Angular: Renovation for Your Applications
manfredsteyer
PRO
0
140
Harnessing Large Language Models for Training-free Video Anomaly Detection
tereka114
1
1.3k
Mastering Developer Experience: A Roadmap for Success 【開発生産性Conference 2024】
findyinc
1
380
最古の関数型言語「Lisp」ことはじめ / lisp_in_kamiyama
uhooi
1
190
日付と正規化
megmogmog1965
0
140
小さな開発会社を作った理由
polidog
0
1.9k
AHC035解説
terryu16
0
710
Polarsの成長: v0.14からv1.0までの変遷と今後の展望
zerebom
1
350
Featured
See All Featured
Designing Experiences People Love
moore
136
23k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
224
21k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
121
18k
Building Effective Engineering Teams - LeadDev
addyosmani
47
2.2k
Adopting Sorbet at Scale
ufuk
71
8.8k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
129
32k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
28
2.2k
What the flash - Photography Introduction
edds
65
11k
The Pragmatic Product Professional
lauravandoore
29
6.1k
How to Think Like a Performance Engineer
csswizardry
4
590
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
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Ͱ৭ɾେ͖͞ͳͲ͕؆୯ʹऔಘͰ͖Δ ϥούʔΛ͑Ճ؆୯ ߹ͷ߹࠲ඪɾॻ͖ग़͠ॲཧͷ࣮͕ར༻έʔεʹԠ͡ ͯมΘͬͯ͘ΔͷͰҙͷඞཁ͋Γ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ