Do Sie Consumer-Desktop-Anwendungen mit .NET-Sprachen schreiben? Wenn ja, welchen Typ?
Mein Eindruck ist, dass die meisten Consumer-Desktop-Anwendungen immer noch native kompilierte Anwendungen in C, C ++ und dergleichen sind.
Während .NET-Sprachen immer beliebter werden und immer beliebter werden, bricht diese neue Art von Anwendungen jemals aus dem Unternehmen heraus & amp; Web-Domain zu High-Street-Consumer-Anwendungen werden?
Betrachten Sie zum Beispiel Ihren Desktop jetzt? Wie viele Anwendungen sind in .NET-Sprachen geschrieben, Firefox? Microsoft Office? Thunderbird? iTunes? Microsoft Visual Studio?
Meine Firma entwickelt hochwertige CAD / CAE-Anwendungen, wir nutzen neue Technologien, aber unsere Kernentwicklung wird immer noch mit C ++ durchgeführt.
Ich habe eine große Desktop-Anwendung erstellt und gepflegt, die in .NET (1.1, 2.0) geschrieben wurde. Die Anwendung ist für Zahnärzte und es funktioniert, indem Sie die Ink-Technologie verwenden, die in dem Namespace MIcrosoft.Ink in dem TabletPC-SDK gefunden wird. Einige Zahnärzte verwenden Tablet PCs, um die Dinge einfacher zu machen und nutzen die Kraft dieser Technologie.
Da ich andererseits finde, dass die Windows-Benutzeroberfläche nicht gut aussieht (XP / Vista) und dass jede Anwendung gleich und inkonsistent aussieht, habe ich meine eigene GDI + -Bibliothek von Steuerelementen geschrieben und respektiere mehr oder weniger die "Windows-Benutzeroberfläche" Richtlinien ", kam ich mit sehr netten Tasten und anderen UI-Elementen auf, die meine App" viel besser "aussehen lassen als jede andere" normale "Windows-Anwendung.
Wir laufen im Vollbildmodus (maximiert, keine Steuerelemente, keine App-Leiste), aber wir tun dies, weil es eine spezifische -Anwendung ist, die in dedizierten Anwendungen verwendet wird . Zahnkliniken verwenden für unsere Anwendung nicht Microsoft Excel und ALT-TAB. Die Anwendung funktioniert wie ein "ATM", Touch-Touch, fertig. Sehr einfach. Es war ein Erfolg in Europa, wo ich bin.
Ich muss also sagen, dass ich froh bin, dass die App nicht eine Webanwendung ist, denn als wir angefangen haben, war .NET GDI + für Windows Forms allem, was WEB anbieten konnte, weit überlegen ; Auch heute ist Ajax nicht in der Lage, die volle Desktop-Erfahrung zu reproduzieren (nicht so, wie es sollte, aber ...).
Java hatte damals eine hässliche Benutzeroberfläche (weiß jetzt nicht), also wählten wir .NET und verwendeten seitdem C #.
Desktop-Anwendungen werden nicht in absehbarer Zeit sterben, einige Dinge können immer noch nicht in einem Webbrowser reproduziert werden.
Ich habe Java, C ++, Delphi und andere in Betracht gezogen, bevor ich vor sechs Jahren angefangen habe. Keiner bot die Einfachheit und Leistungsfähigkeit von c # .NET mit kleinen Nachteilen (wie das Framework, das damals noch keiner hatte). Nun, jede Windows-Box wird sicherlich .NET Framework 2.0 haben.
Auch hier ist meine Verbraucheranwendung sehr spezifisch und auf einen geschlossenen Markt ausgerichtet, aber wir haben nichts gegen .NET.
Vielleicht sehen Sie das, weil viele der beliebten Desktop-Apps eine Code-Basis älter als 2001 haben?
Edit: Ich hätte wahrscheinlich älter sagen sollen als 2003 oder 2004 ... Ich bezweifle, dass jemand in den ersten ein oder zwei Jahren der .NET-Version eine große Desktop-App gestartet hätte.
Intuits TurboTax 2007 und 2008 sind beide in .NET geschrieben. Im Gegensatz zu der Demo eines Nischenmarkt-Videobearbeitungswerkzeugs, das ich in einem Kommentar zu einer anderen Antwort kritisierte, installierte es tatsächlich vollständig sauber und ohne Zwischenfälle (einschließlich seines Selbstaktualisierungstricks) auf meiner etwas alternden XP-Box hier zu Hause.
>Die diesjährige Benutzeroberfläche unterscheidet sich wesentlich von den vergangenen Jahren und ist größtenteils besser. Da der Übergang zu .NET im letzten Jahr stattgefunden zu haben scheint, ohne die Benutzeroberfläche sehr zu ändern, kann die neue Benutzeroberfläche nicht dem Wechsel zu .NET angelastet werden (oder ihr zugeschrieben werden).
Ich bin nur ein Benutzer und habe keine Ahnung, was ihr Entwicklerteam zum Wechseln motiviert hat.
Ich denke, das ist das erste Softwarepaket für den Einzelhandel, das ich in der Wildnis gefangen habe, das eindeutig auf .NET basiert.
Das ist eine Schande. Der einzige Grund, sich bei der Desktop-Entwicklung mit .net zurückzuhalten, ist die Anforderung des .net-Frameworks auf dem Desktop-Rechner, aber das ist ein kleiner Preis für die Vorteile, die man erhält, wenn man in der .net-Umgebung arbeiten kann.
Solange Sie keine Performance benötigen, kann ich keinen Grund sehen, .NET nicht zu benutzen. Mit den neuen super kleinen redistriutables können Sie ein .net Installationsprogramm einschließen, das einige hundert KB aufnimmt.
Ich würde sagen, dass die Produktivitätsgewinne einer modernen, müllsammelbaren Sprache C ++ nur dann zu einer guten Option machen sollten, wenn Sie bereits Entwickler haben, die in dieser Sprache kompetent sind oder spezielle technische Anforderungen haben, die es notwendig machen 'Maschinen sind so gesperrt, dass die .net-Plattform nicht verwendet werden kann.
Obwohl ich noch kein Teil der Arbeitskraft bin (d. h. ich bin ein Student), schreibe ich in C # alles, womit ich davonkommen kann. Nichts anderes, was ich versucht habe, kommt der Effizienz und Reinheit dieser Sprache nahe (und bietet alle Produktivitätsmerkmale von Visuall Studio).
Ich habe festgestellt, dass in Process Explorer immer mehr meiner Desktop-Apps verwendet werden gelb markiert (dh sie sind .Net). Wie oben erwähnt, ATIs Catalyst ist, Windows Live Mesh, viele Spiele haben .Net Update oder Config-Engines, sowie die meisten Bits, die ich schreibe, die es noch nicht ganz in die Öffentlichkeit geschafft haben (weil ich nicht habe so viel Zeit wie ich für das Codieren und Testen möchte. Auch große Teile von Visual Studio sind .NET - zumindest nach Process Explorer.
Ich denke, dass es, wie oben erwähnt, eine Menge Desktop-Apps gibt, die ältere Code-Basen haben, die ihre Besitzer nicht konvertieren werden, es sei denn, sie haben einen fantastischen Wert.
Nun, es gibt Apps wie Tomboy und Beagle Diese sind als Teil einiger Linux-Distributionen verfügbar, so dass ich nicht sicher bin, ob sie als High-End-Consumer-Anwendungen gelten. Wenn ich darüber nachdenke, bin ich mir wirklich keiner anderen "Nicht-Enterprise" -Anwendungen bewusst, die in .NET-Sprachen geschrieben sind.
Nicht die herkömmliche Desktop-App, aber das ATI Catalyst Control Center ist .NET-basiert.
Tatsächlich habe ich einige Anwendungen gefunden, die .NET auf meinem Desktop benötigen.
Das bekannteste ist Paint.Net, aber auch "Catalyst Control Center", das mit meiner ATI-Grafikkarte geliefert wird.
Und natürlich schreibt unser Unternehmen eine eigene .Net-Desktop-Anwendung. Unsere Zielgruppe sind Geschäftskunden.
Es wird wahrscheinlich nicht eine ganze Menge winforms-Apps im herkömmlichen Sinn geschrieben werden, aber die nächste Version von beiden Windows Live Messenger wird in Windows presnetation foundation geschrieben sein und ich denke, dass dies der Trend sein wird.
Windows Media Center wurde in C # geschrieben, was ziemlich beeindruckend ist, aber es ist auch nicht Ihre traditionelle winforms-App.
TechSmiths Jing ist .NET, und in der Tat ist es WPF, also ist es 3.5, blendende .NET.
Fast alle Client-Programme, die ich hier geschrieben habe, sind in .NET; Es ist eine hervorragende Plattform für Geschäftsanwendungen. Allerdings werden die meisten Programme, für die .NET ein gutes Ziel darstellt, stattdessen als Webanwendungen bereitgestellt. der Rest sind in der Regel grafische und CPU-intensive Anwendungen, die in der Regel aus Leistungsgründen in C ++ implementiert sind. Aus dem gleichen Grund sehen Sie auch nicht zu viele Desktop-Anwendungen, die in Java geschrieben sind.
Die meisten von Ihnen beziehen sich auf Open Source. Ich stimme zu, es gibt einige Projekte mit .NET (ich verwende RSSBandit zum Beispiel), aber sie sind (meistens) egal. Aber was ist mit Enterprise-Apps? Vor kurzem habe ich App geschrieben, die wie MS Surface ist und es für Werbezwecke ist. Davor musste ich zum Beispiel eine App schreiben, um das Lager zu warten. Etwas anderes? In Zeiten von WinForms habe ich eine App geschrieben, die ebay-ähnliche Seiten unterstützt. Brauchst du noch mehr?
Persönlich denke ich, dass .NET im Geschäftsleben weit verbreitet ist (was man nicht jeden Tag sieht), und es wird nicht von Open Source benutzt (warum? Ich weiß nicht, vielleicht hassen Mitarbeiter MS?). Ich denke aber auch, dass es sich in Richtung .NET ändern wird, insbesondere mit den nächsten Versionen der Windows-Plattform. Fast hätte ich es vergessen - die Installation von .NET Framework ist kein Problem, seien Sie ernst, Benutzer sind nicht so dumm und faul!
Und es ist wahr, dass Desktop seine Mojo-Web-Umgebung verliert, aber es wird niemals sterben;)
Microsoft InfoPath - Teil von Microsoft Office ist auch in .NET geschrieben.