Seite 1 von 1

PureBasic - Die Grenzen des Wachstums

Verfasst: 24.01.2010 00:54
von Josh
eigentlich finde ich pb ja als eine super programmiersprache. einfach zu erlernen, schnell und lässt einem irre möglichkeiten offen.

bei einem bischen größeren projekt muss man sich halt dann selber überlegen, wie man das ganze organisiert um nicht einen einzigen undurchblickbaren sauhaufen zu bekommen. ich habe meinen code in mehrere include-dateien aufgeteilt, wo jeweils zusammengehörige sachen auch in einer datei sind.

das erste problem sind schon die proceduren, die ich nicht anordnen kann wie ich will. ok, das lässt sich noch mit declarationen umgehen, aber ich weiß nicht, wie oft ich durch vergessene änderungen in der deklaration schon fehlermeldungen bekommen habe. also wieder ganz bis oben raufscrollen, korrigieren und dann wieder runter und suchen wo man eigentlich war.

das nächst sind die strukturen, da habe ich etliche in meinem programm. diese habe ich auch in die einzelnen includedateien geschrieben, wo sie sachlich hingehören. da das programm aber auch keine einbahnstraße ist, brauche ich mal eine der strukturen in anderen includes. bei den ersten meldungen habe ich mir noch durch eine andere anordnung, wie die dateien includiert werden, aushelfen können. aber langsam komme ich zu dem punkt, wo sich die katze selber in den schwanz beißt und ein umordnen nichts mehr hilft.

sicher könnte man argumentieren, dass ich die ganzen deklarationen, strukturen, konstanten ganz am anfang in das programm schreiben. aber ab einem gewissen programmumfang kann man dann von einer sinnvollen aufteilung nicht mehr sprechen.

schade, dass pb nicht einen präcompiler verwendet, der das ganze in einem ersten durchlauf erst mal checkt :cry:

Re: PureBasic - Die Grenzen des Wachstums

Verfasst: 24.01.2010 01:07
von STARGÅTE
Josh hat geschrieben:sicher könnte man argumentieren, dass ich die ganzen deklarationen, strukturen, konstanten ganz am anfang in das programm schreiben
Ja das wäre auch mein Argument.

Wenn man eine Structure nur in einem speziellen Include brauch kann es ja dort bleiben,
wird eine Structure in mehreren Includes gebraucht, dann gehört es halt in eine art Main-Include oder so ...

Ich erstelle (wenn überhaupt) spezielle Includes für ein Programm so: Inlcude für : Structuren, Konstanten usw.

Allgemein nutze ich Includes aber nur als feste Standard-Datein, die ich fast nie ändere, für Programme nutze ich lieber nur eine PB-Datei und arbeite mehr mit dem Werkzeug: Prozedurliste wo ich auch Kommentare eintragen lassen kann und damit auch Orte von Structuren markieren kann ...

Re: PureBasic - Die Grenzen des Wachstums

Verfasst: 24.01.2010 02:03
von Thorium
Machs einfach wie bei C. Nutze für deine Strukturen und Konstanten Headerdateien. Also Includes, welche nur Struktur- und Konstantendeklartionen haben. Diese Headerdateien inkludierst zu ganz oben als aller erstes in deiner Hauptdatei. Dann sind die überall verfügbar.

Re: PureBasic - Die Grenzen des Wachstums

Verfasst: 24.01.2010 02:06
von Josh
STARGÅTE hat geschrieben:Wenn man eine Structure nur in einem speziellen Include brauch kann es ja dort bleiben,
wird eine Structure in mehreren Includes gebraucht, dann gehört es halt in eine art Main-Include oder so ...
sicher kann es strukturen geben, die für alle includes gleich gelten. ich würde sie jetzt mal als 'global' bezeichnen. die habe ich dann auch in einer 'main-include'. aber dann gibt es jede menge strukturen, die sachlich ganz eindeutig einer bestimmten include datei zuzuordnen sind und die sollen dann auch dort rein. ich will ja auch noch nach ein paar jahren bei meinem programm durchblicken können und da ist eben 'ein bischen dort, ein bischen da' eben nicht möglich.
STARGÅTE hat geschrieben:Ich erstelle (wenn überhaupt) spezielle Includes für ein Programm so: Inlcude für : Structuren, Konstanten usw.
Thorium hat geschrieben:Machs einfach wie bei C. Nutze für deine Strukturen und Konstanten Headerdateien. Also Includes, welche nur Struktur- und Konstantendeklartionen haben. Diese Headerdateien inkludierst zu ganz oben als aller erstes in deiner Hauptdatei. Dann sind die überall verfügbar.
wird mir wahrscheinlich eh nichts anderes über bleiben, wenn auch nur mit zähneknirschen. reißt halt alles auseinander, was sachlich einfach zusammen gehört. :evil:
genau da sehe ich eben die grenzen von pb. alles andere läßt sich durch eine wirklich konsequente benennung ausgleichen.
STARGÅTE hat geschrieben:Allgemein nutze ich Includes aber nur als feste Standard-Datein, die ich fast nie ändere, für Programme nutze ich lieber nur eine PB-Datei und arbeite mehr mit dem Werkzeug: Prozedurliste wo ich auch Kommentare eintragen lassen kann und damit auch Orte von Structuren markieren kann ...
also meine größte includedatei hat momentan ca. 3000 zeilen und 70 proceduren. das genügt mir eigentlich für eine datei, sonst bin ich schon mit dem scrollen in der procedurliste ausgelastet.

Re: PureBasic - Die Grenzen des Wachstums

Verfasst: 24.01.2010 02:19
von Thorium
Josh hat geschrieben: wird mir wahrscheinlich eh nichts anderes über bleiben, wenn auch nur mit zähneknirschen. reißt halt alles auseinander, was sachlich einfach zusammen gehört. :evil:
genau da sehe ich eben die grenzen von pb. alles andere läßt sich durch eine wirklich konsequente benennung ausgleichen.
Ist nur Gewöhnungssache. Machst du zu jeder Include eine Headerinclude wirds eigentlich nicht auseinandergerissen. Man muss sich nur erstmal drann gewöhnen das Prozeduren und der Rest in getrennten Dateien sind.

Re: PureBasic - Die Grenzen des Wachstums

Verfasst: 24.01.2010 02:20
von HeX0R
Josh hat geschrieben: sicher kann es strukturen geben, die für alle includes gleich gelten. ich würde sie jetzt mal als 'global' bezeichnen. die habe ich dann auch in einer 'main-include'. aber dann gibt es jede menge strukturen, die sachlich ganz eindeutig einer bestimmten include datei zuzuordnen sind und die sollen dann auch dort rein. ich will ja auch noch nach ein paar jahren bei meinem programm durchblicken können und da ist eben 'ein bischen dort, ein bischen da' eben nicht möglich.
Selbstverständlich ist das möglich, du musst dich nur anders organisieren.

Ich z.B. habe immer zwei Includes in meinen Projekten namens "Structures.pbi" und "Constants.pbi".
Dort kommen alle Struktur-Definitionen und Konstanten rein.

Das habe ich mir deswegen mal angewöhnt, weil es mich wahnsinnig macht, wenn ich in einer etwas größeren Prozedur festhänge und dann jedesmal hoch und runter scrollen muss, um eine Konstante und/oder Struktur-Definition zu finden.
So klickt man einfach auf den anderen TAB und wieder zurück.