Was ist der Marktanteil von Programmen, die heutzutage in .NET geschrieben werden? [geschlossen]

11

Wir migrieren derzeit unser Visual Basic 6.0-Programm nach .NET . Die Zielgruppe sind nur normale Desktop-Benutzer zu Hause. Als wir dies diskutierten, stellten wir fest, dass wir keine Mainstream-Programme entwickeln können, die in .NET geschrieben zu sein scheinen. Irren wir uns Gibt es dafür einen guten Grund?

Dabblernl
quelle
6
Ich denke, Visual Studio und Paint.NET sind zwei Mainstream-Programme, die in .NET geschrieben sind.
Jonas
1
Können Sie Ihrem aktuellen Produkt Code hinzufügen, der angibt, über welche .NET-Bibliotheken die aktuellen Benutzer verfügen?
@ ThorbjørnRavnAndersen: Ja, das können Sie - Richard Grimes hat genau das getan, als Vista herauskam, sodass Sie mithilfe seiner Techniken sehen können, welche Binärdateien mit dem CLR-Loader für die von Ihnen installierten Apps erstellt werden. grimes.demon.co.uk/dotnet/vistaAndDotnet.htm (Download unten)
gbjbaanb

Antworten:

3

Abhängig von der Definition von "Hauptstromprogrammen" scheinen auch nicht viele davon in VB6 geschrieben zu sein.

Natürlich haben C # und VB.NET jetzt fast den Platz eingenommen, an dem VB6 vor ~ 10 Jahren war. Mindestens 98% sind individuelle Software, die Sie nicht in Ihrem lokalen Softwareladen kaufen können. Dies bedeutet jedoch nicht, dass es keine .NET-Programme gibt. Es gibt viele - aber Sie müssen sie an den richtigen Stellen suchen.

Doc Brown
quelle
18

Ihrem Kunden ist es egal, ob Ihr Programm in .NET geschrieben ist oder nicht. Wenn Sie also sicherstellen können, dass die überwiegende Mehrheit Ihrer Zielgruppe Ihre Software problemlos installieren und ausführen kann, sind Sie gut.

Es ist sehr schwierig, genaue Informationen zur .NET Framework-Penetration zu finden , daher sollten Sie sich nicht auf diese verlassen.

Warum nicht auf .NET Client Profile abzielen und sicherstellen, dass es zusammen mit Ihren Binärdateien installiert ist? Es ist einfach, einfach und effektiv.

Das .NET Framework 4-Clientprofil ist eine Teilmenge von .NET Framework 4, die für Clientanwendungen optimiert ist. Es bietet Funktionen für die meisten Clientanwendungen, einschließlich Windows Presentation Foundation (WPF), Windows Forms, Windows Communication Foundation (WCF) und ClickOnce-Funktionen. Dies ermöglicht eine schnellere Bereitstellung und ein kleineres Installationspaket für Anwendungen, die auf das .NET Framework 4-Clientprofil abzielen.

Ich sehe einen weiteren großen Vorteil der Portierung Ihres VB6-Codes nach .NET: die Möglichkeit, eine Version Ihrer Software zu erstellen, die unter Linux und OSX mit Mono ausgeführt wird . Hier finden Sie ein bemerkenswertes Beispiel für Desktop-Anwendungen, die in .NET und plattformübergreifend geschrieben wurden .

Gemeinschaft
quelle
11
Genau das Wichtigste: Kunden interessieren sich nicht für die Plattform, solange sie auf ihren Systemen ausgeführt wird. aber nicht so richtig im letzten Absatz: Mono funktioniert und ist eine beeindruckende Leistung; Aber es ist ein Albtraum, auf Endbenutzern installiert zu haben. Das plattformübergreifende Versprechen von .NET ist tot auf dem Wasser.
Javier
@Javier: Nun, mit Ausnahme von Windows, Windows Phone und XBox 360. Aber der Reiz einer Bytecode-Sprache, die Windows dominiert, war für mich nie plattformübergreifender Code. Vielmehr ist Windows nicht mehr an eine bestimmte Architektur gebunden (x86 ist ein Chaos). Die nächste Windows-Version wird auch unter ARM ausgeführt . Es ist auch schön, dass Software jetzt die Setup-spezifischen Funktionen nutzen kann. Im Grunde sind es alle Vorteile des Linux-Ansatzes (Kompilieren von Software auf jedem neuen System), ohne den Aufwand.
BlueRaja - Danny Pflughoeft
@ BlueRaja-DannyPflughoeft: Richtig, .net (CLR, wirklich) liefert als "Cross-Windows-Plattformen" -Plattform. Tatsächlich gibt es nichts zu niesen
Javier
@BlueRaja: Sie vergessen, dass das Zeug, das auf ARM gezeigt wurde, .. Microsofts C ++ - Code war. Dinge wie Druckertreiber und Office. Da es sich nicht um .NET-Anwendungen handelt, ist das Argument, dass .NET erforderlich ist, völlig falsch.
Gbjbaanb
@ Javier: Ist Mono bei der Installation so schlecht? Ich habe eine Mono-App (Banshee) auf meinem Mac OSx installiert und bin auf kein Problem gestoßen. Für Windows muss Mono nicht installiert sein. Als Entwickler, der eine Mono-App plant, würde ich mich sehr freuen, wenn Sie mir Artikel oder Referenzen zur Verfügung stellen könnten, die zeigen, was Sie sagen.
8

Meine persönliche Erfahrung ist, dass .NET in der internen Entwicklung auf Unternehmensebene eine dominierende Rolle spielt. Die meisten dieser Anwendungen sind nicht für den öffentlichen Gebrauch bestimmt und gehören daher nicht zu unserem täglichen Wortschatz.

