/ucb-info253-lecture

Official Repo for INFO 153B/253B for Spring'23

Primary LanguagePython

INFO 153B/253B - Backend-Web Architecture

This repository serves as the official code base for INFO 153B/253B for Spring'23. This repo will house all code from friday labs and also code snippets used in monday lectures!

## Intro to Python Programming

Topics we covered:

  1. Fundamentals of computers and memory storage
  2. Basics about Python as a programming language
  3. Variables and Operators
  4. Conditionals
  5. Loops and Iterators
  6. Functions
  7. Classes and Objects in Python

## Tooling - Understanding Github and Postman

Topics we covered:

  1. Basics of Github - Repositories, branching, staging, commits, fetch, push, pull
  2. Working together on Github - Merge conflics

## Intro to Flask - Understanding the basics of Flask and setting up your first server

Topics we covered:

  1. DNS and how it works?
  2. What is a webserver?
  3. What do you even mean when you say things like HTTP and APIs?
  4. Basics of Flask
    1. Syntax and Decorators
    2. Running your server
    3. Different API Methods - GET, PUT, POST and DELETE
    4. Getting data into your API (I) - Overview of URL Params, Query Params, API Body
    5. Using URL Params to get input into your API

## Diving Deeper into Flask

Topics we covered:

  1. Deep dive into the POST HTTP method
  2. Getting data using different techniques
    1. Query Params
    2. Request Body
    3. Form Data
    4. File Uploads
  3. Response objects in Flask
  4. API Error codes

## Introduction to Containers and Docker

Topics we covered:

  1. Virtualization and Virtual Machines
  2. Containers
  3. Docker
  4. Running Flask via Docker
  5. Docker Compose