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
A beleza das interfaces em Go
Search
pcasarettto
July 09, 2016
Programming
2
220
A beleza das interfaces em Go
pcasarettto
July 09, 2016
Tweet
Share
More Decks by pcasarettto
See All by pcasarettto
Bundler
pcasarettto
1
110
Other Decks in Programming
See All in Programming
哲学史とモデリング
tanakahisateru
3
440
Three ways to use AI on Android: The Good, the Bad and the Ugly
marxallski
0
120
An adventure of Happy Eyeballs
coe401_
1
310
RaaP
ksss
0
160
TypeScriptから始める VR生活
tamagokakeg
2
140
Slackワークフローで感謝を伝える機能/WiFi 自動接続/Figma to React Component/障害レポート君 Team3@NOT A HOTEL
nakaohiroshi
0
240
The Design of Everyday APIs - PyCon 2024
roguelynn
1
230
TypeScriptコードの漸進的改善 / Progressive Improvement of TypeScript Code
medley
1
460
Runtime Objects in Rust
mitsuhiko
0
220
TypeScriptのパフォーマンス改善
yajihum
14
5.2k
勉強会4_アップデートされたAssistantsAPIを試す
milky04
0
110
TypeScriptの型とパフォーマンス (TSKaigi 2024)
ypresto
14
5.2k
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
356
18k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
The Invisible Customer
myddelton
114
12k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Rails Girls Zürich Keynote
gr2m
91
13k
4 Signs Your Business is Dying
shpigford
176
21k
Optimizing for Happiness
mojombo
371
69k
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
Building Effective Engineering Teams - LeadDev
addyosmani
33
1.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
How GitHub (no longer) Works
holman
305
140k
The Power of CSS Pseudo Elements
geoffreycrofte
62
5k
Transcript
A beleza das interfaces em Go
Paulo Casaretto @pcasaretto
Interface
Interfaces em Go
None
None
None
io.Reader io.Writer
io.Copy io.Reader io.Writer
Reader Example: GIF Decoder
os.File deblockingReader lzw.Reader
os.File | deblockingReader | lzw.Reader
os.File deblockingReader lzw.Reader io.Reader
Usando interfaces
None
None
None
None
Two relevant Go proverbs
THE BIGGER THE INTERFACE, THE WEAKER THE ABSTRACTION
interface{} says nothing
ProTip
• https://blog.golang.org/error-handling-and-go • https://blog.golang.org/errors-are-values • https://blog.golang.org/gif-decoder-exercise- in-go-interfaces • https://go-proverbs.github.io/ Resources
Thanks!
panic(“Thanks!”)
None
None
None