Add structure for inheritedwidget

pull/3/head
Jonas Franz 4 years ago
parent efcbbd68c9
commit ba2678524c
  1. 2
      chapters/analyse/analyse.tex
  2. 4
      chapters/evaluation/evaluation.tex
  3. 32
      chapters/evaluation/inheritedwidget.tex

@ -118,6 +118,7 @@ In Flutter werden Widget-Bäume wie in \autoref{sec:widgets} gezeigt durch das I
Abschließend wird auch hier eine Skala von \textquote{nicht erfüllt}, \textquote{teilweise erfüllt} bis \textquote{vollständig erfüllt} verwendet.
\subsection{Dokumentierung}
\label{sec:documentation}
Bei der Dokumentation ist es entscheidend, dass sie für die Entwicklung hilfreich ist. Dabei sollte zuerst geprüft werden, ob es überhaupt eine entsprechende Dokumentation gibt und falls ja, ob die Grundkonzepte des Zustandsverwaltungssystems beschrieben sind. Zusätzlich stellt ein weiteres Kriterium das Zurverfügungstellen von umfangreichen Beispielen dar.
@ -125,6 +126,7 @@ Von diesen Kriterien ausgehend wird eine qualitative Bewertung anhand einer Skal
\subsection{Strukturbestimmung}
\label{sec:structure}
Die Strukturbestimmung bewertet, inwiefern ein System Vorgaben an die Struktur der Anwendung stellt. Zusätzlich sollte untersucht werden, ob diese auch technisch forciert werden.

@ -14,6 +14,4 @@ Dieser Ansatz konnte nicht die Mindestanforderungen an die Beispielanwendung ums
%Navigation per Routen-Namen nicht möglich, da es erforderlich ist, dass a
\section{InheritedWidget}
Wie in \autoref{sec:inheritedWidget} beschrieben, stellen InheritedWidgets einen Lösung für das Zustandsverwaltung dar, die ohne externe Bibliotheken auskommt.
\input{chapters/evaluation/inheritedwidget.tex}

@ -0,0 +1,32 @@
\section{InheritedWidget}
Wie in \autoref{sec:inheritedWidget} beschrieben, stellen InheritedWidgets einen Lösung für das Zustandsverwaltung dar, die ohne externe Bibliotheken auskommt und somit nur Bordmittel des Flutter-Frameworks benutzen.
\subsection{Implementierung}
Für die Implementierung dieses Ansatzes wurden mehrere Stores konstruiert, welche den Anmeldezustand, die geladenen Produkte und die im Warenkorb befindliche Anzahl der Produkte modellieren. Ein Store besteht dabei immer aus einem InheritedWidget und einem StatefulWidget. Das InheritedWidget erhält dabei vom StatefulWidget die Daten und Methoden, welche nach außen abrufbar sein sollen. Zustandsänderungen und Verknüpfungen mit anderen Stores finden ausschließlich im StatefulWidget statt.
Die Benutzeroberfläche greift auf die Stores ausschließlich über die InheritedWidgets zu, wie bereits im \autoref{sec:inheritedWidget} beschrieben wurde.
Der Funktionsumfang konnte dabei ohne Einschränkungen vollständig implementiert werden.
\subsection{Bewertung}
Im folgenden Abschnitt wird die Implementierung mit InheritedWidget \autocite[branch=inheritedwidget]{repo} anhand der definierten Bewertungskriterien bewertet.
\paragraph{\nameref{sec:changeablility}}
\paragraph{\nameref{sec:testability}}
\paragraph{\nameref{sec:efficiency}}
\lstinputlisting[caption={Anzahl der Render-Vorgänge bei InheritedWidget}]{results/inheritedwidget/benchmarks.txt}
\paragraph{\nameref{sec:complexity}}
\paragraph{\nameref{sec:readability}}
\paragraph{\nameref{sec:documentation}}
\paragraph{\nameref{sec:structure}}
Loading…
Cancel
Save