Skip to content

PawelGozdz/python-for-node-developers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Course info

Info

Goals

Course is designed to make TS developer grasp an idea of a new language and start working asap.

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-Node-developers course Sections

**Section 1:

Section 2: 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 3: Project and Dependency Management

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

Section 4: Module System and Scopecd

  • 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 5: 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 6: Functions and Parameters

  • [Function Definitions Python vs TypeScript](Section-1/S5L1 Function Definitions Python vs TypeScript.md)
  • Default and named parameters (key difference vs JS)
  • Decorators vs Higher Order Functions
  • Type annotations in functions

Section 7: Data Collections

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

Section 8: Advanced Collection Operations

  • Python Specialized Collections: deque, heapq, bisect

Section 9: OOP Basics

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

Section 10: Advanced OOP

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

Section 11: Python Magic Methods

  • Magic methods

Section 12: Error Handling and Context

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

Section 13: Functional Programming

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

Section 14: 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