Programming Fundamentals
Universal course: data types, conditionals, loops, functions, OOP, SOLID, data structures, algorithms and design patterns. Theory with cross-language examples, practice in Python.
What You'll Learn
This Course Includes
Curriculum
30 lessons · 34 lessons · 18 exercises
What is Programming
History, paradigms and how computers execute code
- What is Programming? +10 XP
- First Program +10 XP
Data Types
Numbers, strings, booleans, null and type conversion
- Primitive Data Types +10 XP
- Type Conversion +10 XP
Variables & Constants
Declaration, assignment, naming and constants
- Variables +10 XP
- Constants +10 XP
Operators
Arithmetic, comparison, logical and bitwise operators
- Arithmetic Operators +10 XP
- Comparison & Logic +10 XP
Input & Output
Console output, string formatting and data input
- Output & Formatting +10 XP
Conditionals
if/else, elif, ternary operator and match/switch
- if / else / elif +10 XP
Loops
for, while, break, continue and nested loops
- for & while +10 XP
Strings & Concatenation
String operations, slicing, methods and concatenation
- String Operations +10 XP
Arrays & Lists
Creation, indexing, methods and iterating over collections
- Lists +10 XP
Functions
Declaration, parameters, return values and pure functions
- Function Basics +10 XP
Scope
Local, global scope and closures
- Variable Scope +10 XP
Recursion
Base case, call stack and recursion examples
- Recursion +10 XP
Dictionaries & Hash Maps
Key-value collections, methods and iteration
- Dictionaries +10 XP
Sets & Tuples
Unique collections and immutable sequences
- Sets & Tuples +10 XP
Error Handling
try/except, error types and custom exceptions
- Error Handling +10 XP
File I/O
Reading, writing and context managers
- File I/O +10 XP
Modules & Packages
Import, code organization and standard library
- Modules & Packages +10 XP
OOP Basics: Classes & Objects
Classes, objects, attributes and methods
- Classes & Objects +10 XP
Encapsulation
Data hiding, access modifiers and properties
- Encapsulation +10 XP
Inheritance
Extending classes, super() and method overriding
- Inheritance +10 XP
Polymorphism
Overloading, duck typing and unified interface
- Polymorphism +10 XP
Abstraction
Abstract classes, interfaces and contracts
- Abstraction +10 XP
SOLID Principles
5 principles of object-oriented design
- SOLID Principles +10 XP
Stack & Queue
LIFO, FIFO data structures and their applications
- Stack & Queue +10 XP
Linked List
Nodes, pointers and comparison with arrays
- Linked List +10 XP
Sorting Algorithms
Bubble, Selection, Insertion, Quick Sort and Big O
- Sorting Algorithms +10 XP
Search Algorithms
Linear and binary search
- Search Algorithms +10 XP
Design Patterns
Singleton, Factory, Observer, Strategy
- Design Patterns +10 XP
Project: Task Manager
Console app with OOP, collections and error handling
- Project: Task Manager +10 XP
Cheat Sheet: Programming Fundamentals
Quick reference for all course topics
- Cheat Sheet +10 XP
Requirements
No prior knowledge required — we start from scratch
Course FAQ
Do I need programming experience?
How do lessons work?
How long does the course take?
Will I get a certificate?
Ready to start?
Sign up for free and start coding right now. Your first result in 5 minutes.
Start Learning