AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Softwareentwicklung im Allgemeinen Projektplanung und -Management Open Sourcing von Komponenten - Best Practices?
Thema durchsuchen
Ansicht
Themen-Optionen

Open Sourcing von Komponenten - Best Practices?

Ein Thema von mquadrat · begonnen am 14. Jan 2015 · letzter Beitrag vom 15. Jan 2015
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#1

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 14. Jan 2015, 10:36
Package oder nicht, hat Vor- und Nachteile.

Wenn Du Units hast, die eigenständig funktionieren, dann finde ich es besser, diese Unit einfach einzeln rauszugeben. Die füge ich dann meinem Projekt hinzu und fertig.
Wenn Du aber Abhängigkeiten zwischen mehreren (vielen) Units hast, dann finde ich es besser, die zu einem Package zusammen zu fassen.
Jens
  Mit Zitat antworten Zitat
Der schöne Günther
Online

Registriert seit: 6. Mär 2013
6.210 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 14. Jan 2015, 11:17
Klassen würde ich keine Pre- und Postfixe andichten wollen. Eigentlich wäre dazu der Namensraum da. Da Delphi als billigen Ersatz immerhin Punkte in Unitnamen zulässt könnte man ja immerhin die Benennung der Units reglementieren: CrazyLib.FluxCapacitor.pas mit einem TFluxCapacitor drinnen.

Ein schönes Beispiel dafür finde ich die (leider recht unbekannte) Lib von Cromis.net:
https://www.cromis.net/svn/cromis/lib/pas/CromisCode
  Mit Zitat antworten Zitat
Insider2004
(Gast)

n/a Beiträge
 
#3

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 14. Jan 2015, 12:05
Packages nur bei visuellen Komponenten in der K-Leiste. Alles andere ist Käse. Da gibt's Leute die machen aus jeder Prozedur eine Komponente.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.053 Beiträge
 
Delphi 12 Athens
 
#4

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 14. Jan 2015, 21:10
Packages nur bei visuellen Komponenten in der K-Leiste. Alles andere ist Käse.
Sehe ich anders. Wir haben unsere Units in Packages gesteckt und kompilieren diese mit definierten Ausgabeverzeichnissen für die jeweiligen Plattformen. Der Bibliothekspfad ist entsprechend nur auf ein einziges Ausgabeverzeichnis (mit Platzhaltern für die Plattform) gesetzt. Die Suchpfade führen zu allen Quelltextunits.

Kompiliert wird das ganze per Batchdatei.

Auf diese Weise hat man die Quelltexte sauber von den kompilierten Units getrennt. Und die Units werden auch nicht dauernd unnötig neu kompiliert...
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 14. Jan 2015, 22:53
Der Vorteil von einem Package für eine Bibliothek ist die gesparte Zeit beim Kompilieren, da die Units ja schon kompiliert vorliegen.

Aufpassen muss man nur, dass man nicht den Debug-Code in die Anwendung bekommt. Darum erzeuge ich die DCU-Dateien immer im Verzeichnis "lib\DELPHI-VERSION\$(Platform)\$(Config)" und erzeuge die Dateien für alle Plattformen jeweils als Release und Debug.

Als Bibliotheks-Pfad dann "lib\DELPHI-VERSION\$(Platform)\Release" und bei Debug-DCU-Pfad "lib\DELPHI-VERSION\$(Platform)\Debug".

Die Suchpfade wie gehabt und der Drops ist gelutscht.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.053 Beiträge
 
Delphi 12 Athens
 
#6

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 15. Jan 2015, 03:33
Ja, genau so. Und in Jenkins, das wir als Buildsystem nutzen, passiert das auch entsprechend automatisiert.

Der einzige echte Nachteil ist, dass man aufpassen muss, wenn man die Units gerade verändert. Denn dann sollen sie ja jedesmal kompiliert werden. Dafür kann man die betreffenden Units einfach temporär dem Projekt hinzufügen, am Ende das Sammelpackage neu erstellen und die Units wieder aus dem Projekt werfen (bzw. die Projektdateien aus dem Repository wiederherstellen).
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#7

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 15. Jan 2015, 07:14
Lässt sich das mit der Delphi-Version auch irgendwie automatisieren?

Im Szenario wäre es ja so, dass wir logischerweise nur die Variante für die Delphi Version, die wir verwenden (aktuell XE2) zur Verfügung stellen. Wir würden also das Projekt zur Verfügung stellen und jeder möge es sich dann selber compilieren. Oder anders formuliert: Ich hätte gern nur eine Projektdatei
  Mit Zitat antworten Zitat
Benutzerbild von NicoDE
NicoDE

Registriert seit: 16. Jul 2012
Ort: Darmstadt
26 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 15. Jan 2015, 09:02
Der einzige echte Nachteil ist, dass man aufpassen muss, wenn man die Units gerade verändert. Denn dann sollen sie ja jedesmal kompiliert werden. Dafür kann man die betreffenden Units einfach temporär dem Projekt hinzufügen, am Ende das Sammelpackage neu erstellen und die Units wieder aus dem Projekt werfen (bzw. die Projektdateien aus dem Repository wiederherstellen).
Wäre es dann nicht einfacher das Package-Projekt in die Projektgruppe aufzunehmen und Abhängigkeiten zu definieren?
Nico Bendlin
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.534 Beiträge
 
Delphi 12 Athens
 
#9

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 14. Jan 2015, 12:11
Klassen würde ich keine Pre- und Postfixe andichten wollen.
Es kommt drauf an.

Ein supergutes Edit sollte man aber nicht TEdit nennen, denn in der VCL IDE gibt es keine Namensräume.
(OK, gibt es, aber nicht im FormDesigner ... Beispiel )
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Der schöne Günther
Online

Registriert seit: 6. Mär 2013
6.210 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: Open Sourcing von Komponenten - Best Practices?

  Alt 14. Jan 2015, 12:44
Klar, an grafische Komponenten habe ich jetzt überhaupt nicht gedacht...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz