69 votes

Vs Silverlight Flex

Ma société développe plusieurs types d'applications. Beaucoup de notre activité vient de faire multimédia de type applications, généralement fait en Flash. Toutefois, maintenant que le côté de la maison est de commencer à migrer vers l'Flex développement.

La plupart de nos autres le développement se fait à l'aide .NET. Je suis en train de faire une poussée vers le développement de Silverlight au lieu de cela, puisque cela permettrait de mieux tirer parti de la .NET développeurs sur le personnel. Je préfère la plate-forme de Silverlight sur la Flex plate-forme pour le simple fait que Silverlight est tout .NET code. Nous avons plus .NET développeurs sur le personnel de Flash/Flex développeurs, et la plupart de nos Flash/Flex développeurs sont graphistes (pas des vrais programmeurs). Seule raison qu'ils poussée vers Flex droit est maintenant car il me semble que la logique de l'étape à partir de Flash.

J'ai fait le développement en utilisant à la fois, et honnêtement, je crois que Silverlight est plus facile de travailler avec. Mais je vais essayer de convaincre des gens qui ne sont que les développeurs Flash.

Alors, voici ma question: Si je vais aller à une réunion à louer Silverlight, pourquoi une entreprise voulez aller avec Silverlight au lieu de Flex? Autre que l'évidence "le monde n'a pas Silverlight", quels sont les avantages et les inconvénients de chacun?

52voto

Jon Galloway Points 28243

Je pense que vous devriez regarder Silverlight à long terme du jeu, tout comme Microsoft semble être en train de faire. Il y a un évident d'équilibre sur le moment d'utiliser Silverlight vs Flash lorsque vous êtes inquiet au sujet de la portée et de l'installation de base, mais voici quelques raisons Silverlight est un bon sens d'aller dans:

  1. Deuxième avantage, comme Microsoft a construit un "mieux Java".NET, ils sont en mesure de regarder la façon dont vous feriez la conception d'un RIA plugin à partir de zéro, aujourd'hui. Ils ont l'avantage de savoir comment les gens utilisent le web d'aujourd'hui, quelque chose que les inventeurs de Flash ne pourrait jamais avoir exactement deviné. Flash pouvez ajouter des fonctionnalités, mais ils ne peuvent pas réaliste chuck la plate-forme et de recommencer.

  2. Développeur familiarité - Tandis que Silverlight est un nouveau modèle, il n'est pas entièrement inconnu aux développeurs. Ils vont "prendre" le chemin de Silverlight fonctionne beaucoup plus rapidement que ce qu'ils comprennent de tir jusqu'à un nouvel environnement de développement avec un nouveau langage de programmation et d'événements nouveaux paradigmes.

  3. Se débarrasser de la timeline modèle en Flash - Flash a été construit à l'origine pour l'image clé des animations, et bien qu'il existe des moyens pour résumé cette distance, c'est à la base de la façon dont Flash fonctionne. Silverlight fossés pour une application centrée sur le modèle.

  4. ScottGu - ScottGu est tiré sur Silverlight. Nuff said.

  5. Nouvelles fonctionnalités - Tandis que Silverlight a encore du rattrapage à faire avec Flash sur certaines caractéristiques évidentes (comme webcam / micro intégration, ou en 3d / accélération graphique), il y a quelques nappe de nouvelles technologies intégrées à Silverlight - Deep Zoom est un exemple. Je vois de plus technologies "révolutionnaires" sur le Silverlight côté, tandis que le Flash semble être en mode maintenance à ce point.

30voto

Theo Points 60103

Il y a deux questions ici: Silverlight vs Flash en tant que plate-forme et Silverlight vs Flex comme RIA cadre.

La première question dépend de votre calendrier. Flash Player dispose de plus de 95%, Silverlight n'a pas de solution à proximité. Cependant, Silverlight peut y arriver, après tout, il est soutenu par Microsoft. Si vous avez l'intention de lancer un site pour la semaine prochaine et que vous voulez une énorme audience, Silverlight n'est pas une option. Si vous avez l'intention de lancer une application vraiment fraîche que tout le monde voudrait utiliser c'est un peu différent, si votre application est assez bon votre public cible peut installer Silverlight juste pour être en mesure de l'exécuter.

