3.3 KiB
3.3 KiB
Case-Study
Ausgangslage
- Webshop erstellen
- Währungsumrechnung CHF zu …
- Freie Software in Bezug auf Open-Source Code.
Vision
Die Vision wurde anhand eines Mindmaps erstmals grob umfasst:
Vision - Artikel
Vision - Warenkorb
Varianten
ASP.NET (C#) und SQL Server
Laravel (PHP) und MySQL
Django und MariaDB
Kriterien
- Freie Software
- Cross Plattform nutzbar
- Lesbarkeit des Codes
- Einfachheit des Setups
- Ohne spezielle Tools nutzbar
- Vorkenntnisse und Lernfaktor
Vergleich
Variante | Erreichte Punktzahl von 235 |
ASP.NET und SQL Server | 141 |
Laravel und MySQL | 161 |
Django und MariaDB | 196 |
Kosten
Tools
- Ausgaben während der Case-Study: 0.00 CHF
- 100% freie Software
- "Let's Encrypt" für SSL
- "freenom.com" für Domain
Laravel Webshop
Sprache | Codezeilen |
---|---|
PHP | 8679 |
Total | 8679 |
Django Webshop
Sprache | Codezeilen |
---|---|
Python | 1460 |
SQL | 4639 |
Total | 6099 |
Vorgehen
Currencies - App
- Wurde in Django als eigenen App entwickelt und sollte daher problemlos in andere Applikationen eingebunden werden können.
- Die Quelle der Währungen ist die Schweizerische Nationalbank mit der URL:
Currencies - Quelle
Currencies - Parsing
- Das Konvertieren des XML's wurde mit Python eigener Module gemacht.
- für das Herunterladen des XML's wurde das Modul 'urllib' verwendet (1)
- für das Parsen über die einzelnen items/nodes das Modul xml.etree.ElementTree. (2)
(1) https://docs.python.org/2/library/urllib.html
(2) https://docs.python.org/2/library/xml.etree.elementtree.html
Currencies - Ablauf
Infrastruktur
Andreas erzählt wie die infrastruktur aufgebaut ist.
Programmierung
amount_form = CartForm(
initial={'amount_form': cart_position.amount}
)
Fazit
- Trotz Model View Controll, SQL unerlässlich.
- Vagrant (up, suspend, provision, destroy)
- Git
- Python/Django, JS brauchts trotzdem.
Besten Dank für die Aufmerksahmkeit.
Ivan & Andreas