Alle Fakten zu Visual Studio

Mein Team gehört zu den Teams, die bei der Entwicklung von Technologien als „Early Adopter“ bezeichnet werden. Gleiches gilt natürlich für Visual Studio und die gesamte Infrastruktur. Die neueste Version ist eine der hässlichsten, die ich in diesem Bereich erlebt habe, und ich werde meine Erfahrungen hier mit dir teilen. Seid gewarnt!

Warum Englisch?

Visual Studio gehört zu Microsoft
Das geht an meine Stammleser. Ich habe mich entschieden, diesen Beitrag auf Englisch zu schreiben, weil ich so viele Menschen wie möglich erreichen möchte. Wenn man sich meine Site Analytics ansieht, ist die traurige Wahrheit, dass das Schreiben auf Deutsch nicht mehr zählt. Deshalb beginne ich auch, Beiträge auf Englisch zu schreiben. Entschuldigung an alle Deutschen.

Vorwort

Bevor ich anfange: Die Leser meines Blogs sollten bereits wissen, dass ich ein großer Fan von Microsoft-Produkten und -Ideen bin und mir gefällt ihr Weg im Allgemeinen. Ich sage das, um Fehlinterpretationen zu vermeiden. Dies ist als konstruktive Kritik gedacht und soll anderen helfen, nicht in die Falle zu tappen. Mit der Version Visual Studio 2015 deutsch können Sie ganz entspannt arbeiten. Alles begann vor 2 Wochen, als ich meinen ersten PC komplett aufgeräumt und Windows 10 inklusive VS 2015 RTM installiert habe. Zuerst sah alles großartig aus. Ich konnte meine Lösungen öffnen und fing an, das ganze Zeug zu erforschen. Am zweiten Tag fühlte ich, dass die Liste der Probleme so umfangreich war, dass ich erkannte, dass ich eine OneNote-Seite dafür erstellen musste. Es geht nur um dieses Zeug. Einige der Themen, die ich hier hervorhebe, beziehen sich auf bestimmte Technologien und nicht auf das VS selbst. Ich werde die Probleme bündeln, um das besser zu klären.

Visual Studio

Leistung & Stabilität: Jede größere Veröffentlichung in den letzten 3 oder 4 Jahren brachte eine etwas bessere Leistung für das Werkzeug. Diese Version ist die erste, seit ich erkenne, dass sie langsamer als die 2013 ist. Das Tool friert bei Operationen wie Azure-Verbindungen, Lösungsöffnung ein. Noch schlimmer: Ich starte das Studio wie ein Mal pro Stunde neu, weil es mich einfach anlügt. Es hört auf, Dinge mit seltsamen Fehlern zu veröffentlichen, aber wenn ich das Programm einfach neu starte, funktioniert es. Dasselbe passiert, wenn ich Debug-Sitzungen mit IIS in meiner Umgebung beginne.

Ich benutze eine Enterprise Version von VS 2015 – mit anderen Worten, ich habe das teuerste Abonnement, das man bei MS kaufen kann. Ein Teil davon war und ist die Fähigkeit, mehr Material für Tests zu erstellen. Heute wollte ich einen Belastungstest erstellen (einen lokalen, nicht das Ding in Azure). Ich kann es erstellen und sogar der Assistent taucht auf. Aber nachdem die Datei im Projekt ist, kann ich nichts mehr damit anfangen. Der Versuch, es zu öffnen, führt zu einer einfachen NotImplemenmentedException von VS. Was zum Teufel….?

Entität Framework 7

Das ist eine große Veränderung für alle VS-Fans. Jede größere Veröffentlichung brachte etwas Neues in diesen Bereichen. Ich weiß, dass diese Teams jetzt von VS entkoppelt sind, aber was ist VS 2015 ohne sie? Ein kleines Lächeln kam auf mein Gesicht, als ich sah, dass SlowCheetah immer noch als Extentsion für VS 2015 unterstützt wird. Das ist meiner Meinung nach entscheidend, denn es wurde gesagt, dass es wegen des neuen Gebäudesystems komplett verschwinden wird. Es ist da! Ich hätte auch gerne EF 7 und den neuen Code First getestet, der nicht mehr derselbe Code First ist wie vorher. Oder etwa nicht? Ich weiß es nicht.

NuGet

