Laden...

Riesen großes Projekt nicht in MVVM geschrieben, ist es zu spät bzw. lohnt es sich?

Erstellt von AnUnknownPerson vor einem Jahr Letzter Beitrag vor einem Jahr 670 Views
A
AnUnknownPerson Themenstarter:in
5 Beiträge seit 2022
vor einem Jahr
Riesen großes Projekt nicht in MVVM geschrieben, ist es zu spät bzw. lohnt es sich?

Hey 😃

ich arbeite an einem großen Projekt (ERP-System) alleine ich bin schon was die Planung angeht sehr weit. Ich schreibe in C# WPF, und mache alles alleine inklusive DB, API, Applikation, UI usw. So daher als ich das geile Projekt angefangen habe, war ich noch nicht auf so einem Wissensstand wie heute und habe einfach los gecodet. Tja, es hieß von anfang an, es ist was kleines und ich mach das Alleine. Naja, es ist halt jetzt ein großes Projekt geworden und ich denke halt an Nachschub, damit ich bzw. wir schneller fertig sind. Naja... Also ich habe das ganze in keinem Muster geschrieben, das heißt es ist nicht Teamfreundlich. Die Sache ist, alles wirklich alles (es sind über 1600h arbeit) jetzt in MVVM zu machen wäre halt gar nicht gut. Es würde zeitlich mir absolut nicht passen.

Ich habe alles eigentlich gleich Aufgebaut (z.B ein Popup ist immer gleich aufgebaut, Es wird immer das gleiche geprüft und gemacht). Ich habe eine sehr detaillierte Codedoku und alles ist erklärt. Und jeden Monat mache ich Verbesserungen an den "fertigen Code" und eig. an allem.

Ist es jetzt nötig, alles in MVVM zu machen? Ich meine, ich habe mich jetzt schon mit MVVM befasst (nicht detailiert nur paar h) und werde den Fehler nie wieder mehr machen, ein Projekt zu starten ohne Muster.

Schon im vorraus, ich kann aus verträglichen Gründen, nichts zeigen, habe Angst das da was passiert

T
2.224 Beiträge seit 2008
vor einem Jahr

Wenn du mit WPF arbeitest solltest du es in dem Muster bauen.

Wenn du dies bisher nicht gemacht hast, dann hast du vermutlich unnötig viel Zeit dami verbracht Code Behind Umsetzungen zu machen, die du ggf. mit Bindings eines Modells schnell gelöst hättest.

Wenn der Aufwand zu groß ist alles umzustellen und ein Neustart nicht in Frage kommt, dann hast du dir die Frage schon selbst beantwortet.

In dem Fall wäre eine Umstellung zwar immer noch ratsam aber wenn es zeitlich nicht machbar ist, wirst du es nicht umsetzen können.

Leider bedeutet dies aber auch, dass ihr irgendwann an einem Punkt ankommt an dem das gesamte Projekt nicht mehr mit vertretbaren Aufwand wartbar bleibt.

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

126 Beiträge seit 2023
vor einem Jahr

Arbeitest du in deinem aktuellen Projekt mit DI?

Dazu würde ich auf jeden Fall raten egal ob MVVM oder nicht. Ich bevorzuge z.B. nuget:Wpf.Extensions.Hosting.

Wenn du dann irgendwann mit DI deine kompletten Abhängigkeiten auflöst hast, dann ist der nächste Schritt zu MVVM auch nicht mehr weit.

Hat die Blume einen Knick, war der Schmetterling zu dick.

A
AnUnknownPerson Themenstarter:in
5 Beiträge seit 2022
vor einem Jahr

Hey, danke für die Antworten. Ich arbeite nicht mit DI, überlege es aber schon seit längerer Zeit.

Dann mach ich mich mal an die Arbeit mit lernen und üben des ganzen. Danke nochmals.

16.834 Beiträge seit 2008
vor einem Jahr

Nur so als Relation, als Feedback: die Größe eines Projektes ist eine relative Ansicht. Was Du als "riesen Groß" bewertest, können andere als einfaches Wochenendtool empfinden.
Das Forum hier wird nebenher entwickelt, hat trotzdem mittlerweile weit über 1000h Entwicklungszeit - würde ich aber trotzdem anhand der Code-Base nicht als "riesig" oder gar "groß" empfinden 😉
Und wo wir schon dabei sind: auch Zeit ist relativ, je nachdem welchen Wissenstand die Leute bei der Entwicklung von Code hatten.

Daher kann man Dir nur rein sachlich antworten: Ja, MVVM macht immer sinn. Ja das lohnt sich immer.
Technische Schulden bremsen ausnahmslos immer ein Projekt aus, sodass es allein rein rechnerisch immer einen Punkt gibt, ab wann der sich lohnt. Das kann man aber nicht pauschal sagen, sondern hängt vom Code und von den beteiligten Personen ab.

A
AnUnknownPerson Themenstarter:in
5 Beiträge seit 2022
vor einem Jahr

Danke für die Lehre und Erklärung 😃