 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
ulib
Anmeldungsdatum: 10.03.2007 Beiträge: 4
|
Verfasst am: 19.01.2008, 17:02 Titel: Warum aus "bas" Datei eine "exe" Datei c |
|
|
Ich habe vor jahren ein QB Programm geschrieben, das ich auch noch heute, unter WIN 2000, benutze.
Jetzt habe ich davon gelesen, dass man mit einem Compiler Programm
eine "eigenständige" Datei erstellen kann.
Allerdings verstehe ich nicht ganz, welche Vorteile das für mich hat ?
Kann mir das bitte jemand erklären ?
Ich zieh das Ganze einmal von hinten auf, und liste die Nachteile, die ich heute mit meinem Programm habe auf:
Es läßt sich nur umständlich beenden und starten.
(zuerst in den Programmiermodus, dann F5, bzw erst im Programmiermodus "Beenden."
Wird das dann besser , oder verstehe ich grundsätzlich etwas falsch _________________ ulib |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 19.01.2008, 17:10 Titel: |
|
|
Ich vermute mal, dass du das Kompilieren zu einer EXE-datei meinst.
EXE-Dateien haben nunmal den Vorteil, dass der Anwender kein Quickbasic benötigt, um das Programm auszuführen, es somit leichter zu verbreiten ist. Auch sind kompilierte EXE-Dateien um ein vielfaches schneller als interpretierte BAS-Dateien (in QuickBasic).
Ob diese beiden Argumente ein Vorteil für dich als Entwickler sind, kann ich allerdings nicht sagen. Ich weiß ja nicht, inwiefern du an die Entwicklungsumgebung gebunden ist. Wenn du unter Windows arbeitest ist das starten einer EXE-Datei doch wirklich nicht mehr "umständlich"... Mit ALT+TAB einfach in den Explorer switchen und dort die EXE aufrufen, fertig... Natürlich sollte man nicht grundsätzlich im EXE-modus starten (ist aber unter umständen nötig, bei großen Projekten), sondern erst, wenn man das Programm veröffentlicht und die EXE zum Weitergeben erstellt. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Heizi

Anmeldungsdatum: 19.01.2005 Beiträge: 309
|
Verfasst am: 19.01.2008, 23:53 Titel: |
|
|
dem könnte man noch hinzufügen, dass andere Leute denen du das Programm gibst, den Quellcode nicht sehen können. OK,
Open Source ist natürlich besser als Closed Source
aber jemand der keine Ahnung hat kann da ganz schnell mal was kaputtmachen^^
Hmmm das mit dem umständlich starten fällt bei ner exe natürlich weg,
einfach draufklicken....
das mit dem Beenden mustte natürlich zuerst einprogrammieren, zB
so:
Code: |
do
t$ = INKEY$
SELECT CASE t$
CASE CHR$(27): END
END SELECT
LOOP
|
außerdem wird das Programm automatisch beendet wenn es
ganz am Schluss des Quellcodes angelangt ist, genau wie beim QB Interpreter auch^^
MfG |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 20.01.2008, 00:15 Titel: |
|
|
Heizi hat Folgendes geschrieben: | OK, Open Source ist natürlich besser als Closed Source |
das ist jetzt imho ein vergleich à la "Äpfel schmecken besser als Birnen", aber das ist jetzt offtopic  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Lutz Ifer Grillmeister

Anmeldungsdatum: 23.09.2005 Beiträge: 555
|
Verfasst am: 20.01.2008, 11:43 Titel: Re: Warum aus "bas" Datei eine "exe" Dat |
|
|
ulib hat Folgendes geschrieben: | Allerdings verstehe ich nicht ganz, welche Vorteile das für mich hat ? Kann mir das bitte jemand erklären ? |
Mit einfachen Worten:
QBasic ist eine sogeannte "Interpretersprache" - dh. neben dem Quelltext wird der Interpreter ("das ausführende Organ", also die qbasic.exe) benötigt. Diese qbasic.exe ließt dann die bas-Datei, und handelt entsprechend ("interpretiert" den Inhalt).
Vorteile: Quellcode ist jederzeit einsichtig, änderbar, bei Fehlern kann direkt die fehlerhafte Stelle ausfindig gemacht werden (und ist wesentlich direkter auf andere Systeme / Betriebssysteme / Rechnerarchitekturen portierbar, aber das wird wahrscheinlich eher zweitrangig sein).
Nachteile: die qbasic.exe wird immer benötigt, der Quelltext des Programmes ist von Jedem einsehbar, änderbar, "klaubar", und nicht zuletzt: Dadurch dass das Programm bei jedem Aufruf neu "interpretiert" werden muss, ist das Programm vergleichsweise langsam.
Das Programm zu "Compilieren", dh in "Maschinencode" zu verwandeln setzt den Quelltext direkt in vom Prozessor lesbare Anweisungen um.
Vorteile: Die entstehende Programmdatei ist direkt startbar, ohne den Interpreter (kann also auch an dritte weitergegeben werden, die (in diesem Falle) die qbasic.exe-Datei nicht haben), der Quelltext ist per-se nicht einsehbar (Ausser du legst die Datei explizit nochmal bei, aber die Lizensierungsgeschichte ist ein anderes paar Stiefel), das Programm ist wesentlich schneller in der Ausführung.
Nachteile: Die gleichen Punkte wie unter "Vorteile": Der Quelltext ist nicht mehr direkt einsehbar, also im Falle eines Fehlers kann nicht mehr unmittelbar gesagt werden, woran der Fehler liegt, das entstehende Programm kann nur von Personen mit gleicher Rechnerarchitektur / kompatiblen Betriebssystem benutzt werden (in diesem Falle also Intel/AMD 8086/64 Prozessoren und ein Betriebssystem aus dem Hause Microsoft), auf einem APPLE-Computer könnte ich dieses Programm zum Beispiel nicht ausführen, unter LINUX hätte ich (ok, ich persönlich jetzt nicht, Wine sei dank) große Probleme.
Alle Klarheiten beseitigt?
Lutz Ifer _________________ Wahnsinn ist nur die Antwort einer gesunden Psyche auf eine kranke Gesellschaft. |
|
Nach oben |
|
 |
dreael Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 2529 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 20.01.2008, 17:09 Titel: |
|
|
@ulib:
Aus Deinen Ausführungen heraus erkenne ich, dass Du Dich inzwischen an einige spezifische Merkmale der Interpreter-Laufzeitumgebung wie beispielsweise jederzeit mit Ctrl+Break das Programm stoppen gewöhnt hast.
Sonst zu Deiner Frage: Aus meiner Sicht sind beide Umgebungen sinnvoll: Testen und Debuggen würde ich im Interpretermodus, wo Du quellcodebezogene Laufzeitfehlermeldungen bekommst und Variablenwerte im Direktmodus abfragen kannst. Sobald es gut läuft, eine selbständige .EXE für die Verteilung (Deployment) davon erstellen. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|