AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Konzept für eine Art Web-Shop mit App-Unterstützung
Thema durchsuchen
Ansicht
Themen-Optionen

Konzept für eine Art Web-Shop mit App-Unterstützung

Ein Thema von Matze · begonnen am 4. Jul 2022 · letzter Beitrag vom 6. Jul 2022
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 4. Jul 2022, 20:05
Hallo zusammen,

Ich habe mich lange nicht mehr blicken lassen, wäre aber um ein paar Denkanstöße dankbar.

Folgendes Szenario:
  1. Es soll eine Website (eine Art Shop) geben, bei der man sich registrieren/einloggen kann etc.
    Darüber soll man die üblichen Datenbank-Themen machen können (Benutzer können Bestellungen aufgeben und Admins können das Ganze verwalten).
  2. Eine Handy-App (iOS, Android) für die Benutzer soll die gleichen Funktionen ermöglichen, ggf. mit Zusatzfunktionen
    wie einem QR-Code-Reader und Fingerabdruck-Login.
  3. Eine Anbindung an PayPal & Co. soll möglich sein.

Nun zum Konzept:
  • Beim Thema der App-Entwicklung bin ich vorsichtig. Ein Update des Betriebssystems und möglicherweise geht danach nichts mehr.
    Daher würde mir eine App-Entwicklung gefallen, die quasi die Website kapselt und nur einen Rumpf mit nativen Zusatzfunktionen (QR-Code-Reader, Benachrichtigungen etc.) bereitstellt.
    Ich glaube Xamarin war damals was, das sowas in der Art konnte. Zumindest kann man da irgendwie nur eine Code-Basis pflegen und das fürs Web, Handy, Desktop etc. kompilieren.
    Sowas finde ich ganz cool.
  • Bzgl. der Web-Entwicklung wäre es schön, wenn man für die ersten "Gehversuche" mit einem normalen Webspace auskommt (PHP, MySQL).
    Wenn sich das aber gar nicht eignet, bin ich offen. Es sollte schon eine gute Lösung sein.
  • Wie gesagt wäre ein All-In-One-Tool (vgl. Xamarin) eine feine Sache.
    Was bietet sich da denn aktuell an?
    Schön wäre ein verbreitetes Open-Source-System und eine große Community.
    Oder welche Frameworks sind zu empfehlen?
    Gibt's evtl. sogar etwas, das man konfiguriert (Login, Formulare/Benutzer-Bereich etc.) und selbst über Art Plugins erweitern kann? Dann muss man nicht bei Null anfangen.
  • Ich vermute, Bezahlsysteme lassen sich heutzutage überall einbinden, weshalb wir das hier vermutlich eher weniger berücksichtigen müssen.

Kennt sich jemand von euch mit dem Thema aus und kann mir ein paar Tipps geben?

Viele Grüße
Matze
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.143 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 4. Jul 2022, 20:20
Tja für diese Problemstellung, gibt es sicherlich 100 verschiedene Ansätze.

Wenn Du das auf einem "normalem" Webspace aufsetzen willst, fallen aus meiner Sicht alle "coolen" Ansätze weg.

Für die Webseite würde ich dann ggf. TMS WebCode ins Auge nehmen...

Für die App natürlich FMX... ggf. mit einem Edge-Browser für die Webseite...

Soweit zu Deinen Vorgaben...

Ich würde es anders machen!

Das geht dann jedoch nur dann wenn Du einen "richtigen" Server hast! Hierzu verweise ich auf meinen vorletzten Blogpost.

Ich würden einen Rest(full) WebService in Delphi als ISAP-DLL schreiben der in der Lage ist sowohl die Webseite zu betreiben als auch die Daten für eine native FMX-App bereitstellen kann.

Die Intelligenz kann dann auf dem Service liegen.

Für die Webseite würde ich wie im Blogpost beschrieben dann eine Kombination aus HTML und Delphi-Script zurückgreifen.
TMS-WebCode würde natürlich auch in diesen Fall funktionieren.

