← Languages

Ada

Full course · 21 lessons

Ada is a high-integrity, statically-typed programming language designed for safety-critical and real-time systems. It is used extensively in aerospace, defense, railway, and medical systems where reliability is paramount.

Knowledge Course
01

Getting Started with Ada

GNAT toolchain, hello world, and the Ada model.

45 min
02

Types and Subtypes

Ada's strong typing, ranges, and derived types.

45 min
03

Variables and Constants

Object declaration, initialization, and constants.

45 min
04

Operators and Expressions

Arithmetic, relational, and logical operators.

45 min
05

Control Flow: if, case, loops

Conditionals, case statements, and loop forms.

45 min
06

Strings

Fixed, bounded, and unbounded strings.

45 min
07

Arrays

Indexed and multi-dimensional arrays with bounds.

45 min
08

Records and Variants

Record types, discriminants, and variant records.

45 min
09

Procedures and Functions

Subprograms, parameters, and modes.

45 min
10

Exceptions

Raise, handle, and propagate exceptions.

45 min
11

Packages and Visibility

Spec/body separation and encapsulation.

45 min
12

Generics

Generic subprograms and packages for reuse.

45 min
13

Access Types and Pointers

Pointers, allocation, and controlled types.

45 min
14

Tagged Types and OOP

Object-oriented programming in Ada.

45 min
15

File Input/Output

Text and binary file handling.

45 min
16

Tasking and Concurrency

Ada's native tasking model.

60 min
17

Command-Line Interfaces

Parse arguments and build tools.

45 min
18

Pragmas and Preconditions

Compiler directives and contracts.

45 min
19

SPARK and Formal Methods

High-integrity subset with proof tools.

60 min
20

Embedded and Real-Time Ada

Ravenscar profile and low-level control.

60 min
21

Ecosystem and Next Steps

Alire, libraries, and production Ada.

45 min
Curated Resources