Autor Beitrag
Csharp-programmierer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 696
Erhaltene Danke: 10

Windows 8.1
C# (VS 2013)
BeitragVerfasst: Di 03.05.16 13:41 
Hallo,
ich habe mich in letzter Zeit über Klassenbibliotheken informiert. Meine Frage: lohn es sich bzw. ist es Sinnvoll für mein Webstudio eine .dll zu entwickeln? Dass könnte ich alle UserControls und deren Algorithmen in einer .dll speichern, und dann in Projekt selbst aufrufen, was die Übersichtlichkeit in VS deutlich erhöht. Also was haltet ihr von der Idee?

Mit freundlichen Grüßen,
Yannic M.


Moderiert von user profile iconChristian S.: Topic aus Basistechnologien verschoben am Di 03.05.2016 um 14:07

_________________
"Wer keinen Sinn im Leben sieht, ist nicht nur unglücklich, sondern kaum lebensfähig" - Albert Einstein
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Di 03.05.16 14:07 
Hallo,

also ein Trennung macht IMHO nur dann Sinn, wenn sie entlang der Grenze zwischen Programmlogik und -darstellung erfolgt.

Das heißt, die Programmlogik kommt in die Bibliothek und die Darstellung (da gehören dann UserControls dazu) kommt in die Anwendung. Damit kannst Du die Bibliothek zum Beispiel auch weiter verwenden, wenn Du die UI mal austauschen willst (zum Beispiel Umstieg auf WPF). Gleichzeitig erzieht einen das auch dazu, Logik und Darstellung sauber zu trennen.

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Csharp-programmierer Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 696
Erhaltene Danke: 10

Windows 8.1
C# (VS 2013)
BeitragVerfasst: Di 03.05.16 15:14 
Zitat:
Das heißt, die Programmlogik kommt in die Bibliothek und die Darstellung (da gehören dann UserControls dazu) kommt in die Anwendung. Damit kannst Du die Bibliothek zum Beispiel auch weiter verwenden, wenn Du die UI mal austauschen willst (zum Beispiel Umstieg auf WPF). Gleichzeitig erzieht einen das auch dazu, Logik und Darstellung sauber zu trennen.


Kann man nicht auch die UserControls und die dazugehörigen Klassen zusammen in eine .dll Packen? Oder warum ist die Trennung so wichtig?

_________________
"Wer keinen Sinn im Leben sieht, ist nicht nur unglücklich, sondern kaum lebensfähig" - Albert Einstein
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Di 03.05.16 15:35 
Die Trennung von Anzeige und Logik hat unter anderem den Sinn, dass man beides getrennt voneinander verändern kann, ohne das jeweils andere anzufassen. Du kannst Deine UI ändern, aber die Logik behalten, Du kannst aber auch die Logik ändern (zum Beispiel wie Daten gespeichert werden), ohne die UI anzufassen (so lange die Interfaces gleich bleiben). Außerdem machst Du durch die Entkopplung die Logik leichter testbar, zum Beispiel durch Unit Tests.

Wenn Du jetzt die UserControls wieder zur Logik packst, macht die ganze Trennung keinen Sinn. Es erhöht in keinster Weise die Wiederverwendbarkeit und verleitet nur wieder dazu, die Logik auf diese UserControls zuzuschneiden, anstatt sie unabhängig von einer spezifischen UI zu gestalten.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Csharp-programmierer Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 696
Erhaltene Danke: 10

Windows 8.1
C# (VS 2013)
BeitragVerfasst: Di 03.05.16 16:35 
Ah okay :)
Ich verstehe es.
Ich füge eine Bibliothek über Verweise hinzu und dann in den Using Block. Ich habe aber mal was von [DllImport("...")] gesehen. Kann man dies dafür auch nehmen?

_________________
"Wer keinen Sinn im Leben sieht, ist nicht nur unglücklich, sondern kaum lebensfähig" - Albert Einstein
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Di 03.05.16 16:41 
user profile iconCsharp-programmierer hat folgendes geschrieben Zum zitierten Posting springen:
Ich füge eine Bibliothek über Verweise hinzu und dann in den Using Block. Ich habe aber mal was von [DllImport("...")] gesehen. Kann man dies dafür auch nehmen?
Das brauchst Du hier nicht, weil Du ja .NET-Bibliotheken erstellst. Mit DLLImport bindest Du Funktionen aus "alten" Win32-Bibliotheken in Dein Programm ein.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".