Grüsse
Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#3

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 4. Jul 2022, 21:03
Bei PHP fällt mir zuerst Laravel ein, für das Frontend könnte man z.B. Angular mit Ionic verwenden, das Ganze evtl. als PWA, dann hast Du für Website und App dieselbe Codebase. Die Lösung besteht damit nur aus OpenSource-Komponenten und läuft auf jedem OS.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.143 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 4. Jul 2022, 21:29
Bei PHP fällt mir zuerst Laravel ein
Bei PHP fällt mir zu erst ein:

- Hacker auf meinen Server wegen Fehler in PHPAdmin
- Hacker auf meinen Server wegen Lücke in Drupal
- Hacker auf meinen Server - keine Ahnung was es jenes mal war.

In jedem Fall war der Server nicht mehr zu retten.

Daher werde ich NIE wieder PHP verwenden, auf meinem Server installieren oder ein PHP Tool verwenden...

Mavarik

PS.: Aber das soll keinen davon abhalten!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#5

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 4. Jul 2022, 21:39
Und bei Delphi-Webgefrickel kann so etwas nicht passieren? PHP kam ja nicht von mir, es gibt ja auch noch jede Menge anderer Möglichkeiten, NestJS beispielsweise. Aber letzten Endes muss Matze sich sowieso erst einmal umschauen und sich dann entscheiden, welche Lösung er für geeignet erachtet.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von IBExpert
IBExpert

Registriert seit: 15. Mär 2005
672 Beiträge
 
FreePascal / Lazarus
 
#6

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 4. Jul 2022, 22:14
ich denk mal mit TMS WebCore (nicht WebCode wie Maverik/Frank schrieb), bist du eigentlich auf einem guten Weg, damit lässt sich auf Basis einer Programmierung der ganze Kram wirklich Multilattform einsetzbar machen, sofern alle Plattformen einigermaßen brauchbare Browser einsetzen. Es erspart dir den ganzen Kram, wie man native Apps in die ios bzw android Appstores bekommt und wenn du ein Update hochladen willst, musst du niemanden fragen, ob der das denn auch netterweise irgendwann mal freischaltet.

Php setzen wir zwar ziemlich oft dafür als Backend zwischen webserver und firebird db ein, weil das dann ziemlich einfach ist, darüber datenbankzugriffe zu machen, das passiert aber immer nur mit php script files, die zu 100% auf unserem eigenen Mist gewachsen sind und nicht irgendwelche lustigen frameworks, die zwar anfänglich alles sehr einfach aussehen lassen, am Ende dir aber die Erfahrungen von Maverick in Erinnerung rufen werden, wenn du den Kram verfluchst.

So ein php script hat bei uns keine 50 Zeilen php code, bindet gar nichts externes ein und läuft daher sehr einfach und sauber. Ein eigener OAuth Mechanismus ist damit auch schneller selbst aufgebaut, als irgendwelche wahnsinnig tollen libs, die das alles eh schon können, aber oft auch sachen können, die man gar nicht haben möchte und der eigentliche Entwickler wohl auch irgendwann mal übersehen hatte ... .

