Backend API Starter Guide
Key concepts and references for building RESTful APIs in common stacks.
RESTful API
- Understand HTTP and REST design
- References:
- Ruanyifeng: Understanding RESTful Architecture
- Ruanyifeng: RESTful API Design Guide
- RESTful API resources collection
Dependency Injection (DI)
- Intro to DI and software architecture patterns
Java
- JDK 1.8+
- IDE: IntelliJ IDEA
- DB: MySQL 5.7+, cache: Redis
- Data layer: MyBatis (or JPA), build: Maven/Gradle
- Framework: Spring Boot + Spring MVC
- Goal: build CRUD Web APIs with Spring Boot
C# (.NET)
- .NET: .NET Core 2.x
- IDE: VS Code + SDK (or Visual Studio)
- DB: MySQL 5.7+, cache: Redis
- Data layer: Dapper
- Framework: ASP.NET Core MVC with built‑in DI
- Goal: build CRUD Web APIs with ASP.NET Core
Python
- Python 3.6+
- IDE: VS Code (+ Python extension) or PyCharm
- DB: MySQL 5.7+, cache: Redis
- ORM: SQLAlchemy
- Framework: Flask
- Goal: build CRUD Web APIs with Flask
PHP
- PHP 7.1+
- IDE: VS Code (+ PHP Debug) + nginx + php‑fpm
- DB: MySQL 5.7+, cache: Redis
- Framework: Laravel; build: Composer
- Goal: build CRUD Web APIs with Laravel
Node.js
- Node.js 9+
- IDE: VS Code
- DB: MySQL 5.7+, cache: Redis
- ORM: Sequelize (or orm2)
- Build: npm
- Framework: Express
- Goal: build CRUD Web APIs with Express