PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : $include code direkt einbinden möglich?



Accenter
18.11.2013, 09:56
ich habe einen bascom code aus dem netz geladen. hier wird an einer stelle im hauptprogramm ein anderer code mit $include "3310init.bas" hinzugefügt.

kann ich diesen "3310init.bas" code einfach an dieser stelle ins hauptprogramm einfügen?
ich hätte gerne alles beisammen und nicht in mehreren .bas files verteilt.
ist das machbar?

ps: falls jemand eine lib für das nokia 3310 lcd hat, könnte ich diese gerade sehr gut brauchen :-)

shedepe
18.11.2013, 17:29
Auch wenn ich kein Bascom kann, kann ich aus der Sicht eines C-Programmierers sagen, dass das schlechter Stil ist. Aus Compilersicht wird das zwar auch in Bascom möglich sein, aber man hat nicht umsonst Modularisierung erfunden....

Accenter
18.11.2013, 17:40
was wäre hierbei der nachteil? lerne ja gerne dazu.

Peter(TOO)
18.11.2013, 19:41
Hallo,

Grundsätzlich ist include eine Art Kopierfunktion, welche einfach den Text in der Datei an dieser Stelle einfügt.

Stichwort Modularisierung

Du schreibst z.B. den Code um ein bestimmtes LCD anzusteuern.
Diesen Code brauchst du in mehreren Programmen.
Und nun findest du einen Bug.
Wenn das Modularisiert aufgebaut ist, änderst du das genau einmal im Code und compilierst alle Programme neu.
Andernfalls musst du in jedem Programm die Änderung durchführen.

oder

Das verwendete Display ist nicht mehr lieferbar und der Ersatz verwendet einen anderen Controller.


Ein anderer Punkt ist die Kapselung.
Wenn so ein Modul stabil ist, hast du eine festgelegte Schnittstelle, was im Modul ist kümmert dich nicht mehr!
Zudem machst du auch wenig Fehler, wenn du z.B. mit "Suchen & Ersetzen" etwas änderst, das ausgelagerte Modul ist dann davon nicht betroffen.

Ich kenne dein BASIC nicht, aber z.B. in C kann man solche Module dann sogar getrennt übersetzen und als Bibliotheks-Funktion verwenden.

Bei Programm mit ein paar 100 Zeilen ist da a Stück noch handhabbar, aber wenn du mal Programme schreibst welche aus 1'000den oder 10'000den Zeilen besteht, bekommst du das als ein Text nicht mehr gehandhabt.

MfG Peter(TOO)

Accenter
18.11.2013, 20:08
danke für die gute erklärung. ich denke es wird auch mit bascom funktionieren, dass ich den code dort einfach reinkopiere. mein programm ist recht überschaubar noch :-)