Quant à la deuxième question c'est une question de comment il est facile de développer des applications Silverlight. Flex n'est pas seulement un ensemble de widgets, c'est un très grand cadre qui fait beaucoup de chose que de faciliter le travail du développeur. On pourrait écrire la même des applications en utilisant uniquement le noyau de l'API Flash, mais il serait très beaucoup plus de travail. Selon ce qui est disponible dans Silverlight, ce devrait être un facteur important au moment de décider. Si vous pouvez réduire les temps de développement, c'est d'avoir deux plates-formes en vaut la peine?

22voto

Brian Leahy Points 7840

Je pense que Silverlight est le plus avantageux pour les entreprises qui ont .NET développeurs mais aucun ne avec le concepteur de l'expérience.

Les ensembles de compétences sera plus facile de trouver aussi loin que de trouver du C# ou VB développeurs vs trouver ActionScript du guru. Cependant, il est le compromis:

La conception de l'expérience est un investissement non seulement dans les Concepteurs avec des compétences artistiques, mais aussi dans les connaissances et les outils fournis par Adobe. Vous pouvez presque garantir qu'un designer professionnel utilise un mac et a de l'expérience avec les outils Adobe.

Droit maintenant, le concepteur Silverlight outils sont à moitié cuits et peut être un mal de tête. Par exemple Mélange des erreurs lorsque vous essayez de rendre n'importe quel code xaml contenant un IValueConverter, c'est problématique. Je n'ai aucune idée de ce que Adobe developer expérience, je suis sûr que c'est aussi poilue.

Donc, à ce stade du jeu, il revient aux ressources humaines:

Si vous en avez .NET de l'expérience et peu investi dans la Conception de compétences vont de Silverlight. Compétences en programmation/outils seront transférables. Si vous avez la Conception de l'expérience et de la compétence aller avec Flex. Concepteur de compétences/outils seront transférables.

De toute façon les deux plates-formes client nécessitent une communication avec des services de données, de sorte que vous aurez toujours tirer parti de votre programmation de l'expertise sur l'extrémité arrière.

Paraphrase de Jon opinion à partir d'un point de vue différent:

