Java Component basierte vs Request basierte Frameworks
Ich war vor kurzem in einem interview gefragt - In java, wie kann man vergleichen component based frameworks auf Anfrage-basierten frameworks? Ich erklärte EJB-als ein Beispiel von Komponenten-basierten framework und Struts als ein request-basiertes framework, aber war nicht überzeugt, wenn ich die Gerechtigkeit, um die Frage zu stellen.
Irgendwelche Ideen auf, was der interviewer meinte, und was soll verglichen worden??
Grüße,
avajurug
InformationsquelleAutor der Frage user150014 | 2009-08-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Waren Sie wahrscheinlich auf der Suche nach Beispielen von web frameworks z.B. JSF ist ein Komponenten-basiertes framework und Struts ist eine Anfrage-basierte framework.
Anfrage-basierten frameworks im Allgemeinen machen Sie deutlich durch Ihre APIs, dass Sie die Arbeit mit dem Parsen einer HTML-Anfrage /generiert eine HTML-Antwort, während die Komponenten-basierten frameworks versuchen, abstrakte diesem Weg und behandeln die Anwendung als Sammlung von Komponenten mit Renderer und Aktionen, Dinge zu tun.
Meiner Meinung nach -, Komponenten-basierte web-frameworks sind mehr ärger als Sie Wert sind - Ihre Hauptaufgabe ist in der Regel, um die Entwicklung einer web-app "einfacher" für Entwickler nicht vertraut mit web-Entwicklung, und näher an der traditionellen desktop-Entwicklung. In der Praxis ist jedoch, wenn etwas schief geht, müssen Sie benutzerdefinierte Komponenten entwickeln, müssen Sie zum anpassen der Rahmen für etwas, das nicht "out of the box" Funktionalität, etc. Sie müssen verstehen, sowohl die zugrunde liegenden "traditionellen" web-Entwicklung undwie die component-based framework abstrahiert es - und wenn du bist ein erfahrener web-Entwickler und vorhandene Lösungen, Dienstprogramme, Bibliotheken oder snippets, arbeitete im "traditionellen" web-Entwicklung, werden Sie verschwenden Zeit und re-Implementierung Sie arbeiten innerhalb des component-based framework.
InformationsquelleAutor der Antwort Nate
Anfrage-basiertes framework ist ein web-framework, das wird Wunsch des Benutzers bestimmen dann, was das system tun sollte, und wieder geben die Antwort zurück an den Benutzer. Also der flow ist ziemlich linear. Sie denken in Aktionen: was bedeutet user wollen (Anfrage) -> was Benutzer zurück (response). Ein Beispiel von Anfrage-basiertes framework ist Federbeine. Die moderne Grails ist ziemlich genau ein Request-basiertes framework zu.
Component based framework ist nicht so. Es gibt eigentlich kein klares Gefühl für die Strömung von vorne nach hinten. Ein Beispiel dafür ist JSF nicht, denn in gewisser Weise JSF ist ziemlich viel ziemlich das gleiche mit Struts (da die Ersteller der Struts-und JSF ist das gleiche). Ein gutes Beispiel für Component based framework Wandteppich und Wicket. Das Paradigma in diese beiden Rahmen ist anders. Sie glaube nicht, dass bei Aktionen oder Anfrage-Antwort, sondern Teile und Komponenten. Sie definieren eine Komponente in Ihrer Anwendung, und Sie sagen, was die Komponente tut. Aber der flow ist nicht linear wie in der Anfrage-basiertes framework.
InformationsquelleAutor der Antwort Joshua Partogi
JSF-Komponenten basierten java-API, wie gesagt Nate, Struts ist ein action-basiertes framework, das Http-Anfragen interpretiert, die während der Verarbeitung der Aktionen am Ende der Controller-Servlet leitet die Anfrage an die JSP, die verantwortlich sein werden, die zum generieren der Antwort. Während in JSF wurde ein standard für Komponenten-basierte web-frameworks, es gibt eigentlich keine Notwendigkeit, um die Anforderungen und die Antworten als alles, was wir brauchen, ist zu schreiben, JSP-oder XHTML-Seiten, binden Sie die verwendeten Komponenten in die Seite oder den Wert, den Sie leisten sollte, um die Eigenschaften in backing beans oder managed beans und die FacesServlet (controller) übernimmt die ganze Arbeit zu kümmern, Anfrage, Analyse und Weiterleitung zu JSP, die machen die Antwort, basierend auf der navigation-Regeln angegeben in faces-config.xml . So wie Sie sehen können gibt es einen großen Unterschied zwischen Struts und JSF als JSF bringt ein component-Ereignis-basierte Ansatz, während die Struts ist mehr Nähe zu den klassischen JSP/Servlet-Modell. Eine andere Sache jpartogi haben, sagte der Schöpfer von JSF und struts ist die gleiche, ich möchte nur erwähnen, dass Struts ist ein framwork, die im Besitz von Apache-community während der JSF ist eine API angegeben, die von JCP in der JSR-127 für die version 1.1 und JSR-252 für die version 1.2 und hat verschiedene Implementierungen (SUN-RI, Apache MyFaces...)
InformationsquelleAutor der Antwort javance
Einfach, Wenn die framework-Objekte in java-Seite für jedes web-element, so können Sie Attribute ändern oder fügen Sie einige Funktionen, es ist component based framework, aber Wenn der Rahmen keine Objekte und Sie haben, um den Ansprechwert des web-Elements zwischen den tags ist es eine Anfrage-basiertes framework.
InformationsquelleAutor der Antwort FURKAN ILGIN