Frage

Mein Unternehmen entwickelt verschiedene Arten von Anwendungen.Ein Großteil unseres Geschäfts besteht aus der Entwicklung multimedialer Apps, die üblicherweise in Flash erstellt werden.Allerdings beginnt diese Seite des Hauses nun damit, sich der Flex-Entwicklung zuzuwenden.

Die meisten unserer anderen Entwicklungen werden mit .NET durchgeführt.Ich versuche stattdessen, die Silverlight-Entwicklung voranzutreiben, da dadurch die .NET-Entwickler im Team besser ausgenutzt würden.Ich bevorzuge die Silverlight-Plattform gegenüber der Flex-Plattform, weil Silverlight ausschließlich aus .NET-Code besteht.Wir beschäftigen mehr .NET-Entwickler als Flash/Flex-Entwickler und die meisten unserer Flash/Flex-Entwickler sind Grafiker (keine echten Programmierer).Der einzige Grund, warum sie derzeit auf Flex setzen, ist, dass es der logische Schritt von Flash zu sein scheint.

Ich habe mit beiden entwickelt und bin ehrlich davon überzeugt, dass die Arbeit mit Silverlight einfacher ist.Aber ich versuche Leute zu überzeugen, die nur Flash-Entwickler sind.

Also hier ist meine Frage:Wenn ich in ein Meeting gehe, um Silverlight zu loben, warum sollte sich ein Unternehmen dann für Silverlight statt für Flex entscheiden?Abgesehen von dem offensichtlichen „Nicht jeder hat Silverlight“, welche Vor- und Nachteile hat jeder?

War es hilfreich?

Lösung

Ich denke, Sie sollten Silverlight als langfristiges Spiel betrachten, so wie es Microsoft anscheinend tut.Es besteht offensichtlich ein Gleichgewicht zwischen der Verwendung von Silverlight bzw.Flash, wenn Sie sich Gedanken über die Reichweite und die Installationsbasis machen, aber hier sind einige Gründe, warum Silverlight eine gute Richtung ist:

  1. Second-Mover-Vorteil – So wie Microsoft mit .NET ein „besseres Java“ entwickelt hat, können sie sich heute ansehen, wie Sie ein RIA-Plugin von Grund auf entwerfen würden.Sie haben den Vorteil, dass sie wissen, wie Menschen das Internet heute nutzen, was die Erfinder von Flash nie genau hätten erraten können.Flash kann Funktionen hinzufügen, aber realistisch gesehen ist es nicht möglich, die Plattform aufzugeben und von vorne zu beginnen.

  2. Vertrautheit der Entwickler – Obwohl Silverlight ein neues Modell ist, ist es den Entwicklern nicht völlig unbekannt.Sie werden die Funktionsweise von Silverlight viel schneller „verstehen“, als sie es verstehen werden, indem sie eine neue Entwicklungsumgebung mit einer neuen Skriptsprache und neuen Ereignisparadigmen starten.

  3. Abschaffung des Timeline-Modells in Flash – Flash wurde ursprünglich für Keyframe-basierte Animationen entwickelt, und obwohl es Möglichkeiten gibt, dies zu abstrahieren, ist es der Kern der Funktionsweise von Flash.Silverlight macht dies zugunsten eines anwendungsorientierten Modells überflüssig.

  4. ScottGu – ScottGu ist von Silverlight begeistert.sagte Nuff.

  5. Coole neue Funktionen – Während Silverlight bei einigen offensichtlichen Funktionen (z. B. Webcam-/Mikrofon-Integration oder 3D-/Grafikbeschleunigung) immer noch Rückstand auf Flash hat, sind in Silverlight einige raffinierte neue Technologien integriert – Deep Zoom ist ein Beispiel.Ich sehe mehr „revolutionäre“ Technologien auf der Silverlight-Seite, während sich Flash derzeit offenbar im Wartungsmodus befindet.

Andere Tipps

Hier stellen sich zwei Fragen:Silverlight vs.Flash als Plattform und Silverlight vs.Flex als RIA-Framework.