Je pense que vous devriez regarder Flex à long terme du jeu, tout comme Adobe semble être en train de faire. Il y a un évident d'équilibre sur le moment d'utiliser Silverlight vs Flex lorsque vous êtes inquiet au sujet de la portée et de l'installation de base, mais voici plus de raisons Flex est un bon sens d'aller dans:

  1. Deuxième avantage, comme Adobe a construit un "mieux Applet Java" avec Flash, ils sont en mesure de regarder comment vous feriez la conception à l'exécution, à partir de zéro, aujourd'hui. Ils ont l' avantage de savoir comment les gens utilisent le web d'aujourd'hui, quelque chose de l' les inventeurs de client existant les plates-formes ne pourrait jamais avoir exactement deviné. .NET pouvez ajouter caractéristiques, mais ils ne peuvent pas de façon réaliste, chuck la plate-forme et de recommencer.

  2. Concepteur de familiarité - Tout Flex/AIR est une nouvelle programmation de modèle, il n'est pas entièrement inconnu à les concepteurs. Ils vont "prendre" le chemin Flex fonctionne beaucoup plus rapidement que ils vont comprendre tir une nouvelle environnement de conception avec la nouvelle fonctionnalité pauvre outils et de nouvelles animations les paradigmes.

  3. Se débarrasser de la le modèle de couleur RVB dans Silverlight .NET a été à l'origine construit pour windows et il est à l' de base de la façon dont il fonctionne. Flex abandonné un il y a longtemps pour une conception centrée sur l' de modèle.

  4. Tous vos outils d'exécution sur votre mac. Nuff dit.

  5. Cool fonctionnalités de Silverlight encore a un certain rattrapage à faire avec Flash sur certaines caractéristiques évidentes (comme webcam / micro intégration, ou en 3d / l'accélération graphique).

15voto

Akash Kava Points 18026

Nous faisons de silverlight et flex, et voici le point de vue du développeur pour les deux.

Les Pros de Silverlight:

  1. La puissance de C#, d'Extraits de Code, la Réutilisation de l'existant en C# des Implémentations d'algorithmes
  2. Puissance d'autres langues aussi, de Génériques et de Linq etc
  3. La puissance de l'exécution Native de CLR au lieu de Flash Action Script Interpretator
  4. Un Intégré de Visual Studio pour le Développement
  5. Expression Blend est vraiment cool et le plus avancé de l'éditeur puis de Flex Builder
  6. XAML est Moteur de Recherche Convivial
  7. De très jolies transitions d'état et facile à définir
  8. Le filetage et les Tâches Asynchrones
  9. L'accessibilité, on ne sait que Microsoft a toujours fait les meilleurs accessiility fonctionnalités sur tous ses produits, ils ont toujours bien travaillé avec des personnes handicapées, en comparant les uniquement pour les navigateurs IE prend en charge complète de l'accessibilité et de Safari/firefox etc ne sont pas plus près.

Les inconvénients de Silverlight:

  1. Strictement Plateforme de Microsoft, je sais que beaucoup de personnes diront mais avec le scénario actuel, la moitié des Mac Intel gars ne peux pas obtenir silverlight 3.0 de travail, tous les PPC Mac les gars ne peuvent pas utiliser Silverlight 2.0 à partir, et Pas de silverlight pour Linux.
  2. Il est mono, mais n'est pas officiellement supporté par Microsoft, il sera toujours à la traîne de l'ingénierie inverse .NET et le portage sur une autre plate-forme, ce n'est pas hors de la boîte encore.
  3. La majorité des composants/les contrôles sont "Scellés" donc, il est difficile de les étendre et de les remplacer pour faire de nouveaux composants facilement.
  4. Mauvais CustomControl/UserControl architecture. E. g. vous ne pouvez pas avoir un code XAML de la racine en tant que zone de liste déroulante ou n'importe quel autre contrôle et de la laisser à la fois design, ainsi que le code, vous pouvez créer un contrôle personnalisé, mais ils sont bien trop complexes
  5. Liaison nécessite composant de nommage et ne supporte pas l'exemple des expressions comme flex, si une liaison bidirectionnelle est bon dans silverlight, mais vous devez écrire de longs codes pour plusieurs liaisons pour une expression mathématique
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}"/>

Avantages de Flex:

  1. Vraiment indépendant de la plateforme, pris en charge sur les différents matériels et systèmes d'exploitation et permettent de travailler partout grand.
  2. Open Source, il est vraiment facile à comprendre et à étendre les fonctionnalités.
  3. Chaque contrôle/composant peut être étendu et il y a moins de restrictions par défaut de substitution comportement.
  4. Le plus facile pour créer de nouveaux composants, vous pouvez avoir mxml tirer de tout contrôler et de les étendre avec la liaison vaste
  5. Flex contient beaucoup de contrôles et vous n'avez pas besoin de tout tiers bibliothèque

Les inconvénients de Flex:

  1. Ralentir l'exécution de itératif exécutions, pas de fils !! pas async tâches !!
  2. Basé sur le point 1, pas d'animation ou de graphiques possibles
  3. Pas de génériques, Pas d'autres langues, Pas de linq..
  4. Nombre de classe a un bug, on ne peut stocker 64 bits de valeur de type long
  5. Eclipse est mauvais pour la conception de quelque chose de grand, de l'INTERFACE utilisateur

Conclusion

  1. Nous utilisons flex pour des applications de données, celles-ci sont de simples applications de traitement de formulaire
  2. Silverlight pour les, extrêmement riche, des graphismes et des animations

13voto

Kibbee Points 36474

Le problème avec Silverlight, c’est qu’il y a encore beaucoup de gens qui n’ont pas installé. En outre, je ne sais pas comment bien vos développeurs .net existantes pourront tirer parti de leurs compétences existantes si elles connaissent seulement plus traditionnels côté serveur .net codage.

Quelles sont vos raisons pour pousser Silverlight sur Flex ? Si tu dois demander à la communauté de SOFlow pour des raisons, il semble étrange que vous seriez aussi disposés à pousser.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X