Skip to content
Vol 1

Programming Basics

From your first HelloWorld to production-grade code — variables, control flow, OOP, collections, concurrency, I/O.

Prerequisites

Can open a terminal, type javac / python3. If you've never written a line of code, start from Vol 0.

Prior knowledge: Any programming language basics, or completed Vol 0

Volume positioning: The core foundation of this atlas. Whether your goal is backend, AI, or systems, the concepts here are your building blocks.

Completion milestone: Can independently write a multi-file project with proper OOP design, use collections and exception handling, understand basic concurrency concepts.

Primary language: Java (with Python/C++ comparison windows)

Pre-requisite Self-Test

If you're not sure whether to start from here, try these questions:

  • [ ] Can you define a variable and assign a value?
  • [ ] Can you write a loop (for/while)?
  • [ ] Can you write a function/method with parameters?
  • [ ] Do you know what a class and an object are?
  • [ ] Can you use an array or a list?

If you answered "yes" to all five, you can skim through the first few chapters. If you're unsure about three or more, start from ch01.

Chapter Overview

ChapterTopicTimeDifficulty
Ch01First Program30 min
Ch02Variables & Types40 min
Ch03Expressions & Operators40 min
Ch04Control Flow50 min
Ch05Methods & Stack60 min
Ch05+Recursion45 min
Ch06Arrays55 min
Ch07OOP: Classes & Objects65 min
Ch08OOP: Inheritance & Polymorphism45 min
Ch08+Lambda & Higher-Order Functions40 min
Ch09Strings & Utilities3-4 hrs
Ch10Core Collections5-7 hrs
Ch11Exception Handling4-6 hrs
Ch12Generics5-8 hrs
Ch13Annotations, Reflection & Metaprogramming70 min
Ch14Concurrency Basics90 min
Ch15I/O & Files5-7 hrs

What You'll Build

By the end of this volume, you will have built:

  • A library management system (ch07-08)
  • A logging analyzer (ch09-10)
  • A multi-threaded bank transfer simulator (ch11, ch14)
  • A file-processing pipeline (ch15)

This volume has 15+3 chapters, all complete

Built with VitePress | Software Systems Atlas