Einer meiner Lieblingsteile von VS ist NuGet, das ich früher wegen seiner nahtlosen Integration liebte. Derzeit ist es eine ständige Quelle von Schmerzen. Zuerst einmal haben die NuGet-Jungs aus einem seltsamen Grund entschieden, dass es eine gute Idee wäre, alle herunterladbaren Informationen UrlEncode zu geben, wenn Sie sie von nuget.org erhalten. Das führt zu Fehlern, wenn Sie versuchen, Pakete zu erhalten, die Ordner mit einem „+“-Zeichen benötigen. Das bedeutet, dass es schmerzhaft ist, Pakete in portabler Version einzubinden. Lösung: dafür: Konfigurieren Sie eine lokale Paketquelle, laden Sie das Paket von nuget.org darauf herunter und installieren Sie es von dort aus.

Der nächste Denker ist die Tatsache, dass plötzlich die „All“-Option in der Package Manager Console und im NuGet-Fenster verschwunden ist. Das bedeutet, dass Sie wählen müssen, aus welcher Quelle Sie die Aktualisierung durchführen möchten. Das ist ein riesiger Mist, weil viele Leute verschiedene Quellen verwenden und Sie Probleme bekommen, wenn von den Quellen nicht ALLE Abhängigkeiten und Versionen enthalten sind, die Sie ansprechen. Das fehlende „All“ ist bereits ein akzeptierter Fehler bei NuGet. Wichtig für alle NuGet-Anwender: Die Paketwiederherstellung hat sich dramatisch verändert! Gehen Sie zu NuGet und lesen Sie die Spezifikationen dort. Der.nuget-Folder sollte nicht mehr verwendet werden. Niemand spricht über den Übergang von alten Lösungen, aber das ist normal. Mal sehen. Dinge können passieren, aber wie konnten sie das Zeug durcheinander bringen, das vorher perfekt funktionierte? BTW: Das Problem war nicht da im RC-Staat, soweit ich weiß.

Side-by-Side ist keine Option

Zuerst habe ich 2015 neben 2013 installiert. Das funktioniert, aber Sie erhalten seltsame Ergebnisse, wenn Sie versuchen, beide Versionen auf dem neuesten Stand zu halten. VS 2015 bringt zum Beispiel eine neue Version von SSDT. Sie können es aktualisieren, aber dann können Sie das Update für 2013 nicht installieren, da sich das Setup darüber beschwert, dass bereits eine neuere Version von SSDT installiert ist.

Bearbeiten Sie: Warum so wütend?

Nachdem ich meinen eigenen Beitrag neu gelesen und einige zusätzliche Dinge hinzugefügt hatte, erkannte ich, dass da eine leicht wütende Note drin ist. Ich sage dir, warum ich es so belasse. VS 2015 ist keine Beta oder RC oder so etwas. Microsoft hat den RC vor Monaten veröffentlicht und ich und viele andere Entwickler haben angefangen, Feedback dazu zu geben. Dieser Prozess macht keinen Sinn, wenn sich der RC anders verhält als der RTM und wenn Dinge wie EF 7 oder vNext nicht zur RTM-Zeit kommen.

Auf der anderen Seite verstehe ich nicht, warum große Unternehmen wie SAP nicht in der Lage sind, ihre Erweiterungen nach Fertigstellung des RTM zu aktualisieren. Diese Version, über die ich mich beschwere, ist ein Produkt. Ich zahle viel Geld und – noch schlimmer – verbringe viel Zeit damit, mich mit Bugs für eine Sache zu beschäftigen, die im Mittelpunkt meines Geschäfts steht. Ich mag Cloud-first und Mobile-first im Prinzip. Aber in diesem Bereich wird nichts passieren, wenn VS nicht stabil ist. Ich kann die Logik hier nicht verstehen und deshalb bin ich wütend.

Also, was ist der Punkt

Ich wollte die Hauptprobleme mit euch teilen. Wir entdecken einige Lösungen für diese Probleme und eine davon habe ich bereits veröffentlicht (siehe Nuget). Aber das ist nicht der Punkt. MS sagt uns, dass sie uns die Werkzeuge für ALM (Application Lifecycle Management) zur Verfügung stellen. Sie wollen, dass wir genau die Art von Dingen vermeiden, die hier passiert sind. Meiner Meinung nach ist dies eine Zeitmaschine für die alten Zeiten, in denen das Marketing so etwas wie „Hey dev-guys! Windows 10 wird vorangetrieben und niemand kann sich dafür entwickeln. Freigabe