Skip to content

PawelGozdz/python-for-node-developers

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Course info

Lectures are using markdown with some additional plugins for Obsidian ("dataview") in case if we decide to link files one to the other.

Python-for-TS-developers course Sections

Section 1: Python Ecosystem Basics for TS Developers

  • Python version differences (2 vs 3)
  • Python installation across different systems (comparison with Node.js)
  • Python REPL vs Node.js REPL
  • Running scripts (python script.py vs node script.js)
  • PEP 8 and naming conventions (vs JS/TS conventions)

Section 2: Project and Dependency Management

  • Python vs Node.js project structure
  • Environment Isolation (venv vs nvm)
  • Package Management (pip vs npm/yarn)
  • Jupyter Notebooks

Section 3: Module System and Scope

  • import/export in Python vs ES modules
  • Module paths and PYTHONPATH vs NODE_PATH
  • Namespaces in Python vs scope in JS
  • _init_.py and its role

Section 4: Basic Syntax and Types

  • Dynamic typing in Python vs JS
  • Type hints in Python vs TypeScript
  • Basic types (str, int, float, bool)
  • None vs null/undefined
  • Comparison operators (== vs is)
  • Logical operators (and/or vs &&/||)

Section 5: Functions and Parameters

  • Function definition (def vs function/arrow functions)
  • Default and named parameters (key difference vs JS)
  • *args and **kwargs vs rest/spread operator
  • Decorators vs Higher Order Functions
  • Type annotations in functions

Section 6: Data Collections

  • list vs Array (fundamental differences)
  • tuple vs readonly Array
  • set vs Set
  • dict vs Object/Map
  • Immutability in Python vs JS

Section 7: Advanced Collection Operations

  • Python Specialized Collections: deque, heapq, bisect

Section 8: OOP Basics

  • Class definition in Python vs JS/TS
  • Constructor (init vs constructor)
  • self vs this
  • Properties and methods
  • Encapsulation in Python

Section 9: Advanced OOP

  • Multiple inheritance (not available in TS)
  • super() in Python vs JS
  • Abstract Base Classes vs Interfaces
  • Dataclasses

Section 10: Python Magic Methods

  • Magic methods

Section 11: Error Handling and Context

  • Exception handling (try/except vs try/catch)
  • Exception hierarchy
  • finally and else
  • Context managers and with
  • @contextmanager

Section 12: Functional Programming

  • Lambda expressions vs arrow functions
  • map, filter, reduce vs Array methods
  • Partial functions and currying
  • functools module
  • Pure functions and immutability

Section 13: Asynchronous Programming

  • async/await syntax comparison
  • Event loops in Python vs JS
  • asyncio basics
  • Asynchronous patterns
  • Differences in asynchronicity approach

About

Documentation for online course

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published