Skip to content

Bayt-al-Hikmah/Dart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dart Introduction Course

Welcome to the Dart Introduction Course repository by Bayt-al-Hikmah! This collection of lecture notes is designed for beginners and intermediate learners aiming to master Dart programming fundamentals. Whether you're new to coding or refreshing your skills, these notes provide structured, step-by-step guidance through core concepts.

Bayt-al-Hikmah (House of Wisdom) is dedicated to preserving and disseminating knowledge, inspired by the historic intellectual center of the Islamic Golden Age. These lectures emphasize clear explanations, practical examples, and hands-on exercises to build a strong foundation in the Dart language.

Prerequisites

  • Basic familiarity with computers and file management.

  • No prior programming experience required (though helpful).

  • Dart SDK and an IDE like Visual Studio Code with the Dart extension.

Setup Instructions

  1. Install the Dart SDK:

    • Download from dart.dev.

    • Follow the instructions for your OS (Windows, macOS, or Linux).

  2. Install an editor/IDE: Visual Studio Code with the Dart extension is recommended for beginners.

  3. Test your setup: Run a "Hello, World!" program (example in Lecture 1) using:

    dart run hello_world.dart

Course Overview

This 5-lecture series covers essential Dart topics progressively. Each lecture includes:

  • Theoretical explanations.

  • Code examples and snippets.

  • Exercises for practice.

  • References for further reading.

Lecture Topic Key Concepts Covered
Lecture 1 Variables and Input-Output Variables, data types (int, double, String, etc.), user input/output with stdin/stdout.
Lecture 2 Control Flow Logical/comparison operators, if-else, switch-case, for/while/do-while loops.
Lecture 3 Functional Programming, Libraries, and Packages Functions, functional programming concepts, importing libraries and packages.
Lecture 4 Object-Oriented Programming and Error Handling Classes, objects, inheritance, try-catch, error handling.
Lecture 5 File Handling and Asynchronous Programming File I/O, async/await, Futures, working with asynchronous operations.

Practice and Projects

  • Exercises: Each lecture ends with coding challenges. Solutions can be added in a separate /exercises folder.

  • Mini-Project Ideas:

    • Lecture 2: Simple calculator app using control flow.

    • Lecture 3: Task manager using functions and packages.

    • Lecture 5: File-based to-do list with asynchronous file handling.

  • Resources: dart.dev for documentation, pub.dev for packages, and Exercism for problems.

Contributing

We welcome contributions! Help expand these notes with:

  • Corrections or clarifications.

  • Additional examples or exercises.

  • Translations or adaptations.

License

This project is licensed under the MIT License – feel free to use, modify, and distribute.

Contact

Questions? Open an issue or reach out via:

Happy coding! 🚀 Let's build wisdom through code.

About

Introduction to Dart Programming

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages