Ich habe zwei datenintensive Anwendungen in Silverlight entwickelt. Eine begann als SL2-B2-Anwendung und wurde in SL2 ausgeliefert, die andere ist eine SL3-Anwendung. Aus Sicht einer datenintensiven Anwendung gibt es eigentlich keinen Unterschied zwischen dem Mac und dem PC. Ich hatte einige Rendering-/Performance-Probleme auf dem Mac, aber nichts, was mich die Verwendung von SL bereuen ließ. (Sie können sich meine anderen Fragen ansehen, um die Frage der Silverlight-CPU-Nutzung zu sehen)
Es gibt eine Menge Dinge, die für eine datenintensive Anwendung sehr wertvoll sind, wenn man SL verwendet (viele davon sind meiner Meinung nach in traditionelleren Web-Sprachen unmöglich):
- Isolierte Speicherung - Sie können große Datenmengen lokal speichern, auf Wunsch auch verschlüsselt.
- Mutli-Threaded-Ausführung - Sie können Daten parallel verarbeiten und die Vorteile von Mehrkern-CPUs voll ausnutzen (in Kombination mit Nr. 1 können Sie viele Dinge tun, die vorher nicht möglich waren)
- Binäre Kodierung (bei Verwendung von WCF als Dienst) - dies sorgt für eine hohe serverseitige Effizienz bei der Übertragung der Daten (obwohl ich vermute, dass dies mit anderen Technologien repliziert werden könnte, aber mit SL3 und WCF ist es kostenlos)
- Nutzung der lokalen GPU-Beschleunigung für das Rendering. Wenn Ihre datenintensive Anwendung komplexe Visualisierungen erzeugt, kann dies einen großen Schub bringen
- Eine gemeinsame austauschbare Sprache für Client- und Serverseite. Wir teilen eine Menge Code auf beiden Seiten. Wir berechnen die Ergebnisse auf der Client-Seite mit GENAU denselben Code-Stücken, die wir auf der Server-Seite verwenden. (Im Moment "verlinken" wir die Codedateien in SL- und reguläre .net-Assemblies, mit .net 4 können wir Bibliotheken gemeinsam nutzen) - dies führt zu einer großen Effizienz bei der Programmierung und beim Testen.
Auch - jemand kommentierte oben zu "nur schreiben native Anwendungen" - Ich habe meine Anwendungen in Ort buchstäblich Hunderte von Zeiten aktualisiert - alle transparent für die Endbenutzer. Das Schreiben der nativen Anwendungen ist meiner Erfahrung nach nicht wirklich das Problem, sondern ihre Bereitstellung, Aktualisierung usw. SL macht dies extrem einfach, wenn nicht sogar automatisch. Ich sage den Leuten immer, die versuchen, SL gegen Flash oder SL gegen HTML zu positionieren - für mich ist der wirkliche Unterschied SL gegen (die gesamte native Anwendung, das native Installationsprogramm, die Update-Erfahrung).
Viel Glück! Lassen Sie uns wissen, wie es ausgeht.
Übrigens: Ich entwickle alles auf einem Mac Pro mit Win7 in VMWare Fusion.