This video discusses what you need to know to get the most out of this course.
- [Lecturer] Before we jump into the product, let's set some expectations. This course starts with the assumption that you have an API specification of some sort. It doesn't have to be perfect or even necessarily complete, but it has to have some thought put into it. If you need CRUD-like operations over HTTP, there are code generation tools out there. In this course, we'll apply a more deliberate approach to create end points and processes that accomplish the user's goals. If you need to develop your specification, my course Effective Design of RESTful APIs will be a perfect fit for you.
In terms of skills, I expect that you're a PHP developer with a basic understanding of the Composer Package Manager. You have to be comfortable with using other's libraries and try not to build everything yourself every single time. More importantly, make sure you're using a supported version of PHP. Most versions of PHP 5 are already unsupported for both development and even security patches. Therefore, you should upgrade to PHP 7 as soon as you can. Next, you need to be familiar with basic HTTP principles like Response codes and verbs.
I won't expect you to know the difference between a 418 or a 420, but knowing the common ones, like 200, 400, 401, 403 and even 404 is going to be important. Further, you should know the difference between an HTTP Post and a Get. If you need to get up to speed on any of that, check out my course Effective Design of RESTful APIs. Further, you should understand the basics of JSON creation and parsing. And finally, in terms of tools, I recommend that you get familiar with Postman or Runscope.
Both are great and have free and paid plans. The free plans are sufficient for this course. For your editor, you can use anything you like. I usually work in PhpStorm, but we'll be using Sublime Text for this course. If you'd like to learn about using Sublime Text, check out the course Up and Running with Sublime Text 2 by Kevin Yank.
This course begins with a simple application specification and builds it one step at a time. Each chapter includes a key concept, with examples from other public APIs, and then shows how to build it yourself with Slim. Learn about URL routing, validating input, and generating response codes and hypermedia payloads. Like any project, the first implementation may be a little messy but don't worry. The last chapter covers refactoring and what it takes to scale and support the API going forward.
- Understanding the project goals
- Setting up the database
- Adding authentication in Slim
- Using cross-framework and authentication middleware
- Creating a read-write API in Slim
- Uploading files via the API
- Adding file security
- Creating payloads and response codes in Slim
- Scaling your API