💻
Gürkan Fikret Günak - Personal
  • 👨‍💻About me
    • 🌊Journey
  • 🎯Dart
    • 🔬What's Dart Algorithms?
    • 🔬What's Dart Structures?
    • 🧮#01 Algorithm Guidance: Implementing Calculation Algorithms
    • 🧮#02 Algorithm Guidance: Two Sum
  • 📄Guidances
    • Flutter MVVM Guidance
    • Dart Programming Guidance
    • E-Commerce Use Cases
    • E-Commerce Applications
    • Flutter App Color Palette Usage Guidance
    • Flutter Custom AppBar Usage Guidance
    • Flutter Network Image Cache Usage Guidance
    • Flutter Project Bitbucket SSH Guidance
    • Flutter Project GitHub SSH Guidance
    • Flutter SliverAppBar Usage Guidance
    • The Importance of BuildContext in Flutter Tests Guidance
    • Internship Basic Guidance v0.1.0
    • The Importance of Type Casting in Flutter
    • Effective and Detailed Pull Request Guide
    • Flutter Naming Conventions Guidance
    • Flutter Widget Guidance
    • Semantic Commit Guidance
    • Being Part of a Mobile Software Team and Working on a Shared Architecture
    • Understanding Deep Links for Any Development Platform
    • The Journey of a Developer: Stories of Becoming Junior, Middle, and Senior Developer
    • Becoming a Team Leader: Growing in Sync with Your Team
    • Why IP Changes Are Important for Mobile Applications in Flutter
    • Why Your Growing Mobile Team Needs CI/CD and How to Build a Winning Strategy
    • Dart in 2024: 20 Features You Need to Know With Code Examples and Scenarios
    • Remote Theme Management with API (JSON): Implementing a Helper in Flutter SDK
    • Understanding and Implementing Force Upgrade in Your Flutter Project
    • Life Lessons from the Bald Eagle: A Metaphor for Growth, Change, and Leadership
    • The Beauty of Imperfection: Why Today Doesn’t Need to Be Perfect
    • # The Reverse Curve of Productivity: When Social Cohesion in Software Teams Starts to Hurt **How str
    • 📱 Mobil Uygulamalarda GraphQL Tercihi: Bakım ve Maliyet Etkiler
    • 📉 Türkiye’de Yazılım Projelerinde Süreç Yönetimi ve Ekonomik Kayıp: Bir Bekâ Sorunu mu?
  • 📹VIDEOS
    • Introduction to Flutter Boilerplate! ( Turkish )
    • Flutter APIs effective using ( English )
    • Understand to SDK ( English )
  • Links
    • 💼 | Linkedin
    • 🆇 | x.com
    • 📧 | Mail me
Powered by GitBook
On this page
  1. Dart

What's Dart Structures?

Welcome to the magical realm of Dart Structures, a valuable resource guiding developers through the rich lands of the Dart programming language! As you weave your spells with Dart, these structures are your runes, shaping your magic as you craft mobile, web, and desktop applications with the Flutter framework.

On this journey of discovery, we will uncover the secrets of structures like Lists, Maps, Sets, Queues, and Stacks. Showcasing the power of each with scenarios and sample codes, we'll delve into the depths of the Dart language.

  1. Lists: Your dynamic and versatile allies, ready to be summoned in various forms.

    • Scenario: Gathering a collection of magical ingredients.

    • Description: Lists are your potion bottles, holding ingredients in a specific order, indexed, sortable, and transformable as needed.

    • Sample Code:

      List<String> ingredients = ['newt eyes', 'bat wings', 'unicorn horns'];
      print('Ingredients: $ingredients');
  2. Maps: Ancient tomes of key-value pairs, mapping the mystical to the mundane.

    • Scenario: Cataloging a library of mysterious books.

    • Description: Maps are your library index, associating each book (value) with a unique identifier (key) for quick access.

    • Sample Code:

      Map<String, String> library = {
        'A01': 'The Codex of Flutter',
        'B02': 'Dart: Lost Inscriptions',
        'C03': 'Compendium of Widgets',
      };
      print('Library Index: $library');
  3. Sets: Environments of exclusivity, where duplicates dare not tread.

    • Scenario: Ensuring no member repeats in a council of wizards.

    • Description: Sets are your council list, automatically preventing the addition of any duplicate wizards.

    • Sample Code:

      Set<String> wizards = {'Merlin', 'Morgana', 'Gandalf', 'Merlin'};
      print('Unique Wizards: $wizards');
  4. Queues: Ordered realms of elements, where order determines power.

    • Scenario: Managing spells cast in battle.

    • Description: Queues are your spell queue, ensuring spells are cast in the intended order, first in, first out.

    • Sample Code:

      import 'dart:collection';
      Queue<int> spellQueue = Queue();
      spellQueue.addAll([1, 2, 3]);
      print('Spells cast in sequence: $spellQueue');
  5. Stacks: Mysterious stacks of elements, where the last holds the first show of power.

    • Scenario: Retrieving spells cast in reverse order.

    • Description: Stacks are your spell retrieval stack, allowing you to retrieve spells starting from the most recently cast, last in, first out.

    • Sample Code:

      List<String> spellStack = ['Invisibility', 'Flight', 'Teleportation'];
      print('Last spell cast: ${spellStack.removeLast()}');

To emphasize the importance of adeptly wielding Dart Structures for a developer, let's draw inspiration from the wisdom of the superhero realm with two succinct quotes:

  1. "Navigating without knowledge of Dart structures is like trying to escape a labyrinth blindfolded; you may find your way, but not without unnecessary challenges along the path."

  2. "Mastering Dart structures is akin to unlocking the full potential of your superhero powers; it not only enables effective solutions but also fosters elegant ones."

And from the wisdom of superheroes: "With great power, comes great responsibility." Guided by this principle much like Spider-Man, a developer's power lies in understanding and mastering Dart structures, shaping the fabric of their applications.

Embark on this journey of Dart Structures, master the runes, and let your code wield the magic that turns ideas into reality! Remember, behind every enchanting application lies a deep mastery of these fundamental structures. With Dart's foundational stones, our developers, like wizards, can enhance the power of their code and overcome any programming challenge. - Gürkan

PreviousWhat's Dart Algorithms?Next#01 Algorithm Guidance: Implementing Calculation Algorithms

Last updated 6 months ago

🎯
🔬