Introduction to Dart
Basic dart- Data types, Variables, Constants, Operators, user inputs/Outputs, Comments
Control flow- Conditional, Loops, Exceptional handling
Function/Methods- Basics, parameters, anonymous, returning values, high order function, Exception handling
OOPs- Class & Objects, Constructors, Inheritance, Interference & abstractor, Mixins, this keyword, getter & setter, static members
Collection & DSA- Lists (Arrays), Sets, Packages, Queues, Map, Iterables, JSON Data
Asynchronous programming- Features, Async & Await, Streams, Error handling
Libraries & Package
Testing & Debugging
Advance Dart
flutter
Dart for web & CLI
Project & Practicals Implementation
Overview of Dart
Features and Advantages of Dart
Setting Up Dart Development Environment (Dart SDK, IDEs, etc.)
Writing and Running Your First Dart Program
Understanding Dart's Role in Flutter
Data Types and Variables
Numbers, Strings, Booleans, Lists, Maps, Sets
Constants (const) and Final Variables (final)
Arithmetic, Relational, Logical, Bitwise, Assignment
Comments and Code Documentation
if, else, else if
Ternary Operators
switch and case
Nested if_else
Exception Handling
try, catch, finally
Throwing Custom Exceptions
Basics- (inside & Outside) Defining and Calling
Function Parameters/ Arguments (Positional, Named)
Default Values
Optional-Positional and Named Parameters
Anonymous Functions and Lambda Expressions
Returning Values
Higher-Order Functions
Closures
Classes and Objects
Constructors (Default, Parameterized- Named, and Redirecting)
Methods (Static, Non-Static)
Inheritance (Single, Multiple, Multilevel)
Extending Classes
Overriding Methods
Abstraction- Abstract Classes and Interfaces
Polymorphism (Method Overloading, Method Overriding)
Mixins
this Keyword
Getters and Setters
Static Members
Encapsulation
1. Lists (Arrays)
2. Maps
3. Sets
4. Iterables
5. JSON Data
1. Try-Catch Blocks
2. Exception Types
3. Throwing Exceptions
4. Catching Exceptions
5. Debugging Techniques
Lists
Fixed-length and Growable Lists
Common List Methods (add, remove, sort, etc.)
Sets
Packages
Queues
Maps
Key-Value Pairs
Iterating over Maps
Iterables and Generators
sync* and async*
1. Futures
2. Streams
3. Async/Await
4. Concurrency
5. Isolates
Futures
Creating and Handling Futures
Chaining Futures
Async and Await
Streams
Single Subscription and Broadcast Streams
Listening to Streams
Error Handling in Asynchronous Code
Core Libraries (dart:core, dart:async, dart:io, dart:math, dart:convert,dart:http,dart:io)
Working with External Packages (Pub Package Manager)
Writing Your Own Package
Writing Unit Tests
Mocking in Dart
Debugging Dart Code
Using the dart:developer Library
1. Flutter Framework
2. AngularDart Framework
3. Dart Web Framework
4. Dart ORM (Object-Relational Mapping)
1. Type Safety
2. Null Safety
3. Generics
4. Metadata
5. Reflection
Null Safety
Nullable and Non-Nullable Types
Null Assertion (!) and Null-aware Operators (?., ??, ??=)
Extensions
Generics
Type Inference
var, dynamic, and Object
Enumerations (enum)
Metadata and Annotations
Introduction to Flutter Widgets
Writing UI Logic with Dart
State Management in Flutter with Dart
Navigating Between Screens (Routes)
Building Web Applications with Dart
Writing Command-Line Applications in Dart
Building Small Console Applications
Creating a Library or Package
Integrating Dart with APIs
Flutter Integration Mini Projects