Ankit Ranjan

Deep Dives

In-depth technical explorations of mobile development, architecture patterns, and system design.

Master the Dart programming language from first principles to advanced features.

Async

Collections

Data Foundations

1

Bits and Transistors — The Foundation of Everything

Every Dart variable, every Flutter widget, every app you build rests on a foundation of transistors switching between 0 and 1. Let's understand how.

2

Booleans in Dart — Singletons, Null Safety, and Logical Operators

Two values, infinite uses. A deep dive into how Dart stores true and false, what bool? actually changes, and how logical operators really work.

3

Variables and Keywords — var, final, const, and Friends

How Dart stores and protects data. Understanding var, final, const, late, and dynamic unlocks safe, predictable code.

4

Integers in Dart — Smi, Mint, BigInt, and Typed Buffers

Every int in Dart hides a strategy. A deep dive into how Dart stores numbers, what boxing costs, and how typed buffers let you write code that flies.

5

Doubles in Dart — IEEE 754, Precision, and Special Values

How a few clever switches let us store fractions, why 0.1 + 0.2 isn't 0.3, and how to work with floating-point numbers without getting bitten.

6

Doubles in Dart, Part 2 — Memory and IEEE 754 Edge Cases

How Dart actually stores doubles in memory, why doubles are always boxed, and the edge cases — subnormals, catastrophic cancellation, the 53-bit cliff, and rounding modes.

7

Strings in Dart — UTF-16, Runes, and Grapheme Clusters

How Dart stores text, why string.length can lie, and what it takes to correctly count characters in a world of emoji and combining marks.

8

Collections in Dart — Lists, Sets, Maps, and Performance Trade-offs

Three collections, three problems. How Dart organises bulk data — from phone contacts to high-performance arrays — and how to pick the right tool for the job.

Primitive Computation

The Platform

Type System

1

Null Safety in Dart — The Billion-Dollar Mistake, Fixed

The most common runtime crash in programming history, and how Dart eliminates it at compile time. A deep dive into nullable types, null-aware operators, flow analysis, and the late keyword.

2

Generics in Dart — Type Safety Without the Repetition

Write code once, use it with any type. How Dart's generics give us flexible, reusable APIs while keeping the type checker happy.

3

Enhanced Enums in Dart — Fields, Methods, and Type-Safe Switching

Enums are more than named constants. Dart 2.17 lets enums hold data, implement interfaces, and provide methods — bringing the power of classes to the simplicity of enumeration.

4

Records in Dart — Lightweight, Immutable, and Structural

Dart 3 introduced records — anonymous, immutable data structures with built-in equality. They fill the gap between ad-hoc Maps and full-blown classes.

5

Patterns in Dart — Destructuring and Matching in One

Dart 3 introduced patterns — a way to destructure data and match its shape at the same time. They make switch statements powerful, if-case expressive, and variable declarations cleaner.

6

Sealed Classes in Dart — Exhaustive Switching and Algebraic Data Types

When the compiler knows all possible subtypes, it can prove your switch is complete. Sealed classes bring this superpower to Dart 3.

7

Class Modifiers in Dart — abstract, base, final, interface, sealed, and mixin

Dart 3 introduced powerful class modifiers that control how your classes can be extended, implemented, and instantiated. Learn when to use each one.

Search

Loading search...