Warum tun sich große Unternehmen bevorzugen die Feder über die Java-EE?
Während der Suche nach dem job, den ich besucht habe, einige Vorstellungsgespräche bei Firmen, dass die Arbeit im finanziellen Bereich. Jedes Unternehmen nutzt das Spring-Framework als wichtigsten Rahmen für die Entwicklung. Und fast überall wurde mir gesagt, " Wir müssen bewährte und stabile Technologien, das ist, warum wir Frühling.'
Ich würde gerne wissen, wie ich kann nicht verstehen, warum der Frühling wird immer beliebter und 'sicherer', als Java EE (z.B. Spring MVC verwendet wird, mehr, als JSF, während beide bieten fast die gleichen Funktionen)?
Wie es möglich ist, dass die nativen Java-EE-Funktionalitäten sind weniger stabil, als Dritte-Bibliotheken?
- JSF und Spring MVC sind sehr unterschiedliche Technologien. JSF ist ein Komponenten-basiertes framework, das zentriert ist um server-side-rendering von Ansichten. Spring MVC konzentriert sich mehr auf die Weiterleitung und Bearbeitung von HTTP-requests und nicht auferlegen, eine bestimmte Ansicht/templating framework für Entwickler.
- Hinweis: Den Frühling != Spring MVC, JSF != Java ee. Spring MVC ist eine optionale Komponente des Spring framework, JSF ist ein optionaler Bestandteil der JEE-Spezifikation. Sie sind sehr frei zu verwenden JEE-Komponenten, sondern verwenden Sie Apache Wicket für das front-end. Das gleiche mit dem Frühling.
- Gimby, ich nehme einfach diese beiden Technologien als Beispiel, ich weiß, dass beide von Ihnen sind nur Teile der framework-Spezifikation. =)
- In jedem Fall ist die Antwort "sind Sie nicht". Aber was stimmt, ist, dass viele Menschen, die kämpfen, um zu verstehen, wie diese Technologien, und um so mehr mit JEE als mit der Feder in meiner Erfahrung.
- Diese Frage ist sehr fair und nach mit Stackoverflow-standards. Es ist nicht in Erster Linie Meinung-basiert weil, die Frage ist nicht etwa Frühling besser, JEE, aber welches sind die Kräfte, die den push-finanzielle Unternehmen zu unterstützen Frühling eher als JEE.
- yeah, das ist eine super wertvolle Frage . Ihr Recht auf den Rand der zu beantwortenden tho. Ich wünschte, solche Fragen hatten einen Platz auf SE
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einige Gründe:
Frühling war schon da: J2EE hässlich war (keine Dependency Injection, keine Konvertierung über die Konfiguration und viele Schrecken von EJB2, Autsch). Java EE "gestohlen" alle guten Ideen aus der Feder, und es ist in der Tat leichter und einfacher als in früheren Versionen. Aber nun, jeder nutzt bereits Frühling. Es bedeutet eine Menge der Produktion code, viele, gut getestete Produkte und so weiter. Am Ende, warum machen die Leute in UK/USA Englisch-Einheiten? (Es ist eine große Kosten zu ändern)
Frühjahr ist leichter: Sie brauchen nicht, eine schwere Java-EE-application-server bereitstellen, können Sie Ihre Anwendung in einen web-container wie Tomcat.
Frühling bietet eine Menge von Funktionen, die nicht verfügbar sind, wie Java-EE-standards wie Spring Batch oder Spring Integration. Sie können Spring features, die mit Java EE standards, aber es sollte eigentlich Frühjahr besser klappt mit dem Frühling, sollte es nicht?
Spring aspektorientierte Programmierung ist flexibler und macht, die Java-EE-Abfangjäger. Sie können die Verwendung von third-party-AOP mit Java EE, aber Sie können diese out-of-the-box von Frühling.
Feder bewegt sich schneller. Frühjahr freisetzen können, oft und schneller, da es keinen standard gibt, und nur ein Anbieter. Also, es ist nicht erforderlich, JCP Abstimmungen, Genehmigungen, etc. Die Reaktion auf die Anforderungen des Marktes sehr viel schneller. Einige aktuelle Beispiele: cloud, mobile, social computing.
Ironisch, habe ich "bekam" eine Menge Ideen aus:
http://www.kai-waehner.de/blog/2011/11/21/why-i-will-use-java-ee-jee-and-not-j2ee-instead-of-spring-in-new-enterprise-java-projects-in-2012/
Ich arbeite im finanziellen Bereich seit einigen Jahren - so kann ich spreche aus meiner Erfahrung.
Viele Finanzdienstleister, die ich kenne hatte ein wichtiges upgrade für Ihre enterprise-software-stack auf rund 2006-2008, zu einer Zeit, als die Ernüchterung über EJBs waren auf Ihrem Höhepunkt, nach mehreren wartbaren und schlecht geschrieben EJB-Projekte. So in Ordnung, Ihr system zu aktualisieren und auch, um Entwicklern zu gewinnen, begannen Sie zu re-implementieren, Ihr Zeug in Spring und Hibernate, ebenso war es ein logischer Schritt für Sie, um neue Projekte in der state of the art frameworks (die waren damals in Spring, Hibernate und Wicket)
Aber da dann die Finanzkrise ausbrach und nicht viele finanzielle service-Unternehmen zu investieren, die viel Geld in neue Entwicklung, es sei denn, es ist sehr kritisch. Die meisten nicht kümmern, ob Java EE 6 oder 7 wurde ins Leben gerufen und einige der alten Argumente halten nicht mehr gut oder so.
So dass Sie würde gerne glauben, dass das, was Sie haben, ist sicherer, schneller etc (das kann oder kann nicht wahr sein)
Eine Sache, die macht Frühling attraktiv für Entwickler, vor allem bei großen Organisationen wie Finanz-Unternehmen, ist, dass Sie ermöglicht es Ihnen, mehr Kontrolle über Ihre middleware. Mit reinen Java-EE-Entwickler sind auf die Gnade der operations-Gruppe, dass hat ganz andere Ziele als Sie haben. In vielen Fällen Operationen vermeiden will, messing mit etwas, das funktioniert, jedes upgrade ist eine chance für die Dinge schief gehen, und es ist nicht so, wie Sie sind diejenigen, die die Vorteile von upgrades, so dass macht Ihre Entscheidungen sehr konservativ. Das kann bedeuten, dass die Entwickler stecken mit veralteten Versionen einer Anwendung, server, und wenn ein problem auftaucht, haben die Entwickler die Arbeit mit den Lieferanten technische Unterstützung (so haben Sie zu überzeugen, dass die Verkäufer Sie haben ein problem und reproduzieren es unter den Bedingungen, die Sie angeben), dann koordinieren mit den Vorgängen um das Update zu implementieren (was natürlich bedeutet, dass zur Rechtfertigung Ihrer Anforderung an eine Organisation, die mit unterschiedlichen Prioritäten von Ihnen). Entwickler wie zu minimieren, diese Art der Sache, Wann immer möglich.
Dass der Frühling in der Anwendung gibt den Entwicklern mehr Freiheit zu update mehr auf Ihre Infrastruktur, auf Ihre eigenen Zeitplan.