www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bibliotheken verwalten


Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!

Da ich in die Welt der µC langsam aber sicher immer mehr
hineinwachse, habe ich begonnen wichtige Funktionen,
wie z.B. Ansteuerung eines Temperaturbausteines oder
Treiber für serielle Kommunikation, als
Bibliotheksfunktionen anzulegen.

Und genau aus diesem Grund hoffe ich auf eure Erfahrungen,
im Umgang mit diesen Bibliotheken.

Es ist nämlich so, dass die Bibliotheken in einem eigenen
Verzeichnis abgelegt sind. Die einzelnen Bibliotheken bestehen aus
einem *.c-File, in welchem sich die Funktionen befinden und einem
*.h-File, in welchem sich bestimmte #Defines befinden, die auf das
jeweilige Programm angepasst werden können. Aus diesem Grund muss das
H-File in das jeweilige Programmverzeichnis kopiert werden.
Das C-File jedoch bleibt im Bibliotheksordner. Der
Compiler holt sich das File beim Compilieren einfach.

Was haltet ihr von meiner Architektur? Ist sie zu empfehlen oder
nicht?

Sollte man nicht alle Bibliotheken, die ein Programm verwendet in
das Programmverzeichnis kopieren?
1:
Der Vorteil bei meiner Methode ist, dass wenn ich im
Bibliotheksverzeichnis das C-File verändere, habe ich die aktuelle
Version im Programm, wenn ich es compiliere.

Der Nachteil ist, dass man das Programm nicht so einfach weitergeben
kann, da ja entsprechende Programmteile im Bibliotheksordner stecken.

2:
Wenn ich es jetzt so machen würde, dass ich alle benötigten
Bibliotheken eines Programms direkt in das Programmverzeichnis kopieren
würde, dann hätte eine Veränderung der Bibliotheksfunktion im
Biblhiotheksordner keine Auswirkung auf das Programm, da sich dieses ja
die Bibliotheksfunktion aus dem eigenen Programmverzeichnis holt.

Welche von diesen beiden Methoden wird in der Praxis häufiger angewandt
und wo liegen hier weitere Vor- oder Nachteile? Oder gibt es vielleicht
noch eine dritte, viel bessere Möglichkeit für die Verwaltung der
Bibliotheken?

Danke für eure Antworten.

Tschüss, Martin

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kopiere eigene Bibliothken immer in das Projekt mit rein.

Der Grund ist der, daß bei Änderungen an den Bibliotheken nicht klar
ist, ob dann auch noch alle alten Programme laufen.

So hat man aber die Garantie, daß man immer die original lauffähige
Version eines Projekts hat.
Auch werden damit Änderungen an den Bibliotheken durch die
Versionskontrolle des jeweiligen Projekts erfaßt.


Peter

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast recht, dass ist ein gutes Argument, denn es kann natürlch auch
durch eine nachträgliche Änderung vorkommen, dass plötzlich ein altes
Programm nicht mehr läuft, sich anders verhält oder plötzlich nicht
mehr ins Flash passt.

Erklär mir das bitte mit der Versionskontrolle etwas genauer.

Tschüss, Martin

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.