Das was TMS Webcore dann meiner Meinung nach wirklich sehr gut macht, ist das du bei Bedarf damit sogar mobile laufende offline Applikationen erstellen kannst. Ob du das am Ende mit Delphi machst oder mit Lazarus ist ziemlich egal, weil am Ende statt einer Windows Exe beim compile Javascript dabei rauskommt, und das dann eben im Browser läuft, lokal, egal ob online oder offline (bei einer php/isapi webanwendung ist das undenkbar, bei den meisten anderen für delphi verfügbaren frameworks ebenfalls, da muss auf irgendeinem server irgendwas laufen und nur das liefert dir results auf deinem device, wenn keine verbinding, dann keinerlei funktion. (ich hatte das mal in einem video hier gezeigt https://youtu.be/uVa9Y0-TyoA?t=5616)

Das ist bei TMS Webcore überhaupt nicht der Fall und als Komponenten has du auf der Webcore Plattform alles mögliche auch schon drin.

Webcore Apps kanns du übrigens auch auf dummen Webservern ablegen, für den Zugriff auf eine irgendwo unter deiner Kontrolle liegende db wird das schon ein wenig komplizierter, Wenn das aber windows fokus haben soll, ist das einfachste, dir dafür zB. einen eigenen Windows virtual server mieten, auf dem du dann installieren kannst, was du willst (mit allen vor und Nachteilen), kostet so ab 15 € im Monat, je nach anbieter und Leistung. Auf dem Weg geht sonst auch die von maverick vorgeschlagene isapi dll rest lösung, aber was am ende der beste weg ist und auch unter hoher last noch benutzbar ist, hängt weniger davon ab, was du da einsezt, sondern mehr davon, wie du das umsetzt. Scheisse programmieren kann man mit fast jeder Programmiersprache, aber in vielen Sprachen sind gute Lösungen umsetzbar.
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
IBExpert and Firebird Power Workshops jederzeit auch als Firmenschulung

Geändert von IBExpert ( 4. Jul 2022 um 22:26 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.640 Beiträge
 
#7

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 5. Jul 2022, 08:07
Huhu Matze,

eine App die einfach nur eine Webseite kapselt funktioniert nur genau so gut, wie die Webseite. Wenn Du keine Online-Verbindung hast, in aller Regel gar nicht. Da muss man also ein klein wenig mehr machen.

Für offline-Fähige Webseiten (sogenannte Progressive Web Apps) gibt es inzwischen genug API-Support auf allen Plattformen. Um eine PWA zu bauen bieten sich auch verschiedene SPA (Single Page Application) Frameworks an. Wenn Du was verlässliches, battle-tested haben willst schreibst Du die Seite dann in Angular oder React. Angular ist eher Komponenten-Orientiert und gibt als Framework viel vor, was Dich, denn entsprechenden Einarbeitungsaufwand vorausgesetzt, super produktiv macht. React ist eher ne Sammlung von Libraries und gibt wenig vor, Du musst also jedes mal für jedes Teilfeature das Du benötigst gucken, welche Bibliothek Du dafür benutzen möchtest und selber schauen wie Du es da in ein Gesamtbild reinbekommst.

Wenn Du die Webseite / SPA hast, kannst Du sie mit Apache Cordova in eine App für iOS und Android verpacken. Wenn Du Desktop-Lösungen magst steckst Du die Anwendung dann in Electron rein.

Authentication: Kauf bzw. Miete Dir was. Auth0, Okta, Azure Active Directory, Hosted Keycloak, irgend sowas. Wenn Du das selber machen willst kostet das massig Zeit. Wir reden hier jeweils von Wochen an Anpassungen an ggf. teuer lizenzierten Komponenten damit das am Ende das tut was Du brauchst. Und wenn Du Clientseitige Bibliotheken verwendest achte unbedingt darauf, dass sie OIDC-Zertifiziert sind. Zwingend! Das ist alles Security-Relevant. Ich habe bisher keinen Kunden gesehen der sowas selbst versucht hat und das hinterher sicher war. Das Protokoll ist nicht ohne und da reichen schon mini-Fehler um durch das Weglassen von "was unwichtigem" oder minimal falsch interpretierte Dinge auf einmal Scheunentore offen stehen zu lassen. Das ist ein Schweizer Käsemodell par excellence und jede noch so dünne Scheibe / Schicht sorgt dann am Ende dafür das ein Angreifer nicht mit 08/15 Standard-Attacken einfach mal durchkommt.

Backend / API: Auch hier: Verlass Dich am besten auf millionenfach battle-tested Frameworks. Wir bauen APIs auf Basis von ASP.NET Core auf .NET 6 (ehemals .NET Core).
Bringt wirklich alles mit was Du brauchst. Ne einfache REST-ähnliche API inkl. DB-Anbindung (egal ob MSSQL, Postgres, MariaDB / MySql), OAuth-basierte Anmeldung die normale Create/Read/Update/Delete Operationen für alle Tabellen, eine lebende API-Dokumentation etc. bereitstellt ist in maximal 2 Stunden fertig und kann sowohl auf Windows, Linux, macOS und auch Containerisiert für die Cloud (Docker, Kubernetes) deployed werden.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von IBExpert
IBExpert

Registriert seit: 15. Mär 2005
672 Beiträge
 
FreePascal / Lazarus
 
#8

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 5. Jul 2022, 18:00
sorry, Sebastian, aber ich als alter Sack bin da mal so gemein, deine Antwort mal auf die wichtigsten Namen zusammen zu kürzen

Ist es korrekt, das dein Vorschlag also erst mal die Evaluierung und Bewertung dieser Technologien vorschlägt
(ich hab nicht alle genommen, nur die ersten 16 die mir aufgefallen sind)

PWA
SPA
battle-tested
Angular
React
Apache Cordova
Electron
Auth0
Okta
Azure Active Directory
Hosted Keycloak
OIDC
ASP.NET Core auf .NET 6 (ehemals .NET Core).
OAuth-basierte Anmeldung
Docker
Kubernetes

Wenn dem so ist und das jeder alles so parat haben sollte, dann frag ich mal ganz offen, ob es nur mir so geht,
das ich ohne den ganzen Kram bisher sehr gut klarkomme, einiges davon zwar kenne, aber gar nichts davon für
existenziell wichtig und unersetzbar halte.

Ist aber vielleicht auf die ursprüngliche Frage von Matze die bessere Antwort auf einen anderen Teil, ich hatte da eher den Teil
"Wie gesagt wäre ein All-In-One-Tool (vgl. Xamarin) eine feine Sache." im Fokus und dachte mir (da wir ja im DelphiPraxis Forum sind)
der TMS Ansatz kommt dem schon sehr nahe

Deine Antwort geht dann ja eher in Richtung der daruf folgenden Frage "Oder welche Frameworks sind zu empfehlen?"
wobei ich keineswegs sagen will, das die Sachen da alle unwichtig sind, sondern im Enterprise Umfeld sicher eine Existenzberechtigung
haben, aber viellicht bin ich ja auch wirklich zu alt und zu faul, den ganzen Kram zu lernen und zu verstehen, solange ich mit dem
was ich mache,eigentlich alles abdecken kann, was ich so brauche.
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
IBExpert and Firebird Power Workshops jederzeit auch als Firmenschulung
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#9

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 5. Jul 2022, 20:31
Hallo zusammen,

Wahnsinn, was für tolle Antworten in der kurzen Zeit von euch kamen. Vielen Dank dafür!

Zugegeben, ich muss einiges erstmal recherchieren, da ich mit einigen Begriffen noch gar nichts anfange.
Aber schon mal echt top, dass ich nun ein paar Ansätze habe.

Grüße
Matze
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.143 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: Konzept für eine Art Web-Shop mit App-Unterstützung

  Alt 6. Jul 2022, 03:35
aber ich als alter Sack
Sind wir "die alten Säcke" nicht genau die, die den Kids den richtigen Weg zeigen sollten?

... und dachte mir (da wir ja im DelphiPraxis Forum sind)
Wichtiger Punkt...

Mir als altem Sack geht es total auf den Sack - um bei dem Wortspiel zu bleiben - das es jeden Tag ein neues XY gibt das angeblich viel besser ist und natürlich von Facebook oder google entwickelt oder verwendet wird, daher muss es ja gut sein...

Ich will jetzt nicht mit der alten Laier kommen, dass man alles mit Delphi machen kann (auch wenn es so ist).

Aber warum soll ich in einem Delphi Forum als Antwort geben: "Nimm doch C#"

*grummel*

Ich denke doch, wenn jemand in einem Delphi Forum diese Frage stellt, erwartet er auch eine Antwort wie es mit Delphi geht, oder?

Mavarik
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz