2015-08-14 7 views
8

Wir beginnen mit der Entwicklung einer komplett neuen Webanwendung. Es ist ein großes Projekt und es wird Jahre dauern, bis es fertig ist und wahrscheinlich eine lange Lebensdauer haben wird.Ist es zu früh, um ein ASP.NET 5-Webprojekt zu starten?

Da ASP.NET 5 ist gleich um die Ecke, aber immer noch in BETA - ist es zu früh, um ein Webprojekt mit der neuen ASP.NET-Version zu starten?

Ich kann verstehen, dass wir einige knifflige Upgrades haben müssen, bevor es Beta8 und RC erreicht, aber die Vorteile, es sofort zu nutzen, könnten die Kosten eines späteren Upgrades (oder nie) übersteigen.

Was sind Ihre Gedanken?

+2

Es wird immer eine neue Entwicklung geben. Ich würde wahrscheinlich nicht die BETA-Version für ein neues und großes Projekt verwenden (siehe Roadmap https://github.com/aspnet/Home/wiki/Roadmap). Ich glaube, dass eine gute Analyse und Vorbereitungen für das Projekt wichtiger sind und da das aktuelle ASP.NET bereits ausgereift ist, sehe ich keinen Grund, warum BETA verwendet werden sollte. Nur ein persönlicher Gedanke ... (nicht sicher, was dein Projekt ist). –

+0

Danke für Ihre Eingabe. Ich glaube, dass der Inhalt des Projekts selbst nicht wichtig ist. Ich habe die Roadmap gesehen und das ist der Hauptgrund, warum wir die BETA in Erwägung ziehen - es ist fast fertig. Mein Hauptargument ist die Zukunftssicherheit des Produkts und die Reduzierung der Kosten zukünftiger Upgrades (falls ein Upgrade stattfindet). Es besteht immer die Gefahr, dass Projekte mit alter Technologie steckenbleiben (nicht dass das aktuelle asp.net alt ist, sondern immer noch). – Niklas

Antwort

5

Wir standen vor dem gleichen "Problem", wie Sie es in meiner Firma beschreiben. Wir haben eine komplexe Web Forms-Anwendung, die es seit fast 10 Jahren gibt und die dringend neu geschrieben werden muss. Wir haben uns dafür entschieden, den ASP.NET 5-Stack zu verwenden.

Wenn Sie ein solches neues und großes Projekt starten, werden die ersten Monate wahrscheinlich für das Prototyping und das Erstellen eines Proof of Concept verwendet. Meiner Meinung nach ist es in Ordnung, einen Rahmen zu verwenden, der sich in dieser Entwicklungsphase im Beta-Stadium befindet.

Wenn wir uns die roadmap anschauen, wird Beta7 diese oder nächste Woche ausgeliefert und Beta8 wird wahrscheinlich die letzte Version mit neuen Funktionen sein. Dies bedeutet, dass die Tage mit großen API-Änderungen und Paket-Umbenennungen größtenteils hinter uns liegen.

Ich begann Prototyping auf unserer neuen Anwendung seit Beta3. Dies verursachte einige Probleme beim Upgrade auf eine neue Beta, aber die Plus-Seite dabei war, dass ich das Framework wirklich gut kannte und die Änderungen auf den GitHub-Repositorys ziemlich genau beobachtete. Ich tatsächlich proposed some PRs Dinge, die ich bei der Entwicklung meiner Anwendung verpasst habe.

Es gibt jedoch einige Nachteile. Wie ich bereits erwähnt habe, könnten neue Betaversionen Funktionen, die Sie gerade implementiert haben, unterbrechen (oder sogar entfernen). Ein weiterer Schmerz ist der Mangel an Dokumentation, aber sie machen gute Fortschritte bei http://docs.asp.net/.

Sie könnten den aktuellen stabilen ASP.NET 4/MVC 5-Stack verwenden, aber Sie müssen wahrscheinlich von vorne beginnen, wenn ASP.NET 5 einen Go-Live-Status erhält und Sie diesen verwenden möchten.

Also meine Schlussfolgerung ist, dass Sie wahrscheinlich gerade gut, wenn Sie mit ASP.NET 5 beginnen. Obwohl es noch nicht produktionsreif ist, ist Ihre Anwendung auch nicht. Wenn Ihr Produkt in Betrieb geht, ist ASP.NET 5 wahrscheinlich bei RC oder sogar bei v1.0.

+2

Das ist auch meine Meinung - und Sie haben recht mit dem Prototyping. Wir begannen das um das erste Quartal dieses Jahres herum. Und da wir erst jetzt mit der Webanwendung beginnen, wird die BETA hoffentlich gut funktionieren, wie Sie sagen. Danke für deinen Beitrag! – Niklas

4

ASP.NET-Core 1.0 Antwort

ASP.NET-Core 1.0 ist nun freigegeben, gibt es eine 1.1 mit einigen Fehlerkorrekturen kommen. Es gibt noch einige Dinge zu beachten:

  1. Einige Drittanbieter-Bibliotheken sind immer noch fehlen, z. Elmah, aber es wird gerade daran gearbeitet, sie zu portieren.
  2. Einige Bibliotheken von Drittanbietern sind in Alpha, Beta oder RC, z. Moq, Autofac zum Zeitpunkt des Schreibens.
  3. Es gibt noch keine VB-Unterstützung.
  4. Es ist ein Produkt der Version 1.0, das bedeutet, dass es Ecken und Kanten und vielleicht ein paar Bugs haben kann, selbst wenn es freigegeben wird. Die Version 1.1 kann diese beheben.
  5. Wenn Sie die neue .NET Core Runtime verwenden möchten, gibt es noch mehr Einschränkungen.Sie können SyndicationFeed nicht verwenden, um einen Atom- oder RSS-Feed zu erstellen. Verwenden Sie System.Drawing, um Bilder zu ändern oder E-Mails mit SmtpClient zu senden. Es gibt viele APIs, die noch nicht existieren.
  6. Einige ASP.NET 4.6-Funktionen existieren noch nicht z. der BSON-Formatierer.
  7. Dies ist eine neue API, es kann einige Zeit dauern, bis sie sicher und zuverlässig ist.

ASP.NET 5 Antwort

Wenn Ihre Anwendung am Anfang 2016 veröffentlicht werden soll, dann sollten Sie in Ordnung sein (ein RC wird im November veröffentlicht werden), aber es gibt einige Dinge zu beachten:

  1. ASP.NET 5 ist immer noch ein bewegliches Ziel. Die Dinge ändern sich noch und werden geschrieben. Mit jeder neuen Betaversion gibt es bahnbrechende Änderungen, aber diese werden mit der Zeit immer seltener.
  2. Es gibt keine Drittanbieter-Bibliotheken wie Glimpse, Elmah, NWebSec, usw. Unterstützung für ASP.NET 5 kommt von allen dreien, aber es ist in weiter Ferne.
  3. Die Dokumentation wird noch geschrieben. Es ist nicht klar, wie Sie alles neu erstellen können, was Sie in ASP.NET 4.6 tun können.
  4. Es gibt noch keine VB-Unterstützung.
  5. Es ist ein Produkt der Version 1.0, das bedeutet, dass es Ecken und Kanten und vielleicht ein paar Bugs haben kann, selbst wenn es freigegeben wird.
  6. Wenn Sie die neue DNX-Core-Laufzeit verwenden möchten, gibt es noch mehr Einschränkungen. Sie können keinen WCF-Dienst aufrufen, verwenden Sie SyndicationFeed, um einen Atom- oder RSS-Feed zu erstellen, oder senden Sie eine E-Mail mit SmtpClient. Es gibt viele APIs, die noch nicht existieren.
  7. Jede neue Beta könnte etwas brechen, z. Beta 5 brach die Browserverbindung und die Vorkompilierung wurde für eine Weile unterbrochen. Mit Beta 8 werden die Dinge stabiler.
  8. Einige ASP.NET 4.6-Funktionen existieren noch nicht, z. der BSON-Formatierer.
  9. Dies ist eine neue API, es kann einige Zeit dauern, bis sie sicher und zuverlässig ist.

Das heißt, es gibt eine Menge für ASP.NET Core. Es ist sicherlich eine große Verbesserung und es gibt viele neue Verbesserungen gegenüber ASP.NET 4.6.

Verwandte Themen