Über diese Webseite
Ich habe Matrixer programmiert, um ein eigenes Problem zu lösen. In der Mathevorlesung an der Uni wird sehr viel über endlichen Körpern anstelle von reellen Zahlen gerechnet. Allerdings können gewöhnliche Taschenrechner nur mit reellen Zahlen rechnen und sogar Wolfram Alpha beherrscht endliche Körper nur sehr eingeschränkt. Daher habe ich entschieden, dass es an der Zeit ist, meinen eigenen Rechner zu programmieren. Das hier ist das Resultat.
Matrixer ist ein Open-Source-Projekt und du kannst den Code hier ansehen.
Technologien auf dieser Webseite:
- JavaScript:
Ich habe den Rechner komplett in JavaScript programmiert. Der Code ist vollständig Front-End-basierend, es gibt daher kein Server-Back-End und die Berechnungen werden alle im Browser durchgeführt. - Bootstrap:
Boostrap ist ein CSS-Framework, welches das Erstellen von gutaussehenden Webseiten deutlich vereinfacht. Bootstrap hat mir daher viel Arbeit beim Erstellen der Benutzeroberfläche erspart. - jQuery:
jQuery ist eine JavaScript-Bibliothek, welche Zugriffe auf die grafische Benutzeroberfläche deutlich einfacher gestaltet, als es in reinem JavaScript der Fall ist. Ich benutze jQuery, um die Eingaben des Benutzers (gewählter Körper und mathematischer Ausdruck) von der GUI einzulesen und um das Ergebnis auszugeben. - KaTeX:
KaTeX ist eine Bibliothek zum Darstellen mathematischer Notation auf Webseiten. Man kann damit gewöhnlichen LaTeX-Code in mathematische Schreibweise umwandeln und auf dem Bildschirm anzeigen. Ich benutze KaTeX, um das Ergebnis der Berechnungen graphisch darzustellen. Mein eigener Code generiert dabei LaTeX-Code als Ausgabe, welcher dann an KaTeX übergeben wird, um den Code auf dem Bildschirm darzustellen. - Webpack:
Webpack ist ein NPM-basierender JavaScript-Modul-Bündler. Ich benutze Webpack hauptsächlich, um die vielen einzelnen JavaScript-Dateien des Rechners zu einer einzigen minimierten JavaScript-Datei umzuwandeln. Das erleichtert die Handhabung und verringert die Ladezeit der Webseite. - Babel:
Babel ist ein Werkzeug, das ECMAScript 6, eine moderne Variante von JavaScript, zu ECMAScript 5 (einer älteren Variante) umzuwandeln. Während Version 6 viele Funktionen hat, die das Programmieren einfacher und intuitiver machen, wird sie leider nicht von allen Browsern unterstützt. Um die Webseite trotzdem auch mit anderen Browsern kompatibel zu machen, nutze ich Babel. Somit kann ich modernen ECMAScript-6-Code schreiben, aber die Webseite trotzdem mit ECMAScript 5 anbieten. - Namecheap Logo Maker:
Sind wir ehrlich, das Matrixer-Logo ist nicht gerade kreativ. Trotzdem braucht diese Webseite ein Logo, und Namecheaps Logo Maker war genau das richtige Werkzeug dafür. Es hat gerade einmal 5 Minuten gedauert, ein halbwegs akzeptables Logo zu erstellen. - RealFaviconGenerator:
Ich habe das Favicon (das kleine Symbol im Browser-Tab) mit dem RealFaviconGenerator generiert. Dieses Online-Werkzeug skaliert das Icon automatisch auf die benötigten Bildgrößen und erzeugt zusätzlich einen HTML-Schnipsel, der benötigt wird, um das Favicon in die Webseite einzufügen.