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
260
A beleza das interfaces em Go
pcasarettto
July 09, 2016
Tweet
Share
More Decks by pcasarettto
See All by pcasarettto
Bundler
pcasarettto
1
120
Other Decks in Programming
See All in Programming
Jakarta EE meets AI
ivargrimstad
0
120
詳細解説! ArrayListの仕組みと実装
yujisoftware
0
540
Amazon Qを使ってIaCを触ろう!
maruto
0
380
WebフロントエンドにおけるGraphQL(あるいはバックエンドのAPI)との向き合い方 / #241106_plk_frontend
izumin5210
4
1.3k
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
140
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
5
3.8k
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
2
340
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
110
JavaでLチカしたい! / JJUG CCC 2024 Fall LT
nhayato
0
120
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
mot_techtalk
4
550
3rd party scriptでもReactを使いたい! Preact + Reactのハイブリッド開発
righttouch
PRO
1
590
PLoP 2024: The evolution of the microservice architecture pattern language
cer
PRO
0
2.4k
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Bash Introduction
62gerente
608
210k
Documentation Writing (for coders)
carmenintech
65
4.4k
Unsuck your backbone
ammeep
668
57k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
42
2.2k
Teambox: Starting and Learning
jrom
133
8.8k
The Invisible Side of Design
smashingmag
297
50k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
46
2.1k
Thoughts on Productivity
jonyablonski
67
4.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
505
140k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
A Philosophy of Restraint
colly
203
16k
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