Browse Source

feat: add Node.js

develop
Ezerous 3 years ago
parent
commit
00bafba336
  1. BIN
      assets/figures/chapter-4/4.3.node.js-logo.png
  2. 5
      bibliography/references.bib
  3. 9
      chapters/4.application-implementation/4.3.implementation-technology-stack.tex
  4. 5
      chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.1.development-technologies.tex
  5. 10
      chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.1.development-technologies/4.3.1.1.node.js.tex
  6. 4
      chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.3.ethereum-technologies.tex
  7. 6
      chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies.tex
  8. BIN
      thesis.pdf

BIN
assets/figures/chapter-4/4.3.node.js-logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

5
bibliography/references.bib

@ -105,6 +105,11 @@
author = {GitHub Guides},
url = {https://guides.github.com/introduction/flow/}
}
@misc{4.3-node.js,
title = {Node.js},
author = {Wikipedia},
url = {https://en.wikipedia.org/wiki/Node.js}
}
@misc{4.3-orbitdb,
title = {OrbitDB},
url = {https://orbitdb.org}

9
chapters/4.application-implementation/4.3.implementation-technology-stack.tex

@ -2,8 +2,7 @@
Η παρούσα ενότητα απαρτίζεται από υποενότητες, στις οποίες διατυπώνονται οι \textbf{σημαντικότερες} τεχνολογίες που χρησιμοποιήθηκαν για την υλοποίηση της εφαρμογής. Όλες οι τεχνολογίες αποτελούν δωρεάν λογισμικό ανοιχτού κώδικα.
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.1.development-technologies.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.2.ui-technologies.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.3.ethereum-technologies.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.1.development-technologies}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.2.ui-technologies}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.3.ethereum-technologies}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies}

5
chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.1.development-technologies.tex

@ -2,6 +2,7 @@
Σε αυτήν την υποενότητα περιγράφονται ορισμένα θεμελιώδη εργαλεία και frameworks που συνετέλεσαν στην ανάπτυξη της εφαρμογής.
% TODO: add nodejs, docker, jenkins, janus and build steps diagram
4.3.1.development-technologies
% TODO: add docker, jenkins, janus and build steps diagram
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.1.development-technologies/4.3.1.1.node.js}

10
chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.1.development-technologies/4.3.1.1.node.js.tex

@ -0,0 +1,10 @@
\subsubsection{Node.js} \label{subsection:4-3-1-1-node.js}
\logo{chapter-4/4.3.node.js-logo}{Node.js logo}
Το Node.js\footnote{\url{https://nodejs.org/}} είναι ένα περιβάλλον χρόνου εκτέλεσης Javascript πολλαπλών πλατφορμών, το οποίο εκτελείται στη μηχανή V8\footnote{\url{https://v8.dev/}} και παρέχει τη δυνατότητα εκτέλεσης κώδικα Javascript εκτός περιηγητών ιστού. Επιτρέπει στους προγραμματιστές να χρησιμοποιούν Javascript για τη σύνταξη εργαλείων γραμμής εντολών και τη δημιουργία κλιμακωτών διαδικτυακών εφαρμογών (κυρίως για εξυπηρετητές). Έχει αρχιτεκτονική βασισμένη σε συμβάντα (event-driven architecture), με δυνατότητα ασύγχρονης εισόδου/εξόδου (asynchronous I/O).\cite{4.3-node.js}
Ένα από τα σημαντικότερα χαρακτηριστικά του Node.js είναι ο ενσωματωμένος διαχειριστής πακέτων του, ο οποίος ονομάζεται npm. Με τον npm γίνεται εφικτή η εγκατάσταση πακέτων (βιβλιοθηκών) από το μητρώο npm (npm registry\footnote{\url{https://www.npmjs.com/}}), καθώς και η οργάνωση και η διαχείρισή τους στα πλαίσια της ανάπτυξης μίας εφαρμογής που εξαρτάται από αυτά.
Το Node.js έχει το αποθετήριό του στο GitHub (\url{https://github.com/nodejs/node}).

4
chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.3.ethereum-technologies.tex

@ -2,5 +2,5 @@
Στην παρούσα υποενότητα περιγράφονται εκείνες οι τεχνολογίες που σχετίζονται με το Ethereum, δηλαδή με το Application tier της τεχνολογικής στοίβας.
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.3.ethereum-technologies/4.3.3.1.truffle.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.3.ethereum-technologies/4.3.3.2.ganache.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.3.ethereum-technologies/4.3.3.1.truffle}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.3.ethereum-technologies/4.3.3.2.ganache}

6
chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies.tex

@ -2,6 +2,6 @@
Σε αυτήν την υποενότητα περιγράφονται όσες τεχνολογίες σχετίζονται με το IPFS (βλ. ενότητα \ref{section:2-7-ipfs}), δηλαδή με το Data tier της τεχνολογικής στοίβας της εφαρμογής.
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies/4.3.4.1.js-ipfs.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies/4.3.4.2.orbit-db.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies/4.3.4.3.libp2p.tex}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies/4.3.4.1.js-ipfs}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies/4.3.4.2.orbit-db}
\input{chapters/4.application-implementation/4.3.implementation-technology-stack/4.3.4.ipfs-technologies/4.3.4.3.libp2p}

BIN
thesis.pdf

Binary file not shown.
Loading…
Cancel
Save