SlideShare a Scribd company logo
Submit Search
Upload
Login
Signup
Building APIs using Go
Report
Elton Minetto
Follow
Software developer, teacher, speaker, open source evangelist, tech leader at Code:Nation
Nov. 11, 2017
•
0 likes
•
1,015 views
1
of
16
Building APIs using Go
Nov. 11, 2017
•
0 likes
•
1,015 views
Download Now
Download to read offline
Report
Technology
How i use Go to develop APIs
Elton Minetto
Follow
Software developer, teacher, speaker, open source evangelist, tech leader at Code:Nation
Recommended
technicalresume
Alex Moaveni
248 views
•
1 slide
Take the next step with git
Karin Taliga
2K views
•
17 slides
Grunt
bigsilverbob
299 views
•
6 slides
sbt: the incredible machine
Vasil Remeniuk
875 views
•
14 slides
Git single branch
Carl Brown
1.3K views
•
49 slides
Git: Why And How to
lanhuonga3
677 views
•
24 slides
More Related Content
What's hot
How does Ansible's agentless architecture work?
jtyr
381 views
•
11 slides
Git - Workshop Disruptiva
Bruno Almeida
161 views
•
15 slides
Mobile applications in a new way with React Native
Eugene Zharkov
579 views
•
23 slides
SCM Gitlab Advanced
Aman Patial
732 views
•
12 slides
Git basics
Padmavathi Tiwari
69 views
•
10 slides
Jump into React-Native (Class 6)
Waqqas Jabbar
150 views
•
7 slides
What's hot
(16)
How does Ansible's agentless architecture work?
jtyr
•
381 views
Git - Workshop Disruptiva
Bruno Almeida
•
161 views
Mobile applications in a new way with React Native
Eugene Zharkov
•
579 views
SCM Gitlab Advanced
Aman Patial
•
732 views
Git basics
Padmavathi Tiwari
•
69 views
Jump into React-Native (Class 6)
Waqqas Jabbar
•
150 views
Index 2018 node.js what's next
Michael Dawson
•
400 views
Git & Github
Aman Lalpuria
•
162 views
Atomic Designは「マルチ」で真価を発揮する
Yukiya Nakagawa
•
2.4K views
Intro android
Daniyar Mukhanov
•
272 views
Angular.js for beginners
Basia Madej
•
617 views
Advanced Git
Sergiu-Ioan Ungur
•
1K views
Git Merge, Resets and Branches
Victor Pudelski
•
39 views
Intro to Gradle + How to get up to speed
Reid Baker
•
1.2K views
OSCONF - April 2021 - Run GitHub Actions Locally with nektos/act and Docker
Gaurav Gahlot
•
112 views
Git work flow
Kevin Chiu
•
843 views
Viewers also liked
Organizational control OKRs visão geral
Martino Bagini
1.5K views
•
17 slides
Building an Agile Culture with OKR
Felipe Castro
20.2K views
•
49 slides
[Webinar] Como a RockContent faz Marketing de Conteúdo
Rock Content
4.1K views
•
33 slides
Como desenvolver e atingir a missão da sua empresa utilizando a metodologia OKR?
Tiago de Faveri Giusti
1.6K views
•
44 slides
OKRs para Alinhamento e Direcionamento com Foco em Resultados
Fabio Lacerda
2.4K views
•
29 slides
OKR - Objective and Key Results
Rafaella Cavalca
2.1K views
•
36 slides
Viewers also liked
(19)
Organizational control OKRs visão geral
Martino Bagini
•
1.5K views
Building an Agile Culture with OKR
Felipe Castro
•
20.2K views
[Webinar] Como a RockContent faz Marketing de Conteúdo
Rock Content
•
4.1K views
Como desenvolver e atingir a missão da sua empresa utilizando a metodologia OKR?
Tiago de Faveri Giusti
•
1.6K views
OKRs para Alinhamento e Direcionamento com Foco em Resultados
Fabio Lacerda
•
2.4K views
OKR - Objective and Key Results
Rafaella Cavalca
•
2.1K views
Gestao Por Objectivos 3.0 (OKR)
GOOD Intelligence
•
3.8K views
Slides Scrum Gathering Rio 2016 (PT-BR)
Felipe Castro
•
2.6K views
Agile Brazil 2017 - Uma abordagem ágil aplicada em um PMO Corporativo
Guga Ferreira
•
744 views
Reveal.js
Hakim El Hattab
•
6M views
O que é OKR (Objectives and Key Results)?
Felipe Castro
•
8.2K views
OKRs - Objective Key Results - Visão Geral
Astella Investimentos
•
4.4K views
OKR - Objectives and Key Results (Portuguese)
Vinicius Siqueira
•
4K views
OKR - Objetivos e Resultados Chave
Carlos Freitas
•
5.2K views
Sobre OKR - Objectives and Key Results
Mário Pravato Junior
•
4.9K views
Introduction to Objectives and Key Results. The Basics & FAQ of OKRs.
Weekdone.com
•
611.9K views
The Executioner's Tale
Christina Wodtke
•
297.8K views
Guide to OKR (Objectives & Key Results)
Mustansir Husain
•
137.8K views
reveal.js 3.0.0
Hakim El Hattab
•
6.4M views
Similar to Building APIs using Go
Front End Development for Back End Developers - UberConf 2017
Matt Raible
1.4K views
•
109 slides
Git'in on Windows
Stacy Vicknair
1.1K views
•
22 slides
Griffon for the Enterprise
James Williams
1.8K views
•
41 slides
Git for Windows
Ovidiu Dimulescu
2.4K views
•
30 slides
EdTechJoker Spring 2020 - Lecture 2 - Git
Bryan Ollendyke
120 views
•
24 slides
Go Web Development
Cheng-Yi Yu
243 views
•
79 slides
Similar to Building APIs using Go
(20)
Front End Development for Back End Developers - UberConf 2017
Matt Raible
•
1.4K views
Git'in on Windows
Stacy Vicknair
•
1.1K views
Griffon for the Enterprise
James Williams
•
1.8K views
Git for Windows
Ovidiu Dimulescu
•
2.4K views
EdTechJoker Spring 2020 - Lecture 2 - Git
Bryan Ollendyke
•
120 views
Go Web Development
Cheng-Yi Yu
•
243 views
Working in Team using Git in Unity
Rifauddin Tsalitsy
•
864 views
Behat Workshop at WeLovePHP
Marcos Quesada
•
4K views
Code for Startup MVP (Ruby on Rails) Session 1
Henry S
•
5.9K views
Front End Development for Back End Developers - vJUG24 2017
Matt Raible
•
731 views
Grunt.js and Yeoman, Continous Integration
David Amend
•
30.8K views
Behave manners for ui testing pycon2019
Panos Christeas
•
27 views
Javascript, the GNOME way (JSConf EU 2011)
Igalia
•
2.1K views
Introduction to Eclipse Che / EclipseCon 2014
Florent BENOIT
•
1.4K views
GDG Cloud Taipei meetup #50 - Build go kit microservices at kubernetes with ...
KAI CHU CHUNG
•
183 views
Red Hat JBoss BRMS and BPMS Workbench and Rich Client Technology
Mark Proctor
•
3.8K views
GAE_20100112
Kosuke Matsuda
•
795 views
GDG Addis - An Introduction to Django and App Engine
Yared Ayalew
•
437 views
Grooscript greach
Jorge Franco Leza
•
2.2K views
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
Sadaaki HIRAI
•
3.6K views
More from Elton Minetto
Go e Microserviços - Nascidos um para o outro
Elton Minetto
1.8K views
•
37 slides
Object Calisthenics em Go
Elton Minetto
792 views
•
79 slides
Programar != desenvolver software (v2)
Elton Minetto
341 views
•
22 slides
Gerenciando uma startup no Github Projects
Elton Minetto
402 views
•
30 slides
Clean Architecture
Elton Minetto
893 views
•
37 slides
Serverless em Go
Elton Minetto
420 views
•
31 slides
More from Elton Minetto
(20)
Go e Microserviços - Nascidos um para o outro
Elton Minetto
•
1.8K views
Object Calisthenics em Go
Elton Minetto
•
792 views
Programar != desenvolver software (v2)
Elton Minetto
•
341 views
Gerenciando uma startup no Github Projects
Elton Minetto
•
402 views
Clean Architecture
Elton Minetto
•
893 views
Serverless em Go
Elton Minetto
•
420 views
JAMstack
Elton Minetto
•
517 views
Clean architecture em Go - v2
Elton Minetto
•
638 views
Programar != desenvolver software
Elton Minetto
•
1.5K views
Clean Architecture em PHP
Elton Minetto
•
3.3K views
Clean Architecture in Golang
Elton Minetto
•
1.4K views
A jornada do desenvolvedor
Elton Minetto
•
636 views
Product and Technology
Elton Minetto
•
542 views
Code:Nation Tech Stack
Elton Minetto
•
475 views
Modernizando projetos legados usando APIs
Elton Minetto
•
1K views
12 factor in the PHP world
Elton Minetto
•
1.4K views
Start you
Elton Minetto
•
309 views
O case da Compufácil e AWS
Elton Minetto
•
256 views
Introdução a Go
Elton Minetto
•
1.2K views
Como extrair métricas do Trello
Elton Minetto
•
2.9K views
Recently uploaded
10 reasons to choose Galaxy Tab S9 for work on the go
Samsung Business USA
95 views
•
13 slides
Dennis Wendland_The i4Trust Collaboration Programme.pptx
FIWARE
16 views
•
17 slides
Product Research Presentation-Maidy Veloso.pptx
MaidyVeloso
43 views
•
23 slides
Knowledge Graphs and Generative AI_GraphSummit Minneapolis Sept 20.pptx
Neo4j
49 views
•
31 slides
"Intro to Stateful Services or How to get 1 million RPS from a single node", ...
Fwdays
19 views
•
60 slides
Solving today’s Traffic Problems with Sustainable Ride Hailing Solution
On Demand Clone
44 views
•
9 slides
Recently uploaded
(20)
10 reasons to choose Galaxy Tab S9 for work on the go
Samsung Business USA
•
95 views
Dennis Wendland_The i4Trust Collaboration Programme.pptx
FIWARE
•
16 views
Product Research Presentation-Maidy Veloso.pptx
MaidyVeloso
•
43 views
Knowledge Graphs and Generative AI_GraphSummit Minneapolis Sept 20.pptx
Neo4j
•
49 views
"Intro to Stateful Services or How to get 1 million RPS from a single node", ...
Fwdays
•
19 views
Solving today’s Traffic Problems with Sustainable Ride Hailing Solution
On Demand Clone
•
44 views
Reward Innovation for long-term member satisfaction
Jiangwei Pan
•
46 views
Google cloud Study Jam 2023.pptx
GDSCNiT
•
489 views
Product Research Presentation-Maidy Veloso.pptx
MaidyVeloso
•
44 views
"The Intersection of architecture and implementation", Mark Richards
Fwdays
•
53 views
CamundaCon NYC 2023 Keynote - Shifting into overdrive with process orchestration
Bernd Ruecker
•
69 views
GDSC Cloud Lead Presentation.pptx
AbhinavNautiyal8
•
92 views
Product Research Presentation
DeahJadeArellano
•
34 views
"From Orchestration to Choreography and Back", Yevhen Bobrov
Fwdays
•
55 views
Webhook Testing Strategy
Dimpy Adhikary
•
99 views
"Stateful app as an efficient way to build dispatching for riders and drivers...
Fwdays
•
48 views
roomos_webinar_280923_v2.pptx
ThousandEyes
•
31 views
GDSC ZHCET Google Study Jams 23.pdf
AbhishekSingh313342
•
26 views
Need for Speed: Removing speed bumps in API Projects
Łukasz Chruściel
•
140 views
9C Monthly Newsletter - SEPT 2023
PublishingTeam
•
258 views
Building APIs using Go
1.
Building APIs using Go Elton Minetto @eminetto http://eltonminetto.net
2.
This is my
approach based on other projects...
3.
No frameworks!
4.
Stdlib + small
pieces
5.
• github.com/asaskevich/govalidator • github.com/codegangsta/negroni •
github.com/go-sql-driver/mysql • github.com/gorilla/mux • github.com/joho/godotenv • gopkg.in/gorp.v1 • github.com/rubenv/sql-migrate
6.
Project structure
7.
pkg user/ user.go (structs and
service interface) user_test.go (tests) mysql.go (implementation of the service interface) middleware/ Cors.go -> add cors headers isAuthenticated.go -> request authentication
8.
api handler/ user.go (define routes,
handler implementation) main.go (act as a dependency injection container)
9.
cmd
10.
bin
11.
config
12.
doc
13.
migrations
14.
vendor (e other files)
15.
Links https://github.com/eminetto/go-web-skel Desenvolvendo APIs em
Go usando Middlewares Definindo APIs com o API Blueprint Gerenciando dependências em Golang
16.
Contato http://twitter.com/eminetto http://eltonminetto.net http://asemanago.com.br (+550 assinantes) eminetto@gmail.com