Struts 1.x vs Struts 2.x
Habe ich überprüft ein paar Struts 1 vs 2 Fragen, die SO aber keiner scheint eine Antwort auf die Frage in der Perspektive, dass ich es bei der Suche mit.
Ich bin zu Beginn der Arbeit die Architektur eines neuen Systems in einem kompletten re-engineering von einem sehr alten desktop-Anwendung. Das Ziel ist es, web-basiert, fügen Sie mehr Funktionalität, um es nutzbar etc (das übliche reengineering Gründen).
Dem team, die Weiterentwicklung des Systems sind vor allem Java-Entwickler gearbeitet haben und auf Struts 1.x ausführlich über die letzten 5 Jahre.
Soll das system für viele Jahre zu Leben zu kommen, so die Idee der re-engineering wieder in 3-5 Jahren, wenn ein besserer Rahmen heraus kommt, ist keine option. Es ist nicht beabsichtigt, die stark AJAX verwenden.
Meine Frage ist, warum sollte ich mir die Mühe Umzug in Struts 2, wenn mein team sind sehr erfahren mit Streben 1.x. Ich verstehe, dass es einige Verbesserungen, aber ich habe Angst, dass die Zeit verloren, die sich das team bis zu Geschwindigkeit, Nacharbeit durch falsche Verwendung etc. wird, überwiegt bei weitem jeden nutzen, den wir bekommen würden von Struts 2. Wir wie Struts 1, es tut, was wir brauchen, um es zu tun, und alle design patterns, standards, best practices usw. sind im Ort.
Gibt es irgendwelche killer-features mit Struts 2 oder schwerwiegende Probleme, ich weiß nicht, was in Struts 1, die würde schwanken, die Entscheidung zu bleiben mit Struts 1.
- Ich müde wäre, mit solch einem alten Rahmen ein neues Projekt starten.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie bauen ein system von Grund auf würde ich auf jeden Fall auf version 2.x-Streben. Die Lernkurve wird nicht groß sein für eine Struts 1.x-team, aber Sie werden in der Lage sein, um die Vorteile eines up-to-date-MVC-framework.
Für mich die zwei wichtigsten features von Struts 2.x die Steigerung der Produktivität:
Wenn es ein großes Projekt, an dem Sie arbeiten, möchten Sie vielleicht, um ein Komponenten-framework wie z.B. JSF 2 oder Wicket. Wenn Sie sich entschlossen haben zu bleiben, auf ein Action-basiertes framework, dann finde ich persönlich Streifen ein produktiver Rahmen.
Struts 1.x 2000 vintage-Technologie. Warum auf der Erde würden Sie sogar überlegen, kleben Sie auf ein brand-neues app?
Ist der größte Nachteil, die ich sehen kann, ist, dass Streben sperrt Sie in eine JSP-basierte, browser-Benutzeroberfläche. Struts-Aktionen sind wiederverwendbar nur im Rahmen. Sie haben eine harte Zeit, die nahtlose Integration eines mobilen Geräts in das system, wenn Sie benötigen.
Würde ich anfangen, darüber nachzudenken, web-services, bevorzugt REST-und AJAX. Die Welt hat sich verändert. Ich würde schauen nach alternativen zu Streben, wie Frühling oder Spielen. Picking up ein neues web-framework würde nicht sein, dass große einen deal, aber die Vorteile könnte es Wert sein.
Diejenigen Mitarbeiter, die nichts getan haben, aber Sie arbeiten mit einer veralteten framework für die letzten fünf Jahre wird auch dir danke. Zeit für neue Fähigkeiten.
UPDATE: Wenn Sie versucht haben, und kann nicht zu spät sein, und zu viele Zwänge, dann würde ich sagen, dass Sie bereits wissen, Ihre Antwort. Was hoffst du, von hier kommen? Ich sehe nicht ein argument, das Sie haben gescheitert zu denken, durch.
Gegeben, dass Ihr ein team mit guter Erfahrung in Struts 1.x und Ihr Produkt ist stabil, wie auch, ich sehe nicht ein guter Grund, um die Migration zu Struts 2. Apache zu scheinen zu vereinbaren, dass http://struts.apache.org/roadmap.html#migrate_s1.
Ich würde denken, anstatt zu Fragen, "Stick mit Struts1 oder verschieben für Struts2?" du solltest besser Fragen "Stick mit Struts1 oder Umzug in einen modernen action-MVC-web-framework?". Warum verschieben ? Da Struts1 ist alt und (ehrlich gesagt) beschissen. Warum nicht verschieben??? Weil wir lernen müssen, einen neuen Rahmen. Zugegeben, Sie wissen, Ihre Ressourcen, die Sie tun müssen, die Bewertung. Aber Bedenken Sie, dass moderne action-basierte frameworks Struts2, SpringMVC, Streifen) sind Recht einfach zu lernen, und um so mehr, wenn Sie Ihre teams schon weiß, Struts1.
Mich, ich habe der Migration von Struts auf Struts2 und jetzt würde ich nicht gerne zurück Struts1-Programmierung (diejenigen, die ungeschickt ActionForms!). Ich denke, Struts2 ist viel besser. Aber man muss auch Bedenken, dass Struts2, hat auch Ihre schwachen Punkte, das Projekt scheint nicht sehr gesund und die community scheint nicht sehr aktiv.
Der Sprung von Struts1 zu Struts2 ist nicht groß, aber ist nicht so klein, wie eine version ändern ("Struts2" ist irreführend), und es wird wahrscheinlich nicht kleiner, dass der Sprung zu SpringMVC, so würde ich vorschlagen, ihn zu prüfen (oder Streifen).
Generell, Struts 2.x layered framework Vergleich zu Struts 1.x. Zum Beispiel in der Daten-Schicht , Struts 2.x hat zu TUN Schicht zwischen VO und DAO.. Ähnlich anderen features erwähnt werden die in der nachstehenden link..
http://struts.fromdev.com/2008/08/struts-1-vs-struts-2.html ..
Da dein team hat mehr Erfahrung mit struts 1.x , ich glaube nicht, dass es dauern wird, mehr Zeit zu migrieren, Ihren code zu struts 2.x.
Bitte genau angeben, welche Art von Unterschied u erwarten..
in struts2.0 es gibt mehr Features und Vorteile , die in struts2.0 es gibt keine form Strahl,
eine gute und macht vollständige Validierungs-framework und die meisten importierten in struts2.0 für jede Anforderung gibt es eine Instanz des Handelns, sondern in sturts1.x nur eine Instanz der Aktion für Loch-Anwendung.
so ist es Ihre Wahl . 🙂
Sowie der Haupt-Grund dafür ist der Umzug zu struts 2.x an Stelle von struts 1.x ist
struts 1.x ist in der Erhaltungsphase jetzt nicht viel in der aktiven Entwicklung.
nun, wenn es startet mit einem team, haben ein gutes Verständnis von struts 1.x ist, dass Sie das zugrunde liegende system schnell.aber zuvor lassen Sie mich einen Punkt in einer klaren Art und Weise.
struts1.x hat keine ähnlichkeit mit struts 2.x die einzige gemeinsamkeit ist der name, geerbt von den Eltern.
struts2 hat folgende Vorteile.
4 Entkoppelt Servieren lassen-API was bedeutet plain POJO so unit-Tests werden viel viel einfacher
aber mein Punkt ist einfach, struts2 und struts1 nur ähnlich in Bezug auf Namen, aber in Bezug auf die zugrunde liegende Architektur sind Sie ganz anders.