REST API's RESTFul from 0 to AWS with Spring Boot and Docker
What you'll learn
- 10% Theory and 90% Practice
- Developing a RESTFul API from absolute 0
- Best practices for developing API's
- Understand the theoretical foundation of REST
- How to work with Postman
- How to make RESTful requests using Postman
- Understand the RESTful Maturity Model
- Top REST Verbs
- Using parameters via query, path, header, and body
- API Pagination
- API Versioning
- Understand Media Types and Content Negotiation
- Upload files in your API
- Make download files available in your API
- You will learn in practice HATEOAS
- Document an API with Swagger
- SQL and Migrations Basics
- REST Authentication Techniques and Security with JWT
- How to use some design patterns
- Split application architecture into different layers
- Leverage AWS core services like RDS, EC2, IAM User and ECS
- Continuous Integration and Deploy involving Docker, Github, Travis CI, and Amazon AWS
- Deploy your API on AWS Cloud
- BONUS - Docker Basics
- BONUS - Docker Compose Basics
- BONUS - How to deploy the project in the cloud
- Basic concepts of Object Orientation
- Basic knowledge of SQL and any relational database
- Basic concepts of Java
- Basic concepts of HTTP Request and Response
**** Come specialize in API development with the revolutionary Spring Boot framework that is a real fever today! *****
TIP FOR BRAZILIANS: Use a pesquisa da Udemy e se inscreva na versão em português do curso
This course teaches the core fundamentals of APIs REST and RESTful Webservices both in theory (10%) and in practice (90%). This knowledge will be applied to the implementation of a RESTful API with SpringBoot 2.x and Java. We will start with a simple application that will gradually advance to more complex scenarios. We will cover HTTP notions, verbs/methods, parameter types, pagination, file upload and download, versioning, HATEOAS, Swagger, authentication, and security with JWT and Spring Security, etc.
We will add Docker support and deploy our API on an Amazon AWS EC2 instance manually. And to close the course with a golden key, we will implement a continuous integration pipeline involving Docker, Github, Travis CI, and an ECS Cluster on Amazon AWS. It will be amazing you simply commit your code and push to Github, Travis CI builds Docker Images and deploys it on Amazon "Automagically".
Finally, the main objective of the course is to serve as a starting point from which students can expand their knowledge of the subject and "walk with their legs."
Who this course is for:
- Early career developers who need to learn how to develop a REST/RESFul API from scratch
- Software developers and engineers
- For back-end developers with knowledge of ASP NET, Rails, Django, Node, etc. and want to learn how to do what they know but with other technology
- Front end developers who want to become full-stack
- Anyone who has tried other REST/RESTful Webservices tutorials and found that they were very slow, outdated, and boring!
See my biography in English below.
Eu sou Leandro Costa, analista de sistemas e desenvolvedor, bacharel em Sistemas de Informação com pós-graduação em Engenharia de Software. Trabalho a mais de 11 anos como desenvolvedor back-end e sou um entusiasta apaixonado pela área. Em todos esses anos eu errei bastante, aprendi muito com esses erros. Por isso sei o que você precisa aprender e com o que não deve perder seu tempo para ter uma carreira bem-sucedida na área de tecnologia.
Atualmente tenho como objetivo ajudar você através de treinamentos eficientes e práticos na área de desenvolvimento, Agile, TDD, Integração Contínua, Docker, Clean Code e API's (SOA), especialmente RESTful API's. Sou apaixonado por transmitir conhecimentos e contribuir para que as pessoas se desenvolvam e alcancem o melhor de si.
E me sinto muito gratificado em fazer parte da jornada de aprendizado da vida de muitos alunos e por essa razão eu estou empenhando em dar o meu melhor entregando conteúdos cada vez melhores e mais relevantes.
I am Leandro Costa, systems analyst and developer, Bachelor of Information Systems with a postgraduate degree in Software Engineering. I've been working for more than eight years as a back-end developer, and I'm a passionate enthusiast for the area. In all these years, I made a lot of mistakes and learned a lot from these mistakes. That's why I know exactly what you need to learn and what you shouldn't waste your time on to have a successful career in the field of technology.
Currently, I am collaborating in the learning of people who seek knowledge through efficient and practical training in the area of development, Agile, TDD, Continuous Integration, Docker, Clean Code, and APIs (SOA), especially RESTfull APIs. I am passionate about imparting knowledge and helping people to develop and achieve the best of themselves.
And I feel very gratified to be part of the learning journey of many students' lives, and for that reason, I am striving to give my best by delivering better and more relevant content.