Frage

Um Vorwort Ich bin neu in Web-Entwicklung. Ich suche einen Kernsatz von RESTful Web-Services um ein wertvolles Dokument Bibliothek von Arten (Anfangs CRUD Fähigkeiten) zu schaffen. Dabei bin ich theoretisch ein perfekt wiederverwendbar und skalierbare Back-End-Erstellung durch unvorhergesehene Anwendungen in der Zukunft verwendet werden.

Meine Frage dreht sich um die beste Praxis für dies zu tun. Meine erste Anforderung hat ich auch ein einzigartiges Front-End zu schaffen. Würde ich machen die Front-End und Back-End völlig getrennte Projekte, die Wiederverwendbarkeit zu verbessern. Es wäre Aufwand erhöhen.

Mit Blick auf mit GWT, Restlet und dem Java EE Technologie-Stack, wenn diese Einflüsse des Setup überhaupt.

War es hilfreich?

Lösung

Am wichtigsten ist, entwerfen eine saubere Java API - unabhängig von REST, RMI, oder was auch immer Protokoll Sie verwenden möchten. Von einem sauberen Java API können Sie jede Zugriffsmethode unterstützen.

Wenn Sie einen Anwendungsfall für diese anderen Zugriffsmethoden haben, sie nicht jetzt bauen. Sie können es bauen, wenn Sie es brauchen.

Die einfachste Schnittstelle zunächst hinzuzufügen, ist eine Web-basierte Schnittstelle, wo Sie Ihre Web-App läuft in der gleichen JVM wie Ihr Kern-API. Ich würde dies tun, wenn dies für Ihren Anwendungsfall funktioniert. Der Aufbau eine separate Konsolenanwendung, die Ihr Kern-API über ein REST-Zugriffe (oder was auch immer) Protokoll ist viel mehr Arbeit ..

Andere Tipps

Martin Fowler vor kurzer Zeit einen sehr schönen Artikel über die Grundlagen der REST schrieb: Richardson Maturity Model . Fand es sehr hilfreich, um die Prinzipien der REST zu verstehen.

Wenn Sie REST basierte Backend-Services verwenden möchten, sollten Sie die RestyGWT Projekt, das Sie Sie verwenden, um eine GWT-RPC Programmierung Stil für den Zugriff auf Ihre JSON basierten geruhsamen Dienste.

erlaubt

Die nette Sache über REST basierte JSON Dienste gegenüber herkömmlichem GWT-RPC-Dienst ist, dass diese Dienste können dann von anderen Kunden oder sogar in Mashups leichter verwendet werden.

Ein Kollege und ich habe eine GWT-System separate Projekte für die vorderen und hinteren Enden geschrieben. Es war hilfreich, Dinge zu halten ganz klar darüber, wo der Code ausgeführt wird. Aber ich bin nicht sicher, dass ich die Mühe, würde die Dinge in einem zukünftigen System zu trennen.

Auch gegeben, Ihnen neu in Web-Entwicklung, ich glaube nicht, sollten Sie eine perfekt wiederverwendbare Backend machen erwarten. Sie werden eine Menge Dinge, wie Sie gehen. Ich denke, dass agile Programmierer würde einen iterativen Ansatz von (a) immer einen kleinen Aspekt Arbeits empfehlen, und dann (b) Refactoring es es schön zu machen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top