Die erste Frage hängt von Ihrem Zeitrahmen ab.Flash Player hat eine Reichweite von über 95 %, Silverlight hat nicht einmal annähernd diese Reichweite.Allerdings könnte Silverlight dorthin gelangen, schließlich wird es von Microsoft unterstützt.Wenn Sie nächste Woche eine Website starten möchten und ein großes Publikum erreichen möchten, ist Silverlight keine Option.Wenn Sie eine wirklich coole Anwendung starten möchten, die jeder nutzen möchte, ist das etwas anders. Wenn Ihre App gut genug ist, installiert Ihre Zielgruppe möglicherweise Silverlight, nur um sie ausführen zu können.

Bei der zweiten Frage geht es darum, wie einfach es zu entwickeln ist Anwendungen in Silverlight.Flex ist nicht nur eine Reihe von Widgets, es ist ein sehr großes Framework, das viele Dinge tut, die die Arbeit des Entwicklers erleichtern.Sie könnten dieselben Anwendungen nur mit der Kern-Flash-API schreiben, aber das wäre sehr viel aufwändiger.Abhängig davon, was in Silverlight verfügbar ist, sollte dies ein wichtiger Faktor bei der Entscheidung sein.Wenn Sie die Entwicklungszeit verkürzen können, lohnt es sich dann, zwei Plattformen zu haben?

Ich denke, Silverlight ist am vorteilhaftesten für Unternehmen, die .NET-Entwickler haben, aber niemanden mit Designererfahrung.

Fähigkeiten werden bei der Suche nach C#- oder VB-Entwicklern leichter zu finden sein als bei ActionScript-Gurus.Es gibt jedoch einen Kompromiss:

Designerfahrung ist nicht nur eine Investition in Designer mit künstlerischen Fähigkeiten, sondern auch in das Wissen und die Tools von Adobe.Sie können nahezu garantieren, dass ein professioneller Designer einen Mac verwendet und Erfahrung mit Adobe-Tools hat.

Im Moment sind die Silverlight-Designertools unausgereift und können Kopfschmerzen bereiten.Dies ist beispielsweise problematisch, wenn Blend-Fehler beim Rendern von XAML auftreten, die einen IValueConverter enthalten.Ich habe keine Ahnung, wie die Adobe-Entwicklererfahrung aussieht, ich bin mir sicher, dass sie genauso haarig ist.

In dieser Phase des Spiels kommt es also auf die Personalressourcen an:

Wenn Sie über .NET-Erfahrung verfügen und wenig in Designkenntnisse investiert haben, entscheiden Sie sich für Silverlight.Programmierkenntnisse/-tools sind übertragbar.Wenn Sie über Designerfahrung und -fähigkeiten verfügen, entscheiden Sie sich für Flex.Designerfähigkeiten/-werkzeuge sind übertragbar.

In jedem Fall erfordern beide Client-Plattformen die Kommunikation mit Diensten, um Daten abzurufen, sodass Sie immer Ihre vorhandene Programmierkompetenz im Back-End nutzen können.

Paraphrasiert Jons Meinung aus einem anderen Blickwinkel:

Ich denke, man sollte Flex als langfristiges Projekt betrachten, so wie es Adobe anscheinend tut.Es besteht offensichtlich ein Gleichgewicht zwischen der Verwendung von Silverlight bzw.Flex, wenn Sie sich Gedanken über die Reichweite und die Installationsbasis machen, aber hier sind noch weitere Gründe, warum Flex eine gute Richtung ist:

  1. Zweiter Mover -Vorteil - Genau wie Adobe ein "besseres Java -Applet" mit Flash erstellt hat, können sie sich heute ansehen, wie Sie eine Laufzeit von Grund auf neu erstellen würden.Sie haben den Vorteil, zu wissen, wie Menschen heute das Web nutzen, was die Erfinder vorhandenen Kundenplattformen niemals genau erraten haben könnten..NET kann Funktionen hinzufügen, aber sie können die Plattform nicht realistisch schmeißen und von vorne beginnen.

  2. Designer -Vertrautheit - Während Flex/Air ein neues Programmmodell ist, ist es den Designer nicht ganz unbekannt.Sie "bekommen" die Art und Weise, wie Flex viel schneller funktioniert, als sie verstehen, dass sie eine neue Designumgebung mit neuen Features schlechten Tools und neuen Animationsparadigmen aufbauen.

  3. Das RGB-Farbmodell in Silverlight- .NET wurde ursprünglich für Windows erstellt, und es ist der Kern der Funktionsweise.Flex hat sich vor langer Zeit für ein Design-zentriertes Modell verlassen.

  4. Alle Ihre Tools laufen auf Ihrem Mac.Sagte Nuff.

  5. Coole Funktionen - Silverlight hat immer noch einige Nachhole mit Blitz für einige offensichtliche Funktionen (wie Webcam / Mic -Integration oder 3D / Grafikbeschleunigung).

Wir machen sowohl Silverlight als auch Flex, und hier ist die Sichtweise der Entwickler für beide.

Vorteile von Silverlight:

  1. Leistungsfähigkeit von C#, Codeausschnitte, Wiederverwendung bestehender C#-Algorithmusimplementierungen
  2. Leistungsfähigkeit auch anderer Sprachen, Generics und Linq usw
  3. Leistungsfähigkeit der nativen Ausführung von CLR anstelle des Action Script Interpretators von Flash
  4. Ein integriertes Visual Studio für alle Entwicklungen
  5. Expression Blend ist ein wirklich cooler und fortschrittlicherer Editor als Flex Builder
  6. XAML ist suchmaschinenfreundlich
  7. Ziemlich schöne Zustandsübergänge und einfach zu definieren
  8. Threading und asynchrone Aufgaben
  9. Barrierefreiheit, niemand weiß, dass Microsoft immer die besten Barrierefreiheitsfunktionen für alle seine Produkte bereitgestellt hat, sie haben immer gut mit Menschen mit Behinderungen funktioniert, im Vergleich zu den Browsern unterstützt nur IE vollständige Barrierefreiheit und Safari/Firefox usw. liegen nicht näher beieinander.

Nachteile von Silverlight:

  1. Streng Microsoft-Plattform, ich weiß, viele Leute werden darüber streiten, aber im aktuellen Szenario kann die Hälfte der Intel-Mac-Leute Silverlight 3.0 nicht zum Laufen bringen, alle PPC-Mac-Leute können Silverlight 2.0 und höher nicht verwenden und kein Silverlight für Linux.
  2. Es gibt Mono, wird aber von Microsoft nicht offiziell unterstützt. Es wird immer hinter dem Reverse Engineering von .NET und der Portierung auf eine andere Plattform zurückbleiben, es ist noch nicht out-of-the-box.
  3. Die meisten Komponenten/Steuerelemente sind „versiegelt“, sodass es schwierig ist, sie zu erweitern und zu überschreiben, um einfach neue Komponenten herzustellen.
  4. Fehlerhafte CustomControl/UserControl-Architektur.Z.B.Sie können den XAML-Stamm nicht als ComboBox oder ein anderes Steuerelement verwenden und ihm sowohl Design als auch Code überlassen. Sie können benutzerdefinierte Steuerelemente erstellen, diese sind jedoch viel zu komplex
  5. Die Bindung erfordert die Benennung von Komponenten und unterstützt keine Instanzausdrücke wie Flex. Die bidirektionale Bindung ist in Silverlight zwar gut, Sie müssen jedoch lange Codes für mehrere Bindungen für einen mathematischen Ausdruck schreiben
e.g.
// this is possible in flex..
// but not in silverlight
<mx:TextBox id="firstName"/>
<mx:TextBox id="lastName"/>

// display full name..
<mx:Label text="{firstName.text} {lastName.text}"/>

Vorteile von Flex:

  1. Wirklich plattformunabhängig, unterstützt auf verschiedenen Hardware- und Betriebssystemen und funktioniert wirklich überall großartig.
  2. Open Source macht es wirklich einfach, die Funktionalität zu verstehen und zu erweitern.
  3. Jedes Steuerelement/jede Komponente kann erweitert werden und es gibt weniger Einschränkungen, die das Standardverhalten außer Kraft setzen.
  4. Der einfachste Weg, neue Komponenten zu erstellen, besteht darin, MXML von jedem Steuerelement ableiten zu lassen und es mit umfangreicher Bindung zu erweitern
  5. Flex enthält viele Steuerelemente und Sie benötigen keine Bibliothek von Drittanbietern

Nachteile von Flex:

  1. Langsame Ausführung für iterative Ausführungen, keine Threads!!keine asynchronen Aufgaben!!
  2. Basierend auf Punkt 1 sind keine großartigen Animationen oder Grafiken möglich
  3. Keine Generika, keine anderen Sprachen, keine Linq.
  4. Die Zahlenklasse weist einen Fehler auf. Der vollständige 64-Bit-Wert kann nicht gespeichert werden
  5. Eclipse ist schlecht darin, eine großartige Benutzeroberfläche zu entwerfen

Abschluss

  1. Wir verwenden Flex für Datenanwendungen, das sind einfache Formularverarbeitungsanwendungen
  2. Silverlight für extrem reichhaltige Grafiken und Animationen

Das Problem mit Silverlight ist, dass es immer noch viele Leute gibt, die es nicht installiert haben.Außerdem bin ich mir nicht sicher, wie gut Ihre bestehenden .Net-Entwickler ihre vorhandenen Fähigkeiten nutzen können, wenn sie nur mit der traditionelleren serverseitigen .Net-Codierung vertraut sind.

Aus welchen Gründen bevorzugen Sie Silverlight gegenüber Flex?Wenn Sie die SOFlow-Community nach Gründen fragen müssen, erscheint es seltsam, dass Sie so bereit sind, sie voranzutreiben.

Ein weiterer Vorteil der Flex-Entwicklung besteht darin, dass Sie auf die Entwicklung von Desktop-Anwendungen (Adobe AIR) mit demselben Quellcode (und derselben IDE) umsteigen und diese über das Internet verteilen können.Sie können auschecken Dasfür die Zukunft der Flash-Plattform.
Update Q3/2011:Flash 11 unterstützt 3D-Beschleunigung auf niedriger Ebene und es gibt bereits viele Frameworks und große Engines (Unreal Engine 3, Unity), die dies unterstützen.Das Verkaufsargument für die Zukunft ist jedoch, dass die AIR-Anwendung auf Windows-, Mac-, Android-, Playbook- und iOS-Plattformen funktionieren wird (Linux-Unterstützung wurde eingestellt).Mit einem absolut minimalen Aufwand bei der Portierung zwischen diesen (zumindest wenn Sie Adobe CS5.5+ haben).

Update Q2/2015:Silverlight ist offiziell tot.Adobe AIR ist lebendig, aber nicht erfolgreich – je nach Ihren Fähigkeiten und Ihrer Toolkette könnte es nützlich sein.Sowohl Microsoft als auch Adobe geben zu, dass HTML5 der richtige Weg ist (ob mit AIR oder Apache Cordova oder Visual Studio).

Update Q3/2017:Haha wow, wer nutzt überhaupt noch Flash?

Nicht zu vergessen:

Flex ist weitgehend plattformübergreifend, da es als Java-Kompilierung kompiliert wird, was bedeutet, dass Sie bei der Entwicklung von Flex-Anwendungen problemlos Mac oder Linux verwenden können.Ich habe mein aktuelles Tempomat-Setup (das Linux verwendet). Ich erstelle Build-Flex-Anwendungen, aber die Entwickler verwenden sowohl Mac, Linux als auch Windows.

Meiner Erfahrung nach fühlen sich Java-Entwickler im Flex Builder recht wohl, da dieser auf Eclipse basiert.

Auf SO werden Sie bei dieser Frage nie eine faire Stimme bekommen, da es dort so viele Microsoft-Entwickler gibt.

Außerdem werden die Leute diese Antwort wahrscheinlich ablehnen, was eigentlich alles sagt.

Ich sage, lassen Sie Ihre Entwickler beide Plattformen ausprobieren und sehen, welche sie bevorzugen.

