generated from leonetienne/LaTeX-Paper-template
wrote js and php implementations of qr code generators in stand der technik
This commit is contained in:
parent
52c2329190
commit
173dd63f2e
@ -6,5 +6,45 @@ eine PHP-Bibliothek zur Erzeugung von QR-Codes und eine Javascript-Bibliothek zu
|
||||
|
||||
\section{Die bestehende Webseite}
|
||||
Als Mitentwickler des Projektes ist dem Author dieser Ausarbeitung bekannt, dass die bestehende Webseite von
|
||||
\ac{WM} ist ein TYPO3-Redaktionssystem ist. Das Frontend der Webseite wird mit Webpack und Sass übersetzt.
|
||||
\ac{WM} ein TYPO3-Redaktionssystem ist. Das Frontend der Webseite wird mit Webpack und Sass übersetzt.
|
||||
Webpack ist ein Modulbundler \cite{bib:smashmagazine-webpack} und Sass ein CSS-Präprozessor \cite{bib:w3schools-sass}.
|
||||
|
||||
\section{QR-Codes erstellen}
|
||||
Um mit QR-Codes zu arbeiten, ist es unabdinglich, QR-Codes zu erstellen, da dieselben sonst nicht vorhanden sind.
|
||||
Prinzipiell gibt es zwei Möglichkeiten QR-Codes zu erstellen: Auf Browserseite in JavaScript und auf Serverseite in PHP.
|
||||
Das ist so, da es lediglich diese zwei Domänen gibt.
|
||||
|
||||
\subsection*{Javascript-Implementationen}
|
||||
\subsubsection*{jquery-qrcode}
|
||||
\textit{jquery-qrcode} ist ein Plugin für JQuery um dynamisch QR-Codes auf Browserseite zu generieren.
|
||||
Jedoch verweist diese Bibliothek selbst auf ihren desolaten Zustand und empfielt stattdessen \enquote{kjua} zu verwenden
|
||||
\cite{bib:larsjung-jquery-qrcode}. Somit scheidet jquery-qrcode für nähere Evaluationen aus, da die Software nicht mehr
|
||||
gepflegt wird.
|
||||
|
||||
\subsubsection*{kjua}
|
||||
\textit{Kjua} ist eine Javascript-Bibliothek, um dynamisch QR-Codes auf Browserseite zu generieren.
|
||||
Im Gegensatz zu \textit{jquery-qrcode} funktioniert Kjua auch ohne JQuery. Es werden diverse Stilattribute für gestaltete
|
||||
QR-Codes unterstützt \cite{bib:larsjung-kjua}. Kjua setzt QR-Codes über HTML-Canvas um. Das ist bei näherer Betrachtung
|
||||
der Kjua Tech Demo \enpointy{https://larsjung.de/kjua/latest/demo} ersichtlich, jedoch nicht explizit erwähnt.
|
||||
|
||||
\subsubsection*{soldair/node-qrcode}
|
||||
\textit{Soldair/node-qrcode} ist eine node.js-basierte Implementation eines QR-Code Generators und bietet somit Funktionialität
|
||||
serverseitig, als CLI, sowohl als auch Browserseitig an. Die Readme-Datei zeugt von Länge, ist reich an Beispielen
|
||||
und detailreichen Erklärungen. Der letzte Commit ist zu diesem Zeitpunkt knapp älter als ein halbes Jahr. Somit macht das
|
||||
Projekt einen moderat gepflegten Eindruck. Die Readme-Datei verweist auf Unit Tests bei Travis, jedoch lief die letzte Pipeline
|
||||
vor circa zwei Jahren, Februar 2021, durch und schlug zudem fehl. Einige Pull-Requests und Issues werden seit Jahren ignoriert
|
||||
\cite{bib:soldair-node-qrcode}.
|
||||
Die Bibliothek wurde 74 Millionen mal heruntergeladen \cite{bib:npmjs-soldair-node-qrcode}.
|
||||
|
||||
\subsection*{PHP-Implementationen}
|
||||
\subsubsection*{chillerlan/php-qrcode}
|
||||
Eine arrivierte Lösung für QR-Code Generierung in PHP ist \textit{chillerlan/php-qrcode}, umgesetzt durch
|
||||
Eugen Rochko und weitere. Das zeigt sich durch den zu diesem Zeitpunkt auf 5 Millionen stehenden Downloadzähler,
|
||||
mehrere Entwickler und den letzten Commit, der zu diesem Zeitpunk nicht älter als einen Monat alt ist.
|
||||
Insgesamt erfolgten bis dato 808 Commits von 6 Entwicklern. Das Projekt verfügt über Unit-Tests,
|
||||
die 90\% der Zeilen in der Codebase abdecken. Rochko übernahm Teile der Codebase aus
|
||||
dem Java-Projekt \enquote{ZXing} und übersetzte diese zu PHP.
|
||||
Issues und Pull Requests sind alle bearbeitet. Es gibt keine unbeantworteten Issues oder Pull-Requests.
|
||||
\textit{chillerlan/php-qrcode} basiert auf einer angepassten Version von \textit{kazuhikoarase/qrcode-generator}.
|
||||
Einzig auffällig sind die Commitnachrichten, die zuteils nur aus einem (1) Emoji bestehen
|
||||
\cite{bib:chillerlan-php-qrcode}.
|
||||
|
@ -140,3 +140,43 @@
|
||||
year = {2023},
|
||||
note = {Zugriff: Januar 2023}
|
||||
}
|
||||
|
||||
@misc{bib:larsjung-jquery-qrcode,
|
||||
author = {Lars Jung},
|
||||
howpublished = "\url{https://github.com/lrsjng/jquery-qrcode/blob/master/README.md}",
|
||||
title = {{jquery-qrcode readme.md}},
|
||||
year = {2020},
|
||||
note = {Zugriff: Januar 2023}
|
||||
}
|
||||
|
||||
@misc{bib:larsjung-kjua,
|
||||
author = {Lars Jung},
|
||||
howpublished = "\url{https://larsjung.de/kjua/}",
|
||||
title = {{kjua dynamically generated QR codes}},
|
||||
year = {2020},
|
||||
note = {Zugriff: Januar 2023}
|
||||
}
|
||||
|
||||
@misc{bib:soldair-node-qrcode,
|
||||
author = {Ryan Day},
|
||||
howpublished = "\url{https://github.com/soldair/node-qrcode}",
|
||||
title = {{QR code/2d barcode generator}},
|
||||
year = {2020},
|
||||
note = {Zugriff: Januar 2023}
|
||||
}
|
||||
|
||||
@misc{bib:npmjs-soldair-node-qrcode,
|
||||
author = {{npm, inc}},
|
||||
howpublished = "\url{https://www.npmjs.com/package/qrcode}",
|
||||
title = {{QR code/2d barcode generator}},
|
||||
year = {2020},
|
||||
note = {Zugriff: Januar 2023}
|
||||
}
|
||||
|
||||
@misc{bib:chillerlan-php-qrcode,
|
||||
author = {Eugen Rochko},
|
||||
howpublished = "\url{https://www.npmjs.com/package/qrcode}",
|
||||
title = {{QR code/2d barcode generator}},
|
||||
year = {2022},
|
||||
note = {Zugriff: Januar 2023}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user