Nopp hat geschrieben:Oben lobst Du dick PB und am Ende kommt es für meine Projekte gar nicht mehr vor

?
Oder wie meinst Du den letzten Absatz genau? Als Zusatz zum PB?
Ich hatte mich da etwas falsch ausgedrückt. Sorry
Aber wirklich loben war es auch nicht. Habe nur erwähnt, das es mit PureBasic dank der CGI-Lib auch geht. Ich habe eher die Vorteile einer zentralen Serveranwendung aufgeführt
Das Problem an PureBasic ist leider immernoch, das es vieles kann, aber nur wenig vernünftig. Ist ja klasse, das es CGI/FastCGI gibt. Aber aktuell gängige Passwort-Hashes wie Argon oder Blowfish (Eine Zeile im Paketmanager von NodeJS oder Python und die können es. In PHP ist in der neuesten
Version Argon integriert) kann es nur mit einer externen Bibliothek, für die man erst eine Header-Include schreiben muss. Es kann nur mit externer Bibliothek oder ODBC-Treiber mit MySQL/MariaDB umgehen. Für dokumentorientierte Datenbanken müssen ebenfalls externe Bibliotheken und Wrapper verwendet werden, für die man auch eine Header-Include schreiben muss. CouchDB würde hingegen nur HTTP-Requests benötigen. Aber selbst die bekommt PB ohne Hilfe ja net hin. Dann kommt erschwerend hinzu, das PureBasic nicht mit allen C++-Bibliotheken kompatibel ist (z.B. wegen fehlendem OOP) und die meisten modernen Bibliotheken (z.B. MongoDB, Chromium usw.) in C++ geschrieben sind. Das sind alles Dämpfer, wegen denen ich momentan auch nicht wirklich an meinem PBExpress weiterarbeiten will. Und wie schon gesagt wurde ist eine Ajax-API mit JSON-Format schon ein Krampf. Allein schon deswegen, das durch die strenge Typisierung und die damit verbundenen extrem statischen Listenstrukturen die Handhabung von dynamischen Datensätzen die pure Hölle ist. Der Versuch, ein Mischling aus JSON und GraphQL hinzuschustern scheiterte genau an der Nummer. Webentwicklung mit PureBasic ist kein Zuckerschlecken und der Aufwand rechnet sich nicht, wenn man sowas wie PHP bereits aus dem FF beherrscht.
Und PureBasic benötigt für CGI/FastCGI trotzdem noch einen Webserver. Und dieser unterstützt im Regelfall SSL. Egal ob Apache, Hiawatha, NGINX, Lighttpd etc.
Bei puren Desktop-Anwendungen (Client-Applications) kann man PureBasic durchaus in einem recht großen Umfeld gut nutzen. Aber sobald PB etwas nicht kann, muss man mit Bibliotheken nachrüsten. Und in Zeiten, wo Kollegen wie das .NET-Framework (NuGet), Python (pip) oder Node (NPM) mit Paketmanagern oder der moderneren Stanadard-Funktionsbibliothek diese Aufgaben mit deutlich weniger Aufwand erledigen können, muss man sich schon Gedanken machen, ob PB ausreichend ist oder ob man mit den Alternativen besser fährt. Ohne zeitkritische Elemente fällt der Performanceverlust bei der heutigen Rechenleistung kaum ins Gewischt, wenn das Endergebnis kein nativer Maschinencode ist.
Es ist schwer zu beantworten, ob nun das eine oder andere besser wäre. Ich würde daher sagen, das du dir deine 3 Projekte nimmst und dir Gedanken machst, welche Funktionalitäten du überhaupt brauchst. Willst du Daten in Dateien oder in einer Datenbank speichern? Welche Datenbank würdest du nutzen wollen? Wie sicher muss das Thema Mehrbenutzer behandelt werden? Muss die Software mit anderen Systemen kommunizieren? Wenn ja wie? Und so weiter und sofort. Und dann kannst du mit Hilfe des Handbuches schauen, ob Purebaisc das alles kann. Wenn es passt, spricht ncihts dagegen. Wenn aber was fehlt, mach es nicht zu deiner Aufgabe, es ihm beizubringen. Nimm etwas, das es kann.
