2010-02-09 14 views
8

Ich werde eine ziemlich große/komplexe WinForm-Anwendung wie Paint.NET, SharpDevelop, etc. schreiben. Ich denke, eines der wichtigsten Dinge, um eine solche Anwendung zu bauen, ist das Projekt richtig zu strukturieren, Wartbarkeit zu erhöhen und zu steuern Komplexität.Wie schreibe ich eine große WinForms-Anwendung?

Welche Art von Mustern oder Praktiken zeige ich? Alle Blog-Beiträge, Papiere, Open-Source-Projekte sind willkommen. Ich versuche etwas von SharpDevelop zu lernen, aber es ist ziemlich groß für mich, hineinzugehen.

PS: Ich bin ein erfahrener Programmierer, der früher auf Web-Entwicklung ausgerichtet war (asp.net, Rails, etc.). Daher kenne ich einige Designprinzipien und deren Verwendung bei der Implementierung von Geschäftslogiken. Vielleicht brauche ich jetzt wirklich ein Beispiel, um mit einer WinForm-Anwendung zu beginnen, damit ich erkennen kann, wie man mit den Menüs, Steuerungen und anderen umgehen kann. Ich habe etwas über das MVP-Muster gelernt, bin aber immer noch nicht sicher, eine große/komplexe Anwendung zu starten.

Antwort

4

Bei großen Projekten sind die Methoden und Werkzeuge, die Sie verwenden, genauso wichtig wie das architektonische Design. Sie müssen vom ersten Tag an ein Versionskontrollsystem (wie SVN) einrichten. Außerdem ist es sehr gut, ein Standard-Build-Verfahren zu haben und täglich Builds durchzuführen. Die Erstellungsprozedur sollte das Ausführen aller Tests umfassen, die Sie von Anfang an mit etwas Aufwand implementieren sollten.

In Bezug auf die Struktur, glaube ich, ist die wichtigste Sache, Ihr Projekt in Bausteine ​​mit minimalen Abhängigkeiten voneinander zu teilen. Auf diese Weise können Sie gleichzeitig an einen kleinen Teil des Systems denken und müssen sich nicht mit der ganzen Komplexität auseinandersetzen. Es wird auch helfen, etwas Arbeit an einen anderen Programmierer zu delegieren, wenn Sie diese Chance haben.

Um zu beginnen, empfehle ich, dass Sie zuerst etwas minimal so schnell wie möglich implementieren. Dann arbeite daran, es besser zu machen und Funktionalität hinzuzufügen. Dies wird Sie motiviert halten, da Sie etwas Konkretes haben, mit dem Sie arbeiten können. Außerdem können Sie wichtige Konstruktionsfehler und wichtige Probleme rechtzeitig erkennen, um sie zu korrigieren.

+0

Ich bin ein erfahrener Programmierer früher auf Web-Entwicklung (asp.net, Schienen, etc. Ich kenne also einige Design-Prinzipien und wie man sie bei der Implementierung von Business-Logiken verwendet. Vielleicht brauche ich jetzt wirklich ein Beispiel, um mit einer WinForm-Anwendung zu beginnen o dass ich merke, wie man mit den Menüs, Kontrollen und anderen umgehen kann. Ich habe etwas über das MVP-Muster gelernt, bin aber immer noch nicht sicher, eine große/komplexe Anwendung zu starten. Vielen Dank gleich! –

+0

Treffen Sie zuerst die Entscheidung zwischen WinForms und WPF. WPF hat eine steilere Lernkurve, aber es wird Ihnen eine reichere Benutzeroberfläche geben. Starten Sie die Codierung und machen Sie sich keine Sorgen über MVP- oder MVC-Muster. Versuchen Sie, den UI-Code so weit wie möglich von der Geschäftslogik getrennt zu halten, und das ist es auch. Sie werden niemals selbstbewusst werden, wenn Sie nicht anfangen, etwas zu programmieren, selbst wenn es ein Lieblingsprojekt ist. – kgiannakakis

+0

+1 für den letzten Absatz. –

0

Ich könnte mir vorstellen, dass viele der Techniken, die für eine erfolgreiche Web-Projekte machen zu WinForms Projekte umzusetzen. Starten Sie klein und wachsen Sie die Anwendung inkrementell Versuchen Sie, die gesamte Anwendung zu bauen/arbeiten, während Sie Funktionen nacheinander hinzufügen

Verwandte Themen