Um auf die Kommentare unten zu antworten, ist mir gerade aufgefallen, dass es zwar viele Antworten gibt, die Flash/Flex empfehlen, die Antworten für Silverlight jedoch viel mehr positive Stimmen haben.Es geht nicht darum zu lügen, es geht einfach darum, das zu bevorzugen, womit man vertraut ist, nicht unbedingt die beste Plattform.

Silverlight-Programmierer wissen nicht, was sie verpassen, wenn es um Flex geht.Silverlight verfügt nicht über das Komponentenmodell und die Ereignisauslösefunktionen von Flex.Mit XNA und C# muss ein Freund von mir alle möglichen Hürden überwinden, um seine Silverlight-Anwendung zum Laufen zu bringen.Dann muss es einem Designer übergeben werden, damit es halbwegs anständig aussieht.

Hören Sie sich die Podcasts von deepfriedbytes.com zu Silverlight an und Sie werden hören, wie selbst ein paar Leute, die Silverlight wirklich vorantreiben, einige dieser Probleme anerkennen.(ICH denken, wenn ich mich richtig erinnere, arbeitet einer der Jungs für Microsoft, aber ich könnte mich irren – ich habe es mir letzte Woche angehört.Sie sind sich einig, dass Silverlight in seinem aktuellen Zustand noch nicht ganz für große Anwendungen geeignet ist.

Für einen sauberen, unkomplizierten Ansatz würde ich mich für Flex entscheiden – vor allem, wenn Sie bereits mit Flash und ActionScript 3.0 vertraut sind.Flex macht meiner Meinung nach viel mehr Sinn – Silverlight muss noch ausgereift sein.

Letztendlich sollten Ihre Entwickler Ihre Technologie nicht diktieren.Dies ist unbedingt eine Produktentscheidung, die auf Ihren Benutzern basieren sollte.

Wenn Sie die Bereitstellung im Verbraucher-Internet durchführen, ist der Flash Player oder AJAX die richtige Wahl.Wenn Sie die Bereitstellung in einem privaten LAN für ein .net-Unternehmen durchführen, haben Sie verschiedene Optionen.

Als Grafikdesigner habe ich in den letzten Jahren Flash (ein- und ausgeschaltet) und in den letzten 1,5 Jahren Silverlight (und seinen großen Bruder WPF) verwendet.Basierend auf dem, was ich von meinem Team (alle sind Entwickler oder ehemalige Entwickler) gehört habe, entscheiden Sie sich für Silverlight, wenn Ihre .Net-Entwickler die gesamte Programmierung übernehmen.Ich liebe Flash, aber selbst mit der OOP-Überarbeitung auf ActionScript 3 in Flash 9 und höher ist es immer noch eine etwas eigenartige Sprache, und das Hin- und Herwechseln zwischen AS3 und C# wird Ihre Entwickler wahrscheinlich in den Wahnsinn treiben :-).

Gehen Sie für Ihre Designer wie folgt vor:

  • Besorgen Sie ihnen eine Kopie von Expression Blend, dem GUI-Entwicklungstool für Silverlight/WPF.

  • Blend hat anfänglich eine etwas steile Lernkurve und die Benutzeroberfläche bietet eine Menge Variablen/Optionen. Investieren Sie also in etwas Schulung und geben Sie Ihren Designern Zeit, sich mit der Benutzeroberfläche vertraut zu machen.

  • Apropos Schulung: Abonnieren Sie die Videobibliothek von Lynda.com, insbesondere.der Lee Brimelow Expression Blend-Schulungskurs.

  • Vorbehalt:Blend und WPF ändern sich schnell, daher stößt man manchmal auf Fehler in Blend, die in der nächsten Beta/CTP von Blend behoben werden.Z.B.Es gab einen Fehler in Blend 2, der dazu führte, dass meine Storyboards (Animationen) in einem aktuellen Projekt nicht funktionierten.Ich habe auf Blend 2.5CTP aktualisiert und es hat funktioniert.

  • Silverlight-Inhalte scheinen nicht immer mit der neuesten Betaversion des Silverlight-Plugins zu funktionieren. Dies sollten Sie jedoch im Hinterkopf behalten, wenn Sie eine neue Funktion testen, die nur im neuesten Silverlight-Plugin verfügbar ist.

  • Investieren Sie in ein leistungsstarkes System (Quad Core, 4 GB RAM usw.). Blend verbraucht viele Ressourcen, insbesondere.wenn Sie Tonnen von Schichten haben.Z.B.Ich arbeite an einer App mit über 100 Ebenen (!) in der Basis-App (und weiteren 100+ in einigen Benutzersteuerelementen) und etwa 40–50 Storyboards.Alle paar Minuten muss ich Blend neu starten, da die Benutzeroberfläche nicht mehr reagiert (aber nicht einfriert).Entweder das, oder Sie verschieben alles, was Sie können, in Benutzersteuerelemente.

Früher hat mein Team umfangreiche Webfunktionen in Flex geschrieben und schreibt sie jetzt in Silverlight.

Unsere Gründe für diesen Wechsel:

  • FlexBuilder basiert auf Eclipse.Eclipse ist schrecklich!Kostenlos, aber voller Bugs, voller Glitches und langsam.
  • FlexBuilder ist doppelt so teuer wie Expression Blend, das wir bei MSDN ohnehin kostenlos bekommen.
  • Flex ist eine Belastung für die Quellcodeverwaltung, es mag nicht, Dateien an einem Ort abzulegen, und es funktioniert nicht gut mit anderen Teilen Ihrer Lösung (wir haben es mit SourceGear Vault und SVN versucht).
  • Die Flex-Version von ActionScript gefällt den meisten SOAP-Implementierungen nicht, insbesondere weist sie alle möglichen Probleme mit denen von .Net WebMethod auf.
  • Obwohl wir regelmäßig lizenzierte Flex-Komponenten verwenden, stellt es fest, dass wir diese Version nicht haben, und fügt nur Demo-Wasserzeichen hinzu.Die einzige Möglichkeit, dies zu beseitigen, besteht darin, das Projekt zu zerlegen, Flex neu zu installieren, die Lizenzen neu zu installieren und es neu zu erstellen.
  • FlexBuilder mag Vista überhaupt nicht.
  • Die Akzeptanz von Silverlight nimmt zu, sobald es soweit ist, dass wir es als Voraussetzung für die relevanten Funktionen hinzufügen konnten, die wir umgestellt haben.Wenn wir für ein Webpublikum (und nicht für ein Unternehmenspublikum) arbeiten würden, bin ich mir nicht sicher, ob wir das hätten tun können.

Der Rest unseres Projekts besteht aus .Net und C#. In einem Java-Shop finden Sie möglicherweise alle diese Probleme weniger wichtig.

Wie Kibbee oben angedeutet hat, ist das Argument, bestehende .Net-Entwickler zu nutzen, nicht stichhaltig.Es ist unmöglich, ein Experte in allen Facetten der .Net-Entwicklung zu sein.Die Plattform ist einfach zu groß.Das Gleiche gilt für Java.Das Einzige, was Silverlight aus fachlicher Sicht zu bieten hat, ist, dass Sie in Ihrer bevorzugten .Net-Sprache programmieren können.Dieser Vorteil ist relativ gering, wenn Sie bereits eine bedeutende Webentwicklung durchführen, die JavaScript verwendet, da Action-Skript eine Variante ist.Um einen Programmierer auf Flex oder Silverlight umzustellen, muss man sich also mit der API der Plattform vertraut machen.

Wir haben das gleiche Problem durchgemacht und Flex hat deutlich gewonnen.Unsere .NET-Entwickler waren zunächst besorgt, aber nachdem sie so lange mit Ajax und JavaScript gearbeitet haben, LIEBEN und genießen sie es jetzt wirklich, in Flex zu arbeiten.

Hier ist ein einfacher Test für Sie...Versuchen Sie, mindestens drei Beispiele realer Silverlight-Anwendungen zu finden (bei denen es sich nicht um Spiele, Videoplayer oder Gadgets handelt).Machen Sie dann dasselbe für Flex.

Ich denke, dass Silverlight undIch würde mich für Silverlight entscheiden, und ich denke, der Schlüssel, um Benutzer dazu zu bringen, das Plug-in zu installieren, liegt darin, eine gute Plug-in-Erkennungsseite zu haben, die erklärt, was SL ist und warum sie es benötigen.Ein Beispiel hierfür finden Sie unter http://memorabilia.hardrock.com/ und versuchen Sie es mit deaktiviertem SL-Plug-in.

Obwohl ich mit Silverlight gearbeitet habe und von der Möglichkeit, Apps außerhalb des Browsers laufen zu lassen, sehr begeistert bin, besteht ein großer Vorteil von AIR darin, dass es Zugriff auf native Drag-and-Drop-Funktionen bietet.Dadurch können Sie sehr benutzerfreundliche Funktionen zum Hochladen von Bildern oder Dokumenten erstellen (z. B.Flickr-Uploader).Soweit ich gehört habe, konzentriert sich MS noch nicht auf diese Art der Unterstützung (d. h.keine Pläne angekündigt).

Ich verwende diese Faustregel:Wenn Ihr Unternehmen internetbasierte Multimedia-Software entwickelt und Kunden mit allen möglichen Plattformen hat und Sie keine datenbankintensiven Anwendungen durchführen, ist Flex die definitive Antwort. Wenn Ihr Unternehmen sowohl internet- als auch DVD-basierte Produkte entwickelt, die weniger interaktiv, aber dafür intensiver sind ( CPU, Speicher) und verbraucht lächerlich viel Datenbanktransaktion. Silverlight ist sinnvoller

Jemand sagte:„Finden Sie 3 echte Silverlight-Anwendungen“.Ok, ich wusste einiges aus dem Kopf, aber ich habe es trotzdem gegoogelt.Die Liste:

  • Olympische Spiele 2008 in Peking (Statistiken hier, 250 TB Daten geliefert!)
  • Netflix-On-Demand-Player
  • AOL-E-Mail-Client (möglicherweise noch nicht veröffentlicht)

Oh, keine Videoplayer?Nun, dann bleiben noch die UFC-Anwendung (es ist eine Mischung aus Video/Chat/anderem Zeug) und der AOL-E-Mail-Client.Silverlight zeichnet sich im Videobereich aus und gewinnt dort Fuß, aber das bedeutet nicht, dass es nicht auch andere Dinge tun kann.Ich sehe keinen Grund, es abzulehnen, nur weil es gute Videoqualität bietet.

Infowelt [Verknüpfung] sagte: „Silverlight verfügt über erhebliche technische Vorteile und eine relativ gute Leistung.“Es handelt sich um eine sehr leistungsfähige RIA-Technologie, die besonders in den Händen von Programmierern mit .NET-Erfahrung und Designern mit XAML-Erfahrung nützlich ist.“ Es ist ein guter Artikel, den Sie zu Ihrer Frage lesen können.

Meine Antwort:Wenn Sie ein Entwicklerteam haben, das mit .NET vertraut ist, sollte Silverlight an erster Stelle auf Ihrer Liste stehen.Wenn nicht, dann ist es ein echter Mist.Ich habe Artikel gesehen, in denen es hieß, dass Visual Studio im Vergleich zu dem, was Sie mit Flex verwenden, eine überlegene Entwicklungsplattform ist.Aber Flash ist nahezu allgegenwärtig.

Bedenken Sie auch, dass Silverlight 2 fast kein Javascript verwendet (ich glaube keines, bin mir aber nicht sicher).Daher ist jede Vermeidung von Silverlight aufgrund von JS unbegründet.

Wenn Leistung zählt, Silverlight gewinnt dort.Ich habe oft gesehen, dass die CPU-Auslastung meines Browsers auf 100 % anstieg und das Beenden des laufenden Fensters durch Flash immer beseitigt wurde.Besonders deutlich wird dies in Chrome, wo Sie den Prozess sehen können, der Ihre CPU beansprucht.Wenn Sie sich für Silverlight wegen seines Gaming-Potenzials interessieren, suchen Sie nach QuakeLight, der Silverlight-Portierung von Quake.Es entwickelt sich wirklich gut.

Ich denke wirklich, dass es darauf ankommt, wo Ihr Entwicklertalent liegt und welche Art von Anwendung Sie liefern werden.Einfaches Spiel?Blitz.Branchen-App?Silverlight.Zwischen?Befolgen Sie die Empfehlungen Ihrer Entwickler.

Wenn Sie .NET kennen, ist Silverlight 3.0 die richtige Wahl.Ich benutze es und ich liebe es.Ich muss mich übrigens nicht mit AJAX oder JS herumschlagen (ich habe keine Ahnung, was der Typ meinte, vielleicht SL 1.0). Bei Daten handelt es sich hauptsächlich um asynchrone WCF-Aufrufe (LINQ to SQL hinter WCF) oder XML-Dateien oder RIA-Dienste.Damit können Sie die meisten Shader-FX verwenden, es verfügt über Stile, Steuerungsvorlagen und die native Windows/Mac-Zwischenablage.Ich kann HD-Videos abspielen und die meisten Prozesse laufen auch auf langsamen CPUs sehr gut.Mir gefallen auch die Datenbindung und die Kontrollbindung, und die beobachtbaren Sammlungen sparen mir viel Zeit.Außerdem kann ich LINQ verwenden, was eine große Zeitersparnis darstellt, ganz zu schweigen von der Verwendung von Visual Studio zum Debuggen.

Ich entwickle .NET-Unternehmensanwendungen, daher kenne ich meine Installationsbasis und sie werden das Add-In installieren (normalerweise 30 Sekunden).Bei einer Front-End-Website verlieren Sie möglicherweise einige Benutzer, die Silverlight nicht installieren möchten oder keinen Mac oder Windows ausführen.Mit SL KÖNNEN Sie Apps außerhalb des Browsers mit 3.0 haben.

Ich bin vielleicht ein voreingenommener .NET-Typ, aber ich habe mich so schnell entwickelt, dass ich es nur empfehlen kann.

Sie sollten es ernsthaft nicht verwenden BELIEBIG dieser ActiveX2.0-Technologien.Weder Silverlight noch Flex...

Erstens handelt es sich bei beiden um nichts anderes als „verteilte Winforms-Frameworks mit Unterstützung für die Ausführung im Browser“, zweitens lassen sie sich nicht gut auf andere Geräte portieren (besonders gilt für Silverlight), und drittens funktionieren sie nicht Passt gut zu anderen Teilen Ihrer Seite.Sie funktionieren nicht gut für Menschen mit Behinderungen usw. usw. usw.Die Liste geht ins Unendliche ...

Sowohl Adobe als auch Microsoft versuchen diese Tatsache sehr zu verbergen, aber am Ende des Tages sind sowohl Silverlight als auch Flex nichts anderes als ActiveX in einer neuen Verpackung ...

Sicher, sie laufen in Sandboxes, sind verwaltete Sprachen und so weiter.Aber es handelt sich immer noch um ein großes Stück BLOB, das heruntergeladen wird, um lokal in Ihrem Browser, auch bekannt als ActiveX, ausgeführt zu werden ...

Das ist eine alte Frage, Die Geschichte hat jetzt gesprochen!

Silverlight wurde von Microsoft so gut wie aufgegeben, es bekam nie eine brauchbare Installationsbasis.Partei, weil Microsoft sich nicht zu 100 % dazu verpflichtet hat.

Flash (daher Flex) läuft noch.Allerdings unterstützen immer mehr Browser keine Plug-Ins, Es ist also nur eine Frage der Zeit (Jahre), bis Flush den Weg von Silverlight einschlägt.

Vielleicht wird Flex eines Tages ohne Plug-Ins auf HTML5 umgestellt …

Es wurde über das iPhone gesprochen und es hieß, die einzige Option sei Apples Way oder HTML5.

Flash Player ist offiziell auf fast allen Desktop-Plattformen (Windows, Linux, Mac) verfügbar und wird unterstützt, während Silverlight hauptsächlich unter Windows unterstützt wird.

die folgende Artikel Bietet einen Vergleich beider Plattformen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top