← 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