Build a Backend REST API with Python & Django - Advanced (Udemy.com)

Create an advanced REST API with Python, Django REST Framework and Docker using Test Driven Development (TDD)

Created by: Mark Winterbottom

Produced in 2021

icon
What you will learn

  • Setting up a local development server with Docker
  • Writing a Python project using Test Driven Development
  • Building a REST API with advanced features such as uploading and viewing images
  • Creating a backend that can be used a base for your future projects or MVP
  • Hands on experience applying best practice principles such as PEP-8 and unit tests
  • Configure Travis-CI to automate code checks

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 90 / 100

icon
Course Description

Welcome to the advanced course on how to Build a Backend REST API using Python, Django (2.
0), Django REST Framework (3.
9), Docker, Travis CI, Postgres and Test Driven Development!
Whether youre a freelance programmer, tech entrepreneur, or just starting out building backends - this course will help lay the foundation of your knowledge base and give you the tools to advance your skills with some of the most in-demand programming languages today. APIs are the unsung heroes behind the technologies that we all love and use religiously. One of the most critical components for any tech-based business is an API. So knowing how to create an API from start to finish is a vital skill to have as a developer. You cannot build a successful app without a backend REST API!
In this course Ill show you how to build an advanced API that handles creating and updating user profiles, changing passwords, creating objects, uploading images, filtering and searching objects, and more.
The best way to learn anything is to do it. So the practical application of the course -- the project that youll build along side me -- is an API. A recipe API, to be specific. You will learn how to build an advanced recipe API that allows you to upload and store some of your favourite recipes from photos and the web. Youll learn how to create objects i.
e. recipes with titles, price points, cooking times, ingredients and tags like comfort food, vegan or dessert. Think of it as a virtual recipe box. By the end of this course you will have built a fully functioning REST API that can handle:
User authenticationCreating objectsFiltering and sorting objectsUploading and viewing images Youll also learn, in detail how to:
Setup a project with Docker and Docker-ComposeConfigure Travis-CI to automatically run linting and unit testsWrite unit tests using the Django Test FrameworkApply best practice principles including Test Driven Development Handle uploading media files with DjangoCustomize the Django adminConfigure a Postgres databaseThis course has one singular focus: To teach you how to create an advanced API from start to finish using best practice principles and Test Driven Development. This course is NOT FOR YOU: If youre looking for a course to build an API, a front end, and deploymentIf youre looking to build 10 different apps in one courseIf you want to learn lots of different technologies and approaches to app development in general This is a hands-on course, with a bit of theory and lots of opportunities to test your knowledge. The content is challenging but rewarding. Ready for it? Lets dive in! **PLEASE NOTE: You cannot run Docker on Windows 10 Home edition. This is because Windows 10 Pro or Enterprise is required in order to use Hyper-V which Docker uses for virtualization. To take this course you have two options. These are covered in Lecture 6, which is free to preview before purchasing the course. Who this course is for:
Intermediate programmers who already have some understanding of Python and want to skill upDevelopers proficient in other languages but looking to add Python to their toolkit

icon
Instructor Details

Mark Winterbottom

Hey, Im Mark! Im an award-winningfull-stack software engineer with a passion for learning and teaching new technologies.
This passion started at 12-years-old when I taught myself how to make Windows batch scripts. Little did I know that hacking around on my computer back thenwould turn into a life-long passion for programming.
I went on to complete a degree in Computer Systems Networking at Nottingham Trent University, and worked in various developer roles at multinational corporations and startups.
I always believed that the final step to learning is teaching. And so I started a software development blog and consultancy firm called London App Developer. My work has been featured in the Daily Mail, Mashable, TechCrunch, the Huffington Post, the Mirror and Gizmodo, and over 30,000 developers read my programming tutorials every month.
My goal for teaching on Udemy is to help developers make a better living through their code. Whether thats by building new systems and tools to make the world a better place, or just to make their lives easier. If I can help them to increase their earning power, so they can better support their communities and loved ones, then even better. :)
My specialities are Python, Django, JavaScript, HTML5 and CSS3, but because Im full-stack, I can work my way around most programming languages and frameworks.
I live in London, England with my wife and business partner, Brooke.

