Skip to content

Latest commit

 

History

History
91 lines (72 loc) · 2.02 KB

README.md

File metadata and controls

91 lines (72 loc) · 2.02 KB

Lecture 15 - [Backend 2] Introduction to Backend Development

Topics to learn

Must Needed

  • API Design
    • REST API
    • GraphQL
    • gRPC
    • SOAP (less than 1%)

    • Web Socket (really tough to scale)

    • Message Broker (Not beginner friendly concept)

  • API Security
    • JWT Token
    • Refresh Token
    • OAuth2

    • SAML

    • Identity Providers (Cognito, Auth0, Firebase, Okta)

    • Role Based Authorization
  • API Testing
    • Unit Testing
    • Acceptance Testing
    • Load Testing
  • API Documentation
    • Swagger
    • Postman

To learn above 4 topics we need to learn some another topics:

  • Database
    • NoSQL
      • MongoDB
      • AWS DynamoDB
    • SQL
      • PostgreSQL
      • MySQL
      • MSSQL / Oracle
    • In Memory*
      • Redis*
      • Mem Cached
    • Graph Database
      • Neo4j
  • Linux Server
  • Cloud Computing
  • DevOps

Server Application Responsibilities

  • Listen Request
    • Always Same
  • Process
    • Algorithm
    • Data Structure
    • Database
    • Problem Solving
    • CRUD
  • Response
    • Always Same

HTTP (Hypertext Transfer Protocol)

  • GET - want to read data from server
  • POST - create new data
  • PUT/PATCH - update existing content
  • DELETE - delete data from database

Routing Pattern

  • GET Everything - /books
  • Get one book - /books/bookId
  • POST new book - /books
  • Update Book - /books/bookId
  • Delete Book - /books/bookId

Pipeline

REQUEST -> MIDDLEWARE[logger, body parser, file parser, user ip, block ip, authentication, authorization, validation] -> CONTROLLER (Business Logic) -> MIDDLEWARE[error handler] -> RESPONSE

References

Tasks

Complete the playlist Express Js Crash Course In Bangla

Next week planning

  • We will create our first working REST API.