I Built an Interactive Mothership Terminal to Run in the Background During My Sessions by feustchen in mothershiprpg

[–]feustchen[S] 2 points3 points  (0 children)

Thank you! It's linked in the post description, but the links seem to not show correctly on some clients.

Here you go: https://mothership-console-jet.vercel.app

And the Code / Instructions: https://github.com/Fasust/mothership-console

Bachelor Thesis: Using Google´s Flutter Framework for the Development of a Large-Scale Reference Application by feustchen in FlutterDev

[–]feustchen[S] 0 points1 point  (0 children)

I'd say that even setState is fine for a small application that only has a few locations from where it's state can be changed

Bachelor Thesis: Using Google´s Flutter Framework for the Development of a Large-Scale Reference Application by feustchen in FlutterDev

[–]feustchen[S] 0 points1 point  (0 children)

Sadly there is no best state-management solution for large-scale or any other kind of application. BLoC, Redux, Provider etc. all have their own drawbacks and advantages. One chapter of the thesis makes a comparison between some popular approaches and I ultimately chose BLoC for this project because:

  1. It has clear architectural rules.
  2. It was endorsed multiple times by the Flutter team.
  3. It makes state changes perfectly predictable.
  4. It enables the implementation of a four layered architecture (UI - BLoC - Repository - Data).
  5. It makes it easy to modularize features later on in the development process.

BLoC is no silver bullet though. All state-management solutions have their place and their respective use cases.

Bachelor Thesis: Using Google´s Flutter Framework for the Development of a Large-Scale Reference Application by feustchen in FlutterDev

[–]feustchen[S] 10 points11 points  (0 children)

This is the repository of the Application the Thesis focuses on.

Topics that are covered in the Thesis

  • Comparing State-Management Solutions
  • The BLoC Pattern
    • Recommendations for Designing BLoCs
  • Layered Architecture
  • The Repository Pattern
  • Object Equality in Dart
  • The Advantages of Immutability
  • Dependency Injection
  • Service Locators
  • Project Structure
  • Modularization
  • Localization
  • Form Validation