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
320
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
A beleza das interfaces em Go
pcasarettto
July 09, 2016
More Decks by pcasarettto
See All by pcasarettto
Bundler
pcasarettto
1
140
Other Decks in Programming
See All in Programming
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
250
さぁV100、メモリをお食べ・・・
nilpe
0
130
Lessons from Spec-Driven Development
simas
PRO
0
150
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
450
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
440
net-httpのHTTP/2対応について
naruse
0
460
Swiftのレキシカルスコープ管理
kntkymt
0
220
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
670
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
430
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
3.3k
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
630
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
4.8k
Featured
See All Featured
Scaling GitHub
holman
464
140k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
200
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
YesSQL, Process and Tooling at Scale
rocio
174
15k
HDC tutorial
michielstock
2
690
Become a Pro
speakerdeck
PRO
31
6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
It's Worth the Effort
3n
188
29k
A better future with KSS
kneath
240
18k
The Spectacular Lies of Maps
axbom
PRO
1
790
The Curious Case for Waylosing
cassininazir
1
380
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