Programming Fundamentals Roadmap

Master the foundational concepts to begin the journey of becoming a professional software developer.

Back to Roadmap
Phase Main Topic Content & Learning Activities Objectives & Deliverables
1. Introduction Overview & Environment Setup
  • What is programming? History and types of programming languages.
  • Set up a development environment (IDE/Editor like VS Code, JDK/Python).
  • Write and run the first "Hello, World!" program.
  • Understand the most basic concepts of programming.
  • Successfully run the first program.
2. Basic Components Variables, Data Types & Operators
  • Learn about variables and how to name them.
  • Primitive data types: integer, float, character, boolean.
  • Operators: arithmetic, comparison, logical, assignment.
  • Store and manipulate different types of data.
  • Write simple computational expressions.
3. Control Structures Conditionals & Loops
  • Conditional statements: `if-else`, `switch-case`.
  • `for` loop: iterating a known number of times.
  • `while`, `do-while` loops: iterating based on a condition.
  • `break` and `continue` keywords.
  • Control the execution flow of the program.
  • Solve repetitive problems.
4. Basic Data Structures Arrays & Strings
  • One-dimensional arrays: declaration, access, traversal.
  • Working with strings and common string manipulation methods.
  • Introduction to multi-dimensional arrays.
  • Organize and manage a collection of data.
  • Process and manipulate text data.
5. Modular Programming Functions / Methods
  • Why use functions?
  • Defining and calling functions.
  • Parameters and return values.
  • Variable scope.
  • Write organized, readable, and reusable code.
  • Break down complex problems into simpler functions.
6. Intro to OOP Classes & Objects
  • Introduction to Object-Oriented Programming (OOP).
  • Concepts of Class and Object.
  • Attributes and Methods.
  • Introduction to properties: Encapsulation, Inheritance, Polymorphism.
  • Understand the object-oriented programming mindset.
  • Design and use simple classes.
7. Capstone Project Build a Small Application
  • Apply all learned knowledge to build a complete project.
  • Ideas: Calculator, simple contact management app, text-based game.
  • Focus on code organization and problem-solving.
  • Consolidate knowledge and problem-solving skills.
  • Have a small product to include in a portfolio.