.NET Entwicklung

.NET Entwicklung

Posts 1-10 of 11
  • User photo
    Andreas Lau
    The company name is only visible to registered members.
    Modulares Projekt
    Hallo Zusammen,

    ich bin noch relativ neu in der .net Gemeinde, daher entschuldige ich mich schon einmal im Vorfeld falls meine Fragen ewtas blauäugig oder naiv erscheinen.

    Ich bin dabei mich in .net einzuarbeiten und habe beschlossen, dies anhand eines Projekts zu machen. Es ist ein Studentenverwaltungssystem (just4fun). Im Endeffekt entsteht dabei eine Desktop-Applikation mit DB-Anbindung. Nun zu meiner Frage. Ich möchte die Strucktur des Programms möglichst Modular aufbauen, so dass ich es später um Funktionen ergänzen oder umgekehrt Funktionen entfernen kann, ohne dass das die Applikation Probleme bekommt.

    Als ersten Ansatz durchdenke ich gerade die Möglichkeit eine SecuritySchicht zu bauen, die in Abhängigkeit zu den Modulen die geladen sind Funktionalitäten freischaltet. Im Zuge dazu hatte ich daran gedacht Klassen und deren Funktionen in Dlls zu Modulen zu gruppieren. Ich dachte in diesem Zusammenhang auch an den Einsatz von Partial Classes.
    Was meint ihr zu diesem Ansatz ist das ein probates Mittel? Gibt es hierfür bessere Techniken in .net? Habt ihr Literaturvorschläge, so dass ich das Thema vertiefen kann?

    Ich bin gespannt. Viele Grüße

    Andreas Lau
  • Post visible to registered members
  • Post visible to registered members
  • Urs Enzler
    Urs Enzler    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re: Modulares Projekt
    Bei Modularisierung von WinForms Applikationen denke ich gleich mal an CAB (Composite UI Application Block) http://msdn2.microsoft.com/en-us/library/aa480450.aspx

    Der CAB bietet die Möglichkeit über eine XML Konfiguration die aktiven Module zu definieren.
  • User photo
    Andreas Lau
    The company name is only visible to registered members.
    Re: Modulares Projekt
    Erst einmal allen vielen Dank für die Antworten und Hinweise.

    Zitat Mathias:
    Wenn es dir lediglich darum geht, Features nach Berechtigung zu aktivieren, überlege dir ein entsprechendes Rollen-/Berechtigungskonzept - wobei die Security zu den vertikalen Services der Anwendung zählen sollte, damit Sie sowohl in GUI, Logik und weiteren Schichten angesprochen werden kann.
    Das ist nicht ganz das, was ich meine. Die Module sollen die Applikation um Funktionen/Fähigkeiten erweitern. Das Beschränken von Zugriffen auf bestimmte Funktionen ist zwar auch geplant, aber das ist unabhängig von den Modulen.

    @Mathias und Tobias:
    Für mein Projekt möchte ich mich bewusst Modular bewegen, weil ich in der Hinsicht noch zu wenig Erfahrungen habe. Ich denke mir, dass ich mit einem kleinen Projekt einfacher modulare Konzepte verstehen und erlernen kann, als wenn ich gleich ein großes Projekt in Angriff nehme.

    @Tobias:
    Gehe ich recht in der Annahme, dass mich dein Hinweis in die Richtung Modularisierung mit DLLs leitet. So dass entsprechend die DLLs meine Module bilden, die, wenn Sie geladen werden, die Applikation um ihre Funktionen erweitern?

    CAB werde ich mir mal anschauen. Im ersten Überblick scheint CAB recht umfangreich und verwirrend. Hierbei besteht für mich die Gefahr dass ich mich in den Weitern dieses Frameworks verliere. Kann mir das Framwork die Konzeption von modularer Softwar näher bringen?

    Kennt ihr weiter gute Modulare Ansätze, in die ich mich einarbeiten kann?

    Vielen Dank, Gruß

    Andreas
  • Post visible to registered members
  • Urs Enzler
    Urs Enzler    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re^2: Modulares Projekt
    CAB ist in der Tat nicht ganz einfach zu verstehen - allerdings lohnt sich meiner Meinung der Aufwand, weil er voller guter Konzepte und Ideen steckt, um ein loose gekoppeltes System von Komponenten zu erhalten.

    Wenn etwas gar unklar sein sollte, gibt es ja genug Foren - wie dieses hier - um Fragen zu stellen :-)

    <Werbung>
    Eine Einführung in Präsentationsform ist z.B. unter http://www.bbv.ch/pdf_files/system_event/2007_%20CAB.pps zu finden, welche die wichtigsten Features beschreibt.
    </Werbung>
  • Robert Mischke
    Robert Mischke    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re: Modulares Projekt
    Vielleicht hilft IoC als Stichwort für Modularisierung:

    Scott Hanselmann hat eine List aller wesentlichen (Container) aus dem .NET Umfeld zusammengestellt:
    http://www.hanselman.com/blog/ListOfNETDependencyInjectionCo...

    Neben Windsor/Microkernel finde ich LinFu besonders spannend (http://code.google.com/p/linfu/).

    Ayende hat einen sehr guten MSDN Artikel geschrieben, da gab es auch ein Security Beispiel:
    http://msdn2.microsoft.com/en-us/library/aa973811.aspx

    Als Einstieg vielleicht ein wenig heavy, aber die Idee über Konfiguration eine Securtiy/Logging/ Whatever Layer zur Anwendung hinzuzufügen oder auszutauschen ist bestechend.
  • User photo
    Andreas Lau
    The company name is only visible to registered members.
    Re: Modulares Projekt
    Vielen Dank für eure Informationen und Vorschläge. Ich werde mir die verschiedenen Ansätze mal genauer anschauen. Es wird zwar eine wenig dauern, aber ich denke letztendlich lohnt hier ein wenig mehr Zeit zu investieren. Zumal es um Pattern geht, die durchaus Sprachunabhängig eingesetzt werden können.

    Viele Grüße

    Andreas
  • Mario Noack
    Mario Noack
    The company name is only visible to registered members.
    Re^2: Modulares Projekt
    In der aktuellen dot Net Pro (05/2009) ist ein Beitrag über "Klassen vom Fließband: Objekte erzeugen mit abstrakten Fabriken". Darin geht es darum, Klassen aus noch unbekannten Libraries nachzulassen per XML-Configurationsfile. Ist recht anschaulich und könnte auch sehr gut passen. Von der Zeitung gibt es auch Probe-Abos...

    Mario Noack