feat(dissertation): add setup section for compose multiplatform

This commit is contained in:
Anthony Berg 2024-05-13 21:29:47 +01:00
parent 7f3248dbaf
commit 1c0060d0bb
3 changed files with 40 additions and 1 deletions

View File

@ -96,7 +96,24 @@ Brief overview of what it is supposed to do... % TODO
\subsection{Compose Multiplatform}
\subsubsection{Setup}
\begin{itemize}
\item Used the \textit{Kotlin Multiplatform Wizard} to create projects as it allows
for runtime environments to be specified (in this case, Desktop and Server)
\item Provides necessary build configurations in Gradle
\item Planning what to implement important as Compose is designed to use modular
components, otherwise a nested mess would happen, code harder to read
% TODO add example
\item Used Voyager~\cite{voyager} to handle screens
\item Used Koin~\cite{koin} for dependency injection, to be able to get data from the
database and VDMJ
\begin{itemize}
\item Chose to use it because of Voyager integration with Koin~\cite{voyager:koin}
\item Required as the application will be unresponsive when making requests
to the database and/or VDMJ
\item Used asynchronous coroutines to prevent the program from being blocked
\end{itemize}
\end{itemize}
\subsection{Storing Data}

Binary file not shown.

View File

@ -223,6 +223,28 @@
urldate = {2024-05-13},
}
@online{voyager,
author = {Adriel Café},
title = {Overview | Voyager},
url = {https://voyager.adriel.cafe/},
urldate = {2024-05-13},
}
@online{voyager:koin,
author = {Adriel Café},
title = {Koin integration | Voyager},
url = {https://voyager.adriel.cafe/screenmodel/koin-integration},
urldate = {2024-05-13},
}
@online{koin,
author = {Koin and Kotzilla},
title = {Koin - The pragmatic Kotlin Injection Framework - developed by
Kotzilla and its open-source contributors},
url = {https://insert-koin.io/},
urldate = {2024-05-13},
}
@online{xpc:pom,
author = {Mike Frizzell},
title = {Maven Folder Structure Re-org by frizman21 · Pull Request \#227 ·