icon
More courses by Mark Winterbottom

Build a Backend REST API with Python & Django - Beginner

$11.99

icon
More django courses

Mastering Django - AJAX, Class Based Views, Forms

$11.99

Django 3 - Full Stack Websites with Python Web Development

$11.99

The Ultimate Beginner's Guide to Django 1.11

$11.99

Build a Stock Market Web App With Python and Django

$11.99

Build a User Authentication Web App With Python and Django

$11.99

Django 2.2 & Python | The Ultimate Web Development Bootcamp

$11.99

icon
Reviews

4.5

300 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

By Bogdan Oloeriu on 11/21/2020

It does teach you Django
The goods:
- The course provides you with resource files
- The course is very fast-paced
- The instructor will help you troublesome your project and responds in about 1 day to all the questions.
Not so good
- The course does not teach you how to debug
- The course has no dedicated repository. The resource files they act as a diff. You only get the difference from the previous video.
- You only get from the course the happy path all the time. This normally is not a bad thing but you write to mutch code until you actually get to test something. Allot of things can go wrong before you run the tests. You are left on your own on how to troubleshoot the code.
- Some concepts are not explained more in detail. Example: What are migrations. How to reset the project?. How to rerun migrations?
I like the course and I definitely recommend it. If you are serious about learning Django then go for it.
It does teach you Django

By frank piro on 11/14/2020

This is a very thorough and structured approach to project set up, as opposed to committing and deploying at the end of the course. Working in this way makes more sense to me.

By Armando de la Torre Mothelet on 11/7/2020

Excelent course!
Clear, concise and extremely useful!

By Keshav Rathi on 11/7/2020

A very well paced course covering the basics as well. Really helped me a lot to understand the django-rest framework and design APIs.
Thanks and Cheers

By Sebastian Bonilla on 11/1/2020

This is really an awesome course. One of the best I've taken in Udemy. It involves two of the most current and needed aspects in the software development industry: Containerization and Test Driven Development. Mark's teaching is pretty straight forward and easy to follow plus he replies pretty quickly to any inquiries posted in the Questions section. Really really great course. I can't wait for a continuation with more advanced topics. Thanks Mark

By Deb Prasad Bhattrai on 10/26/2020

Great course for learning Django RestFramework with Docker.
Thanks Mark!

By David Francisco Garca Owen on 10/25/2020

I didn't feel the sense of progression as I felt on the beginner course, until I passed the half on the course, I could watch what I did.
Half of the course are creating and running the unit tests which could be important but the real new knowledge that I was looking for, I haven't found it until 3/4 of the course, taking out the unit tests the real new material (that is not on the beginners course) are only the filtering and adding image.
Maybe would have been better splitting this course into 2 different: one for unit testing and other for advanced django-rest techniques as continuation of the beginners course.

By Richard Dettinger on 10/22/2020

Very good course. I've learned a lot and it seems like the content is professional. There are a few places where I feel like I'm just doing things "because the instructor did" as opposed to knowing the full scope of why I did it. A little more background in places might help comprehension, but overall the course is sound an I have learned a lot.

By Mad Bro on 10/21/2020

- i didn't see any explanation why they chose dockerize dev environment over virtual environment
- lesson support for newer (latest version) [extra notes for new versions, instead of asking learners to use older versions used in the lesson]
- details on why using certain Base Classes could be useful

By Keshari Nandan on 10/18/2020

I would say the best course on the Django Rest Framework. Thank you, Mark.

By Mara Jos Medina on 10/12/2020

Estaba entusiasmada por el tema del curso ya que es lo que estoy necesitando aprender, pero debido a las enormes fallas del subtitulado (mala traduccin y desincronizacin) me esta costando mucho entender los temas, solo puedo seguir lo que hace el instructor pero no entiendo mucho porque lo hace.

By Patil shardul satish on 10/10/2020

Tutor Should tell us In the intro video that the course needs a windows pro edition or linux or virtual box