Seite 2 von 2

Re: Ist SpiderBasic gestorben?

Verfasst: 20.07.2018 19:26
von Sicro
Spiderbasic-Hilfe hat geschrieben:#PB_LocalStorage: will save the file on client side using its filename when @closefile() is called. This file
could be opened again in anothe session in the same browser later, but it can be wiped if the
user clear its local cache. It's also domain related, so if the application domain name change,
the files won't be accessible anymore.
Auf deutsch:
PB_LocalStorage: speichert die Datei auf der Client-Seite unter ihrem Dateinamen, wenn @closefile() aufgerufen wird. Diese Datei
kann später im selben Browser wieder geöffnet werden, aber sie kann gelöscht werden, wenn der
Benutzer seinen lokalen Cache löscht. Es ist auch domänenbezogen, d.h. wenn sich der Anwendungsdomänenname ändert,
sind die Dateien nicht mehr zugänglich.

Code: Alles auswählen

CreateFile(0, "FileName", @Callback(), #PB_LocalStorage)
OpenFile(0, "FileName", @Callback(), #PB_LocalStorage)
ReadFile(0, "FileName", @Callback(), #PB_LocalStorage)
Ich hatte noch nicht genug Zeit, um einen genaueren Blick drauf zu werfen, aber ich vermute SpiderBasic nutzt dafür diese Technik: Web Storage

Re: Ist SpiderBasic gestorben?

Verfasst: 21.07.2018 10:15
von Mijikai
Mir gefällt SpiderBasic allerdings fehlen mir noch zu viele Dinge.
Gäbe es eine Lizenz die 5x teurer wäre - dafür aber alle zukünftigen
Versionen einschließt hätte ich mir schon eine Lizenz geholt.

Mein eigentlicher Wunsch wäre jedoch PureBasic mit ARM-Support und
modernen Web-Features dafür würde ich auch sehr tief in die Tasche greifen.

Re: Ist SpiderBasic gestorben?

Verfasst: 21.07.2018 10:43
von RSBasic
Die Entwicklung könnte eventuell demnächst verbessert werden: https://www.purebasic.fr/english/viewto ... =7&t=71026
Wenn die vorgeschlagene Idee mit dem Bezahlsystem umgesetzt wird, wäre das klasse.

Re: Ist SpiderBasic gestorben?

Verfasst: 21.07.2018 13:37
von TroaX
RSBasic hat geschrieben:Die Entwicklung könnte eventuell demnächst verbessert werden: https://www.purebasic.fr/english/viewto ... =7&t=71026
Wenn die vorgeschlagene Idee mit dem Bezahlsystem umgesetzt wird, wäre das klasse.
Wobei ich dazu sagen muss, das es hier in dem verlinkten Thread jetzt um Purebasic geht und viele dort anscheinend sehr ... merkwürdige Ansprüche haben. Viele sind dort der Meinung, das man die Sprache erweitern sollte (mehr OOP etc.). Ich kann aber aus Erfahrung mit zum Beispiel VB.NET sagen, das OOP mit der Basic-Syntax einfach unglaublich unübersichtlich ist und mich ständig dazu treibt, doch lieber mit C# zu arbeiiten. Das dürfte übrigens auch wahrscheinlich der Grund sein, warum Microsoft einen größeren Fokus auf C# legt und auch der Sprachumfang von C# deutlich umfangreicher ist.

BASIC und seine Syntax ist nie dafür konzeptioniert worden, solch komplexe Ausmaße anzunehmen und allein nur durch das fehlen der Klammern macht das ganze sehr unübersichtlich (FreeBasic ist für mich eine einzige Katastrophe <- gerade wegen OOP). Prozedural ist das ganze noch erträglich. Aber mit steigender komplexität wird es unübersichtlich. Daher ist der Ansatz, sich nur um Optimierungen der Sprache und die Bibliotheken zu kümmern garnicht so verkehrt. Blöderweise konzentrieren sich Fred und Timo viel zu stark auf zum Beispiel die 3D Bibliothek und gehen sehr vielen Wünschen aus dem Weg. Ob es nun um ein Fullfeature-HTTP, MariaDB Anbindung, besseres SMTP, das fehlende IMAP und POP3 oder anderen eigentlich heute selbstverständlichen Funktionen geht (Kommunikation ist heute alles). Alles wurde schon mehrmals im englischen Forum vorgeschlagen. Aber entweder kam garnichts, es wurde nur stiefmütterlich nachgebessert (z.B. HTTP) oder jemand aus dem Forum fühlte sich ganz schlau und zeigte einem, wie man das ganze manuell mit einer externen Bibliothek einbinden kann (was natürlich dazu führt, das die Entwickler denken, das die Sache damit erledigt sei). Theoretisch könnte man dann auch alle Bibliotheken entfernen und sagen, das es auch zu Fuß geht. nur dann wäre Purebasic schon vor Jahren fertig gewesen.

Um es also kurz zusammenzufassen. Wenn ich also eine schnelle Sprache für gute und schnelle Ergebnisse haben möchte, dann setze ich Purebasic ein (und das noch viel viel viel öfter, wenn die fehlenden Libs endlich mal drin wären). Wenn ich OOP und komplexe Projekte mit mehreren angehen will, dann nehme ich da auch eine Sprache, die verbreitet ist und auch übersichtlich gestaltet wurde. Und das wäre für mich nie ein BASIC. Nicht einmal VB.NET. Man sucht sich das richtige Werkzeug für den Einsatzzweck. Wenn ich einen Nagel in die Wand hauen will, nehme ich ein Hammer. Wenn ich einen Baum fällen will, nehme ich eine Motersäge. Aber ich schraube nicht an einen Hammer eine Motorsäge.

Re: Ist SpiderBasic gestorben?

Verfasst: 21.07.2018 22:50
von Beefi
Hi,

@Kiffi:
Das mit der Datenbank wäre eine Idee, darauf bin ich noch gar nicht gekommen. Hab mir das mal grob angeguckt und dabei jedoch festgestellt, dass das Thema Datenbank in der Hilfe unvollständig ist.
In der Onlinehilfe (die ja eigentlich aktueller sein sollte), ist die Rubrik Database noch nicht einmal vorhanden :roll: Muss ich mal nochmal genauer ansehen...

@Sicro:
Wow, das ist wahrscheinlich genau das, was ich suchte. Ich hab den Text in den Flags über #PB_LocalStorage irgendwie völlig übersehen.
Das werde ich so schnell wie möglich testen und berichten :allright:


Zu der Lizenzsache:
Ich finde sie bei Spiderbasic sehr unvorteilhaft gewählt (zumindest in der aktuellen Phase). Wenn man es kauft, beinhaltet dies ein Jahr lang Updates. Jetzt ist schon bald ein Jahr vergangen, und es wurde noch nichts an der eigentlich noch unfertigen Software weiterentwickelt. Und vor Version 2.20 konnte man Spiderbasic ja glaub ich noch gar nicht wirklich einsetzen (bei gleichem Lizenzmodell)...da war es eher noch zum reinschnuppern (wenn ich mich da recht erinnere).
Wäre Spiderbasic etwas weiter (mehr Funktionen, deutsche Hilfe und ne einfache Möglichkeit für die Signaturgeschichte bei Apps), dann fände ich die Lizenz schon ok. Die von Purebasic finde ich fast schon zu ok :)
Ein einfacher Vergleich zu B4A...es kostet 59 $ und man bekommt 2 Monate Updates. Diese 2 Monate sind schon ulkig wenig, aber in diesem Fall macht es mir gar nichts aus, weil der Stand von B4A schon so weit ist, dass man eigentlich alles machen kann, was ein Smartphone bietet.

Zur Weiterentwicklung von PureBasic:
Ich bin kein wirklicher Fan von reinem OOP, aber es gibt oft den Fall, wo ich mir OOP-ähnliche Sprachmittel wünsche...einfach um es übersichtlicher zu halten.
Um es genauer auszudrücken...ich fand es damals bei Visual Basic 6 absolut perfekt :mrgreen: VB6 hat genau diese Sprachmittel, ohne reinrassiges OOP zu sein.
VB6 hatte dafür aber auch viel Kritik einstecken müssen...aber eher von Programmierern von Konkurrenzsprachen. Wer es selbst einsetzte, dem gefiel es meist sehr...es war halt einfach :D
Achja, und auch ich wünschte mir gerne eine ARM-Version von PureBasic...das war auch der Hauptgrund, warum ich oft bei Spiderbasic reinschnupper (Raspberry und Co...).
Da Spiderbasic jedoch als Nicht-Smartphone-App NOCH WENIGER Funktionen hat, konnte ich mir das erstmal abschminken.

LG,
Andi

Re: Ist SpiderBasic gestorben?

Verfasst: 22.07.2018 09:16
von RSBasic
Vielleicht sollten sich Timo und Fred "trennen". Ich meine. einer ist nur für PB und der andere nur für SB zuständig. So können beide Produkte parallel weiter entwickelt werden, ohne dass das andere Produkt pausiert wird. Oder man muss einen weiteren Entwickler einstellen. Wenn man das Lizenzmodell von PB umstellt oder/und das optionale Bezahlsystem für Funktionserweiterung (nicht OOP, sondern Funktionen) bereitstellt, kann man man sich einen weiteren Mitarbeiter leisten.

Re: Ist SpiderBasic gestorben?

Verfasst: 22.07.2018 17:58
von Kurzer
RSBasic hat geschrieben:...Oder man muss einen weiteren Entwickler einstellen. Wenn man das Lizenzmodell von PB umstellt oder/und das optionale Bezahlsystem für Funktionserweiterung (nicht OOP, sondern Funktionen) bereitstellt, kann man man sich einen weiteren Mitarbeiter leisten.
Man muss ja nicht einmal einen Mitarbeiter fest anstellen. Es genügt jemand mit der passenden Programmiererfahrung, der die von Fred freigegeben Userwünsche als freelancer Auftrag-basiert abarbeitet. Die Sache mit der Geheimhaltung von PB-Internas, Nichtweitergabe von Quellcode usw. muss dann mit dem freien Mitarbeiter vertraglich vereinbart werden. Ein freelancer muss halt nicht bezahlt werden, wenn es gerade nichts zu programmieren gibt.

Ich denke es gibt hier sicherlich auch Leute, die in den betreffenden Bereichen arbeiten und Fred bzgl. der Absicherung und der Vertragsgestaltung unterstützen können.

Re: Ist SpiderBasic gestorben?

Verfasst: 22.07.2018 22:56
von Micha122
Oje der arme Fred....... So kommt das hier leider rüber. :oops:

Fakt zu SpiderBasic ist:
Er hätte mit SpiderBasic längst Geld verdienen können.
Er hätte lediglich weiter dran arbeiten müssen und eine neue Version herausbringen müssen. :wink:
Ohne Fleiß kein Preis. :bounce:


Zu PureBasic:
RSBasic hat geschrieben: Wenn man das Lizenzmodell von PB umstellt oder/und das optionale Bezahlsystem für Funktionserweiterung (nicht OOP, sondern Funktionen) bereitstellt, kann man man sich einen weiteren Mitarbeiter leisten.
Ich wäre gerne bereit 50-100€ jährlich für ein "gepflegtes" PureBasic auszugeben.
Schaue ich mir aber die geplanten Features der nächsten Final an, wird das wohl nix. :cry:

Grüße

Re: Ist SpiderBasic gestorben?

Verfasst: 22.07.2018 23:19
von Beefi
Hi,

also ich habe die Geschichte mit den lokalen Dateien getestet.
Eins vorweg...es funktioniert im Grunde (am PC). Zum Test unter Android kam es nicht...mir ist vorher der Geduldsfaden gerissen.

Alsooo...unter Firefox konnte ich das ganze völlig vergessen. Ich habe den Browser so konfiguriert, dass er beim Schließen den Cache und weiteren Kram löscht. Und das wollte ich nicht ändern.
So kam der Internet Explorer zum Zuge...auch hier gab es teilweise Probleme. Die gespeicherten Dateien waren manchmal da, manchmal nicht. Ich habe ihn dann ohne Erweiterung gestartet...und das würde ich jedem raten, so auch direkt in Spiderbasic einzustellen.
Unter Preferences -> Compiler muss hier bei "Web browser" folgendes eingetragen werden: "C:\Program Files\Internet Explorer\iexplore.exe" -extoff
Die Anführungszeichen müssen genauso gesetzt werden...und -extoff muss außerhalb der Anführungszeichen stehen!

In der Hilfe (nicht online, nur in der IDE :? ) gibt es ein Beispiel "FilePersistent.sb" welches die Grundzüge ein wenig darstellt.
Ich würde aber auch das Beispiel "File.sb" durchkauen wie man normalerweise Dateien öffnet und vor allem die beteiligten Anweisungen studieren.
Wichtig ist hier CreateFile(), OpenFile(), ReadFile(), ReadString(), OpenFileRequester().
Aufpassen...der Vorgang läuft hier anders ab als bei PureBasic...und zwar ungemütlich anders!

Um es auf den Punkt zu bringen...
Nur um eine einfache Textdatei auszulesen, muss man erstmal ein Schlachtfeld aus lauter Callbacks aufbauen und weiß dann auch gar nicht mehr, was wirklich passiert. Mir kommt das so unkontrolliert und völlig unübersichtlich vor.
Es läuft folgendermaßen...wenn man eine Datei öffnen will, erstellt man eine Prozedur, in der ein File-Requester geöffnet wird (nicht mehr). Diese Prozedur muss mit dem GadgetEvent (z.B. ein Button) gebunden werden. Event-Abfragen wie in Purebasic sind laut Hilfe dringend abgeraten und sie funktionieren auch nicht wirklich, da man zum Öffnen der Dateien (aus Browser-Sicherheitsgründen) eben diese Bindings braucht.
So weiter...diese FileRequester-Prozedur muss dann anschließend eine Callback-Prozedur aufrufen, in der nichts weiter gemacht wird, außer per ReadFile() eine weitere File-Read-Callback-Prozedur aufzurufen :freak: So und in dieser letzten Prozedur kann man dann auf nochmals verumständlichte Art und Weise endlich die Datei auslesen.

Also um einen Buchstaben aus einer Datei zu lesen, braucht man:
1. Ein Binding im Hauptcode
2. Eine OpenFileRequester-Prozedur
3. Eine FileRead-Callback-Prozedur
4. Eine ReadString-Callback-Prozedur

Die ReadString-Callback-Prozedur muss noch einen bestimmten Aufbau haben, weil ihr aus Geisterhand Parameter übergeben werden (Status, Filename$, File, Size).
Wer also denkt, er schmeißt diese Prozeduren in eine zusammen, der irrt sich also...ich habe es selbst probiert. Das Programm läuft dann völlig unkontrolliert ab...Endlosschleifen, mehrere Ausführungen von Prozeduren (obwohl codetechnisch unmöglich), fehlende Buchstaben, usw...
Ich habe gemerkt, dass das Programm mit dem Ausführen eines Callbacks leicht außer Kontrolle geraten kann. Es wird ab diesem Zeitpunkt selbstständig und das Programm läuft nicht mehr nach der Regel ab...als würde man lauter Threads parallel starten, die aber alle auf die gleichen Variablen zugreifen...man kommt da nur dahinter, indem man überall Debug-Anweisungen setzt.

Zum Schluss:
Da ein Öffnen und Speichern von lokalen Dateien sehr unsicher ist (also vor Datenverlust), nutze ich es doch nicht. Zudem muss der der Name der Datei bekannt sein, wenn man sie öffnen will. Mit dem OpenFileRequester geht das nicht.
So, und die Standardmethode zum Öffnen anderer Dateien hat mich so umgehauen, dass ich Spiderbasic erstmal doch wieder pausieren werde. Es ist einfach nicht so effektiv wie PureBasic...im Grunde funktioniert es intern ganz anders. Und für meine Zwecke taugt es einfach nicht so.

Ich hoffe, ich habe jetzt nicht zu zerstreut geschrieben und konnte meine Erfahrung einigermaßen rüberbringen... :lol:

Re: Ist SpiderBasic gestorben?

Verfasst: 23.07.2018 12:12
von NicTheQuick
Dateien ohne Upload mit Javascript zu öffnen oder ohne Download auf die Festplatte zu schreiben ist natürlich nicht ohne Grund verboten. Da kann auch Spiderbasic nichts dagegen tun. Dahinter ist schließlich auch nur Javascript. Deswegen ist es klar, dass du da solche Probleme hast.

Oder ich hab das Problem doch noch nicht ganz verstanden.