Was in Dateien auslagern

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Pebender

Betreff: Was in Dateien auslagern

BeitragSo, Jul 31, 2011 9:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

da ich gerade an meinem allerersten Projekt mit MaxGUI arbeite,
würde mich mal interessieren was ihr so in externe Dateien auslagert??
Wäre es sinvoll Teile eines Menü´s auszulagern?(z.B Dateien laden usw).

mfg Peter
BMax & MaxGUI

Midimaster

BeitragSo, Jul 31, 2011 9:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Was meinst Du mit auslagern?

Sprichst Du von Code-Zeilen, die Du in zweite*.BMX-Dateien auslagern willst und mit Include wieder in den Hauptcode einbinden möchtest?



Oder sprichst Du von Dateien, die erst zur Laufzeit nachgeladen werden sollen?

Ich lade erst zur Laufzeit alle Strings und Texte nach, weil ich mit Localization arbeite und meine Programme in mehreren Sprachen anbiete. Ich verwende persönlich nie DATA-Zeilen, lade also alles solches Zeug lieber von Text-Dateien. Für Programmparameter nutze ich immer ein INI-System.

Pebender

BeitragSo, Jul 31, 2011 10:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

bist du der einzigste den ich mit meinen Fragen nerve ?? Very Happy

Zitat:
Sprichst Du von Code-Zeilen, die Du in zweite*.BMX-Dateien auslagern willst und mit Include wieder in den Hauptcode einbinden möchtest?


ja das meinte ich.

Hast mir aber auch schon weitergeholfen .

THX Peter
BMax & MaxGUI

Midimaster

BeitragSo, Jul 31, 2011 10:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich persönlich verwende sehr viele einzelne BMX-Dateien, die alle mittels INCLUDE in die Haupt-BMX eingebunden werden. Hier mal die ersten code-Zeilen meines aktuellen Projektes Rhythmus-Trainer:

BlitzMax: [AUSKLAPPEN]
Import BaH.RtMidi
Import BaH.Volumes
Import MaxGUI.Drivers
Import BaH.Cairo
Include "Funktionen.bmx"
Include "Konstanten.bmx"
Include "Daten.bmx"
Include "PosTyp.bmx"
Include "Rhythmus.bmx"
Include "FormPara.bmx"
Include "Lizenz.bmx"
Include "CairoPdf.bmx"
Include "Bewertung.bmx"
Include "MDI.bmx"
Include "SchussTyp.bmx"
Incbin "TT1.ZIP"


SeedRnd MilliSecs()



hier mal mit einigen Kommentaren:

BlitzMax: [AUSKLAPPEN]

' zunächst einige Fremdmodule von Brucey:
Import BaH.RtMidi
Import BaH.Volumes
Import MaxGUI.Drivers
Import BaH.Cairo

Include "Funktionen.bmx" ' hier werfe ich alle Funktionen rein, die von vielen Stellen im Code angesprungen werden und auch relativ projektneutral sind. Viele davon kann ich in anderen Prokejten wiederverwenden


Include "Konstanten.bmx" ' hier landen alle Definitionen von GLOBALen Variablen sowie alle [i]Const[/i]


Include "Daten.bmx" ' hier steht jeglicher Code, der irgendwas mit Dateien zu tun hat


' diese enthalten Funktionen für speziell dieses Projekt. Immer gekapselt in einen eigene Typ, ähnlich einer Klasse unter C:
Include "PosTyp.bmx"
Include "SchussTyp.bmx"
Include "Rhythmus.bmx"


' jedes eigene Fenster hat auch ein eigenes BMX: hier die Programmeinstellungen und die Lizenzierung,etc
Include "FormPara.bmx"
Include "Lizenz.bmx"
Include "MDI.bmx"
Include "Bewertung.bmx"


Include "CairoPdf.bmx" ' alle Funktionen die etwas an Cairo senden


'Incbin "TT1.ZIP"
SeedRnd MilliSecs()



Diese Struktur hat sich im Laufe der Zeit als sehr nützlich erwiesen. Gerade wenn die Projekte sehr groß werden, findet man so immer gleich die Code-Stelle

ZEVS

Betreff: Klasse in C?

BeitragSo, Jul 31, 2011 10:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
ähnlich einer Klasse unter C


ich weiß nicht, was du damit meinst.

Pebender

BeitragSo, Jul 31, 2011 11:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Supi,

das bringt mich schon weiter.

thx
BMax & MaxGUI

DaysShadow

BeitragSo, Jul 31, 2011 11:33
Antworten mit Zitat
Benutzer-Profile anzeigen
@ ZEVS:

Ja, reines C hat keine Klassen...und?
Wahrscheinlich meinte er C++ und ansonsten kapselst du unter C doch auch Funktionen, Structs usw. entsprechend in einzelne Header und dazugehörige Source Files oder?

Mann mann...
Blessed is the mind too small for doubt

Midimaster

BeitragSo, Jul 31, 2011 12:10
Antworten mit Zitat
Benutzer-Profile anzeigen
@zevs

Genau! Was sollen solche Spitzfindigkeiten? Du weißt doch was ich meine.... Rolling Eyes

"C" ist für mich der Überbegriff für alle C-Dialekte und Nachfolger. Ich gebrauche den Begriff, um damit klar zu machen, dass ich eben gerade nicht von BB oder BMAX spreche(..., wo es ja leider keine Klassen gibt)

BladeRunner

Moderator

BeitragSo, Jul 31, 2011 13:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Mais oui hat Bmax Klassen Wink
Und BB zumindest mal Structs Wink
Aber ich stimme Dir zu, Midimaster, ZEVS Anmerkung war schon recht haarspalterisch.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group