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.
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! –
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
+1 für den letzten Absatz. –