Dennoch gibt es einen sehr zwingenden Grund, warum so viele große Unternehmen diese Technologien übernommen haben: Produktivität und Zufriedenheit der Programmierer. C # ist eine wunderbare, produktive Programmiersprache und das .NET-Ökosystem ist reich an vorhandenen Bibliotheken, damit wir die Räder nicht neu erfinden müssen. Auch wenn WCF manchmal erstaunlich kompliziert ist, ist es ein sehr leistungsfähiger Rahmen für den Aufbau der Kommunikation zwischen verschiedenen Systemen.

In Bezug auf Ihren speziellen Umstand würde ich die Portierung Ihrer Anwendung nur vornehmen, wenn Sie in Zukunft viele Verbesserungen und Änderungen daran vornehmen werden. Wenn es stabil ist und sich im Wartungsmodus befindet, werden Sie jede Entscheidung bereuen, außer es unverändert zu lassen.

Adam Crossland
quelle
2
+1 für "C # ist wunderbar". Es ist wirklich eine wundervolle Sprache
Shashwat
2

Laut TIOBE ist C # (eine .NET-Sprache) mittlerweile die viertbeliebteste Sprache der Welt.

Außerdem stimme ich einem anderen Poster zu, dass es Kunden egal ist, in welcher Sprache Ihre App geschrieben ist, solange sie funktioniert.

Gustav Bertram
quelle
3
Ich denke, die Anzahl der Tags in StackOverflow ist repräsentativer als das TIOBE-Suchranking.
Jonas
4
Nein, das liegt nur daran, dass C-Codierer echte Programmierer sind und echte Programmierer nicht um Hilfe bitten.
Gustav Bertram
2
Das Lesen von Eingeweiden von Ziegen ist wahrscheinlich genauer als das von TIOBE. Übrigens befürworte ich in keiner Weise die Klage gegen Ziegen-Eingeweide für etwas anderes als die Verarbeitung von Substanzen, die von einer Ziege gefressen werden.
Adam Crossland
@Gustav: Ja, die Anzahl der Tags auf C # auf SO zeigt nur, dass es eine schwierige Sprache ist, bei der mehr Menschen Hilfe brauchen :)
gbjbaanb
1

Entscheiden Sie, ob Ihr Markt Funktionen wünscht, die Sie nur oder einfacher in .NET erstellen können. Bedenken Sie, dass die Einstellung neuer Entwickler ein weiterer zu berücksichtigender Markt ist. Möglicherweise finden Sie weitere VB.NET-Entwickler, die Ihren Anforderungen entsprechen (Erfahrung, Domänenkenntnisse usw.). Wollen Ihre aktuellen Entwickler wirklich wechseln?

Ich weiß nichts über den Heimanwendermarkt, aber der Geschäftsmarkt ist ziemlich stark mit .net-Apps.

JeffO
quelle
0

VB6 wird von MS nicht mehr unterstützt (siehe: http://blogs.technet.com/b/lifecycle/archive/2008/04/16/end-of-support-for-visual-basic-6-0). aspx ). Wenn Sie also aus entwicklungspolitischer Sicht Probleme haben, erhalten Sie keine Unterstützung von der Quelle.

VB.NET hingegen wird weiterhin aktiv entwickelt und unterstützt.

Die Ähnlichkeit zwischen .NET Framework und Java JRE sowie die Ähnlichkeiten zwischen C # und Java selbst haben die C # /. NET-Entwicklergemeinschaft extrem schnell vergrößert.

Das Angebot an VB6-Entwicklern wird schwinden, während die von VB.NET/C# wahrscheinlich zunehmen werden und Ihr Produkt in Bewegung halten können.

Jesse C. Slicer
quelle
0

Wir können keine Mainstream-Programme entwickeln, die in .Net geschrieben zu sein scheinen.

Ich bin mir ziemlich sicher, dass das Bedienfeld der ATI Catalyst- Grafikkarte in .NET geschrieben ist - das ist also im Grunde jeder PC, der über eine ATI-Grafikkarte verfügt. Eine große Anzahl normaler Desktop-Benutzer ...

Ein weiteres gutes Beispiel ist Samsung Kies - das die meisten Leute mit Samsung-Handys installiert haben.

MattDavey
quelle
Bitte erläutern Sie die Ablehnung.
MattDavey
-1

Ich nehme an, es spielt keine Rolle - was noch wichtiger sein könnte, ist, in was die meisten Programme in Zukunft geschrieben werden. Jetzt, wo sich MS auf Win8-Apps konzentriert, sollten Sie sich möglicherweise besser Gedanken über die Einführung von HTML5 + js und WinRT machen als über .NET.

Als letztes möchten Sie alles auf .NET portieren und dann viel mehr Nacharbeiten vornehmen, damit es mit Windows 8 gut funktioniert.

gbjbaanb
quelle
Ha! Die Wahrheit tut weh :) WinPhone8 zeigt tatsächlich, dass dies der Fall ist, nicht mehr XNA. Wenn Sie ausgefallene 3D-Grafiken wünschen, benötigen Sie das native SDK.
Gbjbaanb
Ich sehe keine Korrelation zwischen der XNA-Unterstützung unter WinPhone 8 und der .NET Framework-Unterstützung unter Windows 8. (Übrigens war ich nicht derjenige, der Sie abgelehnt hat, aber als .NET 'Legacy' bezeichnet wurde, wurde darum gebeten)
MattDavey