Fundamental Python

Bab ini membahas tentang instalasi, pengenalan dan fundamental Python.

Pengenalan

  1. Sejarah dan Evolusi Python
  2. Mengapa Belajar Python
  3. Menyiapkan Text Editor dan IDE untuk Python
  4. Instalasi Python di Windows, macOS, dan Linux
  5. Mengenal Virtual Environment Python

Syntax Dasar

  1. Hello World di Python
  2. Variabel dan Tipe Data Dasar Python
  3. String dan Manipulasi String
  4. List, Tuple, dan Dictionary
  5. Set dan Operasi Set
  6. Operator dalam Python
  7. Percabangan (if, elif, else)
  8. Perulangan dengan for dan while
  9. Break, Continue, dan Pass
  10. Function dan Parameter Function

Struktur Data dan Algoritma Dasar

  1. List Comprehension
  2. Dictionary Comprehension
  3. Manipulasi File dan I/O
  4. Exception Handling dengan Try-Except
  5. Module dan Package di Python
  6. Bekerja dengan Date dan Time
  7. Regular Expression di Python

Advanced Python

Bab ini membahas konsep-konsep Python tingkat lanjut.

Object-Oriented Programming

  1. Class dan Object di Python
  2. Constructor dan Destructor
  3. Inheritance dan Polymorphism
  4. Encapsulation dan Abstraction
  5. Method Overriding dan Overloading
  6. Static Method dan Class Method
  7. Property dan Decorator

Functional Programming

  1. Lambda Function
  2. Higher-Order Functions
  3. Map, Filter, dan Reduce
  4. Generator dan Iterator
  5. Closure dan Decorator Lanjutan
  6. Immutability dan Pure Functions

Advanced Concepts

  1. Threading dan Multiprocessing
  2. Asynchronous Programming dengan Asyncio
  3. Context Manager dan with Statement
  4. Metaclasses dan Magic Methods
  5. Memoization dan Caching
  6. Performance Optimization di Python
  7. Type Hinting dan Mypy

Web Development dengan Python

Bab ini membahas pengembangan web menggunakan Python.

Flask Framework

  1. Pengenalan Flask dan Instalasi
  2. Routing dan URL Building
  3. Template dengan Jinja2
  4. Form Handling dan Validasi
  5. Database Integration dengan SQLAlchemy
  6. Authentication dan Authorization
  7. RESTful API dengan Flask-RESTful
  8. Deployment Flask Application

FastAPI Framework

  1. Pengenalan FastAPI dan Keunggulannya
  2. Setup Project dan Dependency Injection
  3. Path Operation dan Query Parameters
  4. Request Body dan Pydantic Models
  5. Response Models dan Status Codes
  6. Middleware dan CORS
  7. Async Database Integration dengan SQLAlchemy
  8. OAuth2 dan JWT Authentication
  9. Background Tasks dan WebSockets
  10. Testing dan Deployment FastAPI Application

Django Framework

  1. Pengenalan Django dan Konsep MVT
  2. Django Project dan App Structure
  3. Model dan Database Migration
  4. Django Admin Interface
  5. Views dan URL Patterns
  6. Template System di Django
  7. Form Processing dan Validation
  8. Authentication System
  9. Django REST Framework
  10. Testing dan Deployment Django App

REST API dengan Python

Bab ini membahas pembuatan dan penggunaan REST API dengan Python.

Dasar REST API

  1. Konsep REST API dan HTTP Methods
  2. Status Code dan Response Format
  3. API Authentication dan Security
  4. Rate Limiting dan Throttling

Membangun REST API

  1. REST API dengan Flask
  2. REST API dengan FastAPI
  3. Serialisasi dan Deserialisasi Data
  4. Dokumentasi API dengan Swagger/OpenAPI
  5. Versioning API
  6. Testing API Endpoints

Mengkonsumsi REST API

  1. HTTP Request dengan Requests Library
  2. Asynchronous API Calls dengan aiohttp
  3. Websocket dengan Python
  4. GraphQL dengan Python

Data Science dengan Python

Bab ini membahas penggunaan Python untuk Data Science.

Tools dan Library Dasar

  1. NumPy untuk Komputasi Numerik
  2. Pandas untuk Manipulasi Data
  3. Matplotlib untuk Visualisasi Dasar
  4. Jupyter Notebook untuk Data Analysis

Visualisasi Data

  1. Visualisasi Lanjutan dengan Seaborn
  2. Interactive Visualization dengan Plotly
  3. Geographic Visualization dengan Folium
  4. Dashboard dengan Dash

Machine Learning

  1. Scikit-learn untuk Machine Learning
  2. Supervised Learning: Classification
  3. Supervised Learning: Regression
  4. Unsupervised Learning: Clustering
  5. Model Evaluation dan Validation
  6. Feature Engineering dan Selection
  7. Hyperparameter Tuning

Deep Learning

  1. Pengenalan Neural Networks
  2. Deep Learning dengan TensorFlow dan Keras
  3. Computer Vision dengan OpenCV
  4. Natural Language Processing dengan NLTK
  5. Transfer Learning

Automation dan Scripting

Bab ini membahas penggunaan Python untuk otomasi dan scripting.

  1. Automasi Task dengan Python
  2. Web Scraping dengan BeautifulSoup dan Scrapy
  3. Working dengan Excel menggunakan Pandas dan Openpyxl
  4. PDF Processing dengan PyPDF2
  5. Automasi Email dan SMS
  6. GUI Development dengan Tkinter
  7. Desktop Application dengan PyQt
  8. Command Line Interface dengan Click

Testing dan Deployment

Bab ini membahas cara testing dan deployment aplikasi Python.

  1. Unit Testing dengan Unittest dan Pytest
  2. Integration dan System Testing
  3. Test Driven Development
  4. Continuous Integration dan GitHub Actions
  5. Containerization dengan Docker
  6. Deployment di Cloud: AWS, GCP, Azure
  7. Serverless Python Functions
  8. Monitoring dan Logging

Project-Based Learning

Bab ini berisi tutorial berbasis project untuk mengaplikasikan pengetahuan Python.

  1. Building a Personal Blog with Django
  2. Creating a RESTful API for a Todo App
  3. Developing a Weather App
  4. Building a Portfolio Website
  5. Data Analysis Project: COVID-19 Dataset
  6. Machine Learning Project: Predicting House Prices
  7. Automation Project: Social Media Bot
  8. Full Stack Project: E-commerce Website