Purebasic vs. Web-Entwicklungen ... was macht Sinn?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Delle
Beiträge: 1130
Registriert: 10.05.2005 22:48

Purebasic vs. Web-Entwicklungen ... was macht Sinn?

Beitrag von Delle »

Hallo,

viele "Kunden" wollen seit Jahren ja nur noch browserbasierte Lösungen (PHP/MySQL), insbesondere wenn sie von "unterwegs" drauf zugreifen wollen.

Außerdem sind sofort Aktualisierungen sichtbar, es muss nicht dem Kunden eine .exe mit Admin-Rechten usw. installiert werden.

Exe-Programme hingegen erscheinen irgendwie "altmodisch", auch wenn ich diese Programme irgendwie als "sicherer" und "fester" empfinde :-D
Über manche Sachen muss man sich bei Exen halt überhaupt keine Gedanken machen, dynamischer Schnickschnack ist aber schwerer zu coden.

Ich habe viele Ideen, würde die aber lieber in Form einer Exe gießen...

Wie sind da eure Erfahrungen?
PB 6.21 | Win 11
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Purebasic vs. Web-Entwicklungen ... was macht Sinn?

Beitrag von NicTheQuick »

Ich unterscheide da ein bisschen anhand Performanz, Plattformunabhängigkeit und Multi-User-System.

Ein Tool, das mit lokalen Dateien arbeiten und möglichst effizient auf der CPU ausgeführt werden soll, sollte als Binary zur Verfügung stellen. Als Weblösung müsste man erst die zu verarbeitenden Daten hochladen und nach der Verarbeitung wieder herunterladen. Natürlich könnte der Server wesentlich leistungsfähiger sein und im die Arbeit schneller erledigen, aber man hat dort eben nicht den direkten Zugriffs auf's Dateisystem.

Natürlich ist der direkte Zugriffs auf Dateisystem auch eine Sicherheitslücke. Kommuniziert das Tool noch über Netzwerkschnittstellen, arbeitet mit Administratorrechten, oder hat es möglicherweise fiese Speicherlecks und "use after free"-Sicherheitslücken, dann kann das noch viel mehr Schaden anrichten, wenn ein potentieller Angreifer das ausnutzen kann.

Ein Webinterface im Browser hingegen ist automatisch in einer Sandbox. Da kann gar nichts mehr passieren, seitdem ActiveX und Flash nicht mehr existieren und die Javascript-Engine aktuell gehalten wird. Außerdem kann man Webinterfaces viel leichter zugänglich machen für jedermann, auf jedem Gerät und jedem Betriebssystem, bei jeder Bildschirmgröße, ob Touch oder Tastatur und Maus. Es wird leichter beliebig viele User zu verwalten, mit Rechten und Rollen auszustatten und zu gruppieren. Das alles Dank etablierter Frameworks, die man einfach nutzt statt sie neu zu erfinden. Da ist dann schon alles sauber vorgegeben und kann nur schwer wieder Sicherheitslücken einbauen. Und diese Frameworks gibt es in vielen Sprachen (PHP, Python, Ruby, Javascript/Node.js, Java, ...) und mit einer guten Dokumentation für Entwickler. Natürlich kann man das Backend auch in Purebasic schreiben und den Server per FastCGI reinhängen, aber ich weiß nicht, ob es da schon gute Ansätze gibt, auf die man aufbauen kann?
Man kann auch einen ganz rudimentären Server mit Sessionmanagement und Rest-API schreiben. Und dann nutzt man Angular oder React (oder Spiderbasic?) als Frontend, was einfach nur per JSON-Requests mit dem Server kommuniziert. Dann muss man sich keine Gedanken um ein serverseitiges Templatesystem auf dem Server machen.
Benutzeravatar
Mijikai
Beiträge: 754
Registriert: 25.09.2016 01:42

Re: Purebasic vs. Web-Entwicklungen ... was macht Sinn?

Beitrag von Mijikai »

Lokal, sicher und schnell ist immer die bessere Lösung wenn umsetzbar.
Wo und wie Daten verarbeitet werden wird immer relevanter!
Vertrauen & Sicherheit sind wichtiger denn je - eine Web-Lösung sollte die letzte Option sein.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Purebasic vs. Web-Entwicklungen ... was macht Sinn?

Beitrag von STARGÅTE »

Über welche "Kunden" reden wir denn hier überhaupt und um welche "Lösungen"?

Ich meine, ich meine für vieles sind sicher beide Herangehensweisen möglich, aber für andere Sache auch nur das eine (EXE) oder andere (Web).
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Re: Purebasic vs. Web-Entwicklungen ... was macht Sinn?

Beitrag von GPI »

Ist das nicht auch extrem abhängig von der Anwendung?

Wenn man bspw. eine Art Termine verwalten will, wo viele drauf zugreifen müssen, dann ist so eine Webanwendung sehr praktisch.
Generell bei allen, was keine hohe Rechenleistung benötigt und viele Benutzer drauf zugreifen müssen. Also klassische Daten Sammel und Verwalten - Aufgaben.

Wenn aber kompliziertere Berechnungen nötig werden oder ein System wirklich schnell reagieren soll, dann lokal. Besonders wenn Daten nicht synchronisiert werden müssen. Man kann das zwar immer noch machen (siehe Gaming-Streaming-Service), braucht dann aber gewaltige Serveranlagen und vorallen Bandbreite. Da dürfte ein lokaler Rechner einfach günstiger sein.

Also Pauschal kann man die Frage nicht beantworten. Was man auch bedenken sollte: Bandbreite und Last auf den Server. Ein Büro-PC hat in der Regel genügend Resourcen für das meiste. Wenn alle rummeckern, dass das Webinterface wieder mal langsam ist, dann ist keinen geholfen.

Eine EXE kann man ja auch auf den Server ablegen - proTip: Wenn die Exe auf einen Server zugreift, um daten zu schubsen, leg unbedingt eine Versionsnummer auf den Server ab und die Exe sollte die Arbeit verweigern, wenn diese nicht übereinstimmt.
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Benutzeravatar
dige
Beiträge: 1239
Registriert: 08.09.2004 08:53

Re: Purebasic vs. Web-Entwicklungen ... was macht Sinn?

Beitrag von dige »

Die Kombination aus Spiderbasic (GUI) - und PureBasic (CGI/Datenbank) hat für mich alles verändert.
Ich baue eigentlich nur noch Server/Client Anwendungen damit.

Keine Installation, keine Updates einspielen, Daten zentral auf Server (und damit im Backup) und es läuft auch auf mobilen Endgeräten :-)
"Papa, ich laufe schneller - dann ist es nicht so weit."
Benutzeravatar
TroaX
Beiträge: 684
Registriert: 08.03.2013 14:27
Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Linux Mint | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Linux Mint
Wohnort: NRW
Kontaktdaten:

Re: Purebasic vs. Web-Entwicklungen ... was macht Sinn?

Beitrag von TroaX »

So lange die Anforderungen Mehrplatzsystem, keine Rechenintensive sowie Echtzeit-Aufgaben und zentrale Speicherung sind, würde ich immer Web-Anwendungen vorziehen. Selbst in einem kleinen Netzwerk. Allein schon das wegfallen von Update-Rollouts auf die Clients und die Tatsache, das bis auf einen aktuellen Browser nichts weiter an Software benötigt wird, sind für mich Grund genug, dafür keine native Anwendung zu schreiben.
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Linux Mint
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Linux Mint
NAS: Fritz.Box 5690 Pro (Nur für Keepass-DB)
Coding: Purebasic, Spiderbasic, GDevelop, Javascript/Node
Antworten