Code-Aufteilung

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

rctuner

Betreff: Code-Aufteilung

BeitragSa, März 11, 2006 11:30
Antworten mit Zitat
Benutzer-Profile anzeigen
HI Leute. Bin neu hier im Forum und gleich ne kleine Frage:

Wie sieht euer Spiel vom code her aus? Gerade bei längeren Codes wirds ja ziemlich unübersichtlich. Teilt ihr euren Code immer in mehrere .bb Files? zB die ganzen Funktionen In ein Anderes bb. File?
Wie macht ihr das?

Hab jetzt nämlich das Problem dass mein Code schon sau lang ist und biss ich die gesuchte Stelle finde, vergehen immer ein paar Stunden^^.

Geeecko

BeitragSa, März 11, 2006 11:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
sorry, aber hier gab es schonmal so einen thread^^
aber is ja egal^^ früher habe ich auc h nicht gescuht Embarassed

Ich teile miene codes immer in .bb files auf Wink
die heißen z.b. globale netzwerk und in funnktionen

hamZta

Administrator

BeitragSa, März 11, 2006 12:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Versuch, deine Projekte nach Aufgaben aufzuteilen. Zum Beispiel den Netzwerkkram in die Datei A, Funktionen die den Spieler betreffen in Datei B usw.

Damit erreichst du ziemlich viel Übersicht, vor allem bei Fehlern kannst du leichter abgrenzen, wo diese entstehen.

hamZta
Blog.
 

Ava

Gast

BeitragSa, März 11, 2006 12:32
Antworten mit Zitat
LaLaLa. Also bei mir erhält jedes Objekt und jede Funktionsgruppe eine eigene Datei. Grössere Teilbereiche bringe ich in unterschiedlichen Ordnern unter, und die Includes kommen auch für jeden Teilbereich in eine eigene Datei, so dass ich im Mainsource nur noch diese Include-Dateien aufrufen muss. Für einige mag das alles etwas übertrieben sein... aber ich kann es mir optimaler nicht mehr vorstellen., und komme sehr gut damit zurecht Cool

x-pressive

BeitragSa, März 11, 2006 13:48
Antworten mit Zitat
Benutzer-Profile anzeigen
@rctuner: Du hättest nur ein paar Themen weiter runter scrollen müssen, also bitte erst mal suchen, bevor man das gleiche Thema nur einige Tage später erneut öffnet:

Zum Thread: Code Style

Wie dort schon gesagt, hilft dir folgendes enorm, um dich besser in deinem Code zurechtzufinden:


Einrücken
Einrücken und Leerzeichen sind ULTRA-wichtig! Bei Schleifen, inerhalb Funktionen usw. wird grundsätzlich eingerückt. So erkennt man auf einen Blick, wo das Ding anfängt und wo es wieder endet.

Leerzeichen benutzen, um verschiedene Zeilen optisch so anzupassen:
Code: [AUSKLAPPEN]
   ScaleMesh      Ent_Ship,1000,700,1000
   MoveEntity     Ent_Ship,0,-25,0
   EntityOrder    Ent_Ship,1
   FlipMesh       Ent_Ship
   EntityFX       Ent_Ship,1+8
   PositionEntity Ent_Ship,0,100,0

Sieht viel ordentlicher aus!


Funktionen und Programmabschnitte optisch hervorheben
Über jeder Funktion setzte ich einen Kommentar, der so aussieht:


Code: [AUSKLAPPEN]

; ------------------------------------------------------------------
; FUNCTION: LOAD AND CREATE 3D SCENE
; ------------------------------------------------------------------


Wenn jede Funktion so deutlich gekennzeichnet ist, kann man auch bei schnellem Durchscrollen durch den Code schnell einzelne Funktionen finden.


Codestruktur
Ein kompletter Code ist bei mir so strukturiert:

Konstanten
------------------ (Trennlinie)
Variablen
------------------ (Trennlinie)
Hauptteil
------------------ (Trennlinie)
Funtionen
------------------ (Trennlinie)


Code aufteilen
Wenn ein Code eine bestimmte Größe erreicht, gliedere ich alle Funktionen, die thematisch zusammenhängen in Include-Dateien aus. Beispielsweise alle Funktionen, die das Titelbild betreffen in eine Datei namens "inc_title.bb", alle Funktionen die die Spielerbewegung betreffen in eine Datei namens "inc_movement.bb", alle Funktionen, die Grafikdarstellung betreffen in "inc_render.bb" und so weiter.

Die Hauptdatei wird "main.bb" genannt, damit man auch später noch weiss, welche Datei man öffnen muß, um alles zu kompilieren.

WICHTIG: Wenn man Funktionen in mehrere Include-Dateien aufteilt, sollte man allen Funktionen, die sich in der selben Datei befinden, die gleiche Vorsilbe geben. Beispiel: alle Funktionen, die die Bildschirmanzeige (HUD) betreffen, sammelt man in einer Datei namens "inc_display.bb". Alle Funktionen darin sollten dann mit Display_ beginnen. Das hat den großen Vorteil, das man sofort weiß, in welcher Include-Datei man diese Funktion letztendlich findet.


Dateinamen
Im Media-Ordner kommen schnell viele Dateien zusammen. Auch hier schaffe ich Übersichtlichkeit, indem ich jeder Datei eine Vorsilbe gebe:

snd_buttonclick.wav
snd_gameover.wav
mdl_ship.b3d
mdl_enemy.3ds
gfx_titlelogo.bmp

So werden alle Dateiten im Explorer automatisch sortiert und untereinander angezeigt. Das macht es sehr viel übersichtlicher.
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL
 

antome

!!! gesperrt !!!

BeitragSa, März 11, 2006 13:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Editoren welche den Text falten sind da auch sehr hilfreich.
Versuche es doch mal mit Protean, der ist seit neuestem kostenlos.
antome

Smily

Betreff: Re: Code-Aufteilung

BeitragSa, März 11, 2006 16:17
Antworten mit Zitat
Benutzer-Profile anzeigen
rctuner hat Folgendes geschrieben:
Hab jetzt nämlich das Problem dass mein Code schon sau lang ist und biss ich die gesuchte Stelle finde, vergehen immer ein paar Stunden^^.


ist das jetzt ein wenig übertrieben oder so?

also ein paar Stunden kann ich mir da nicht vorstellen, da es ja auch bei bb eine SuFu gibt.
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

skey-z

BeitragSa, März 11, 2006 17:27
Antworten mit Zitat
Benutzer-Profile anzeigen
wenn ein Fehler auftritt, der sich irgendwo eingeschlichen hat, nützt dir die beste SuFu nihcts, weil du nicht weißt, wo du bei einer misserablen Codestruktur, ihn suchen musst.

Halt dich an die Tipps von x-pressive, so ähnlich mache ich es auch und es ist sehr hilfreich.
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

rctuner

BeitragSo, März 12, 2006 20:27
Antworten mit Zitat
Benutzer-Profile anzeigen
jaja @ Smily0412. Klar wars Ironisch gemeint , man man....
Ich wollte nur ausdrücken das es lange dauert^^.

x-pressive

BeitragMo, März 13, 2006 11:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Viele Editoren zeigen alle Funktionsnamen in einer Liste an -draufklicken, schon bist du dort. Und selbst wenn nicht: STRG+F drücken, Funktionsnamen eingeben, fertig. Wo ist das Problem? Wink
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group