-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvue_js.tex
60 lines (53 loc) · 3.15 KB
/
vue_js.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
% ----------------------------------------------------------------------------
% Copyright (c) 2016 - 2020 by Burkhardt Renz. All rights reserved.
% Die Vorlage für eine Abschlussarbeit in der Informatik am Fachbereich
% MNI der THM ist lizenziert unter einer Creative Commons
% Namensnennung-Nicht kommerziell 4.0 International Lizenz.
%
% Id:$
% ----------------------------------------------------------------------------
\chapter{Vue.js}
In diesem Kapitel wird genauer auf Vue.js eingegangen.
Dabei werden die Ziele von Vue.js erläutert.
Weiterhin wird auf die Historie und Meilensteine in der Entwicklung von Vue.js eingegangen.
\section{Was ist Vue.js?}
Bei Vue.js oder einfach nur Vue genannt handelt es sich um ein progressives JavaScript-Frontend-Framework.
Progressiv heißt in diesem Zusammenhang,
dass es sich an die Bedürfnisse der Entwickler anpassen lässt.
Der Kern von Vue.js kümmert sich ausschließlich um den View-Layer und ist rund 20 KB groß.
Für weitere benötigte Features kann Vue.js modular erweitert werden. \cite[S. 523-524]{bin2019}
\\
Das Konzept von Vue.js ermöglicht es, Vue.js in bestehende Projekte zu integrieren
und soll es leichter machen, das Framework eines bestehenden Projekts
schrittweise durch Vue.js zu ersetzen \cite[S. 1]{peterke2019}.
%\newpage
\section{Geschichte}\label{sec:geschichte}
\begin{figure}[!htb]
\centering
\includegraphics[width=.2\textwidth]{img/you}
\caption{Evan You \cite{linkedinYou}}
\label{fig:you}
\end{figure}
Erschaffer und Projektleiter von Vue.js ist der gebürtige Chinese Evan You (Abb. \ref{fig:you}).
Evan You arbeitete nach seinem Studium zunächst bei Google und später bei Meteor, wo er
an Meteor.js beteiligt war \cite{linkedinYou}.
\\
Das Vue.js-Projekt startete er im Juli 2013 mit der Absicht \emph{ein kleines Angular}
zu schreiben.
Während seiner Zeit bei Google war er bereits in vielen Projekten mit Angular involviert.
Sein Ziel mit Vue.js war es zunächst, die seiner Meinung nach schlechten Designentscheidungen von Angular herauszufiltern
und die seiner Ansicht nach guten Aspekte auf Vue.js zu übertragen.
Evan You entwickelte bei Google verschiedene Prototypen und stellte fest,
dass Angular aufgrund seiner Komplexität für kleinere Projekte ungeeignet ist.
Zudem ist Angular zu starr, um schnell auf Änderungen und neue Anforderungen in einem Prototypen-Projekt zu reagieren.
Öffentlich wurde Vue.js im Frühjahr 2014.
Die erste Vollversion wurde im Oktober 2015 veröffentlicht.
Bei der 2016 veröffentlichten Version v2.0 handelt es sich um eine von Grund auf Neuimplementierung. \cite[1:11-4:42]{vueNYC}
\\
Die aktuellste Version ist Vue 3 und erschien im Herbst 2020.
Der Kern von Vue.js wurde dabei in TypeScript neu implementiert, was die Performance und den TypeScript-Support des Frameworks verbesserte.
Neues Feature ist unter anderem die Composition API, dazu mehr im Abschnitt \ref{sec:options-api-and-composition-api}. \cite{konstantinidis2020}
\\
Trotz der Inkompatibilität von Vue 2 und Vue 3 werden ein Großteil der Vue APIs zwischen diesen geteilt,
was einen Umstieg erleichtert. \cite{vueFAQ}
% ----------------------------------------------------------------------------