Frontend zuerst oder Backend?

8

Hallo, ich muss eine kleine CMS-Anwendung in MS ASP.NET mit WebForms tun. Ich mache alles alleine: Front-End und Back-End und Datenbankschema.

Nun, da ich die Seite entwickeln möchte, frage ich mich, ob ich vom Front-End zuerst oder Back-End anfangen soll.

Wenn man bedenkt, dass dies ein kleines Projekt ist, könnten Sie mir eine Liste von Schritten geben, die ich besser mache, um zu bestimmen, was die beste Reihenfolge für die Entwicklung meiner Anwendung ist?

Noch einmal vielen Dank für Ihre Zeit.

    
GibboK 01.09.2010, 12:55
quelle

5 Antworten

7

Sie werden alle Stufen entwickeln, während Sie die meiste Zeit gehen

Für einige Seiten können Sie zuerst ein Datenbankschema erstellen und es mit Dummy-Daten füllen und sich dann hocharbeiten.

Bei anderen können Sie mit einer eigenen Seite beginnen und dann Funktionen schreiben, die benötigt werden, damit es funktioniert. Vor allem, wenn diese Seite nicht genug ins Auge gefasst wurde. Das ist weder schlecht noch gut. Es ist genau die Art und Weise, wie sich die Entwicklung entwickelt.

Einige Überlegungen

Folgen Sie agilen Entwicklungen

  1. Schreiben Sie einige Anforderungen in Form von User Stories auf (und behalten Sie diese im Auge), die keine Informationen über Seiten, Daten usw. geben. Etwas wie Als Benutzer möchte ich eine primäre Navigation haben auf meiner Seite . Diese Art von Geschichte erlaubt spätere Änderungen an Code / Seiten, ohne dass die Geschichte ungültig wird.
  2. Beginne nicht zuerst mit etwas, das voll funktionstüchtig ist. Überarbeiten Sie Ihren Code nicht. Weil du später Änderungen vornehmen wirst = folge YAGNI. Zum Beispiel entwerfen Sie Ihre DB nicht zuerst vollständig. Machen Sie genau so viel, wie Sie brauchen, um eine Geschichte zu entwickeln. Aber denken Sie an zukünftige Dinge, die Sie in die bestehende Codebasis integrieren müssen.
  3. Bestehenden Code sofort umstrukturieren, wenn etwas angezeigt wird, sollte geändert werden.
  4. Wenn Sie jemanden haben, der Ihren Code testet, lassen Sie ihn das tun. Entwickeln Sie keine nächsten Storys, bevor bestehende Bugs vollständig gelöst wurden. Dafür wirst du später dankbar sein.
  5. Wenn Ihr Code semi-komplex ist, schlage ich vor, Unit-Tests zu schreiben, damit zukünftige Code-Änderungen die bestehende Funktionalität nicht zerstören.

Am wichtigsten: Lernen Sie, wie Sie vorgehen und ändern Sie dabei den vorhandenen Code. Da Sie diese Technologien lernen, schlage ich vor, dass Sie sich zuerst an die Einfachheit halten. Sie werden bei Bedarf komplexere Dinge hinzufügen. Einige von ihnen werden überhaupt nicht fertig werden. Am Ende wirst du erkennen, YIDNI (ja, ich brauchte es nicht).

    
Robert Koritnik 01.09.2010, 13:00
quelle
2

Normalerweise schreibe ich heraus, was meine Anforderungen zuerst sind, wenn ich eine Datenbank verwenden muss, erstelle ich diese immer zuerst. Nach meiner Datenbank beginne ich mit der Arbeit am Frontend, das meine bereits erstellte Datenbank verbindet und verwendet.

Ich mache mir Sorgen um das Front-End, können Sie das immer leicht ändern

    
Spooks 01.09.2010 12:58
quelle
1

Ich würde sagen, dass in vielen Systemen das Back-End dazu da ist, das zu unterstützen, was für das Frontend benötigt wird. Wenn Sie nicht wissen, was das Front-End benötigt, gibt es wenig Möglichkeiten, das Back-End erfolgreich zu entwerfen. Also würde ich als erstes anfangen, wenigstens ein grobes Front-End an Ort und Stelle zu setzen (wenn auch nur ein Papier-Prototyp).

    
Fredrik Mörk 01.09.2010 12:58
quelle
1

Ich tendiere aus einem einfachen Grund - Testbarkeit - dazu, alle meine Projekte mit einem Back-to-Front-Ansatz anzugehen. Solide Tests gegen ein Back-End zu schreiben wird es einfacher machen, auf den anderen Ebenen progressiv zu arbeiten. Außerdem hilft es als "Bonus", die Geschäftslogik außerhalb der Bereiche zu halten, in die es nicht gehört.

    
Joseph Ferris 01.09.2010 13:03
quelle
0

Ich finde es einfacher, die Logik und das Backend zuerst zu entwickeln, damit ich das richtig verstehe und dann die Schnittstelle darauf anwende. Auf diese Weise vermeiden Sie das Schreiben von Funktionen basierend auf Ihrer Meinung nach von der Benutzeroberfläche.

Es ist wichtig, dass Sie einen guten Überblick darüber erhalten, was Sie tun / anpacken möchten, und versuchen Sie, dies zuerst im Backend zu implementieren. Dann wickle es in eine nette Schnittstelle!

    
Brett 01.09.2010 13:00
quelle

Tags und Links