IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Rédacteur technique
    Inscrit en
    juin 2016
    Messages
    1 802
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : juin 2016
    Messages : 1 802
    Points : 40 513
    Points
    40 513
    Par défaut Microsoft publie .NET 6 Preview 1 avec le support de Blazor pour les application desktop
    Microsoft publie .NET 6 Preview 1 avec le support de Blazor pour les applications desktop
    des améliorations de performances et quelques nouvelles fonctionnalités

    Microsoft a publié mercredi le premier aperçu de .NET 6, successeur de .NET 5 publié en novembre dernier. .NET 6 sera lancée en novembre 2021 et représente l'aboutissement d'un effort de plusieurs années visant à fournir un framework multiplateforme à code source libre pour tout ce qui concerne .NET dans une offre globale unifiée. Dans .NET 6, l'équipe de développement se concentrera spécifiquement sur les performances des applications, l'ajout de nouveaux thèmes de contrôle et l'accélération des expériences des développeurs. Voici ce que Microsoft prévoit dans .NET 6.

    .NET 6 : Microsoft promet une plateforme unifiée et étendue

    Microsoft cherche depuis quelques années maintenant à unifier et à étendre la plateforme .NET. Selon, Richard Lander, Program Manager au sein de l'équipe .NET, cet effort, consistant à transformer l'ancien framework .NET, initialement réservé à la création d'applications pour Windows, en un produit moderne, a commencé avec .NET Core et s'est poursuivi avec .NET 5, qui était censé unifier le .NET avec un lancement en novembre 2020. Cependant, cette dernière a échoué en raison de la pandémie du coronavirus et d'autres problèmes survenus au cours de l'année.

    Nom : schwichtenberg_build2020_1-600x388.jpeg
Affichages : 25579
Taille : 36,7 Ko

    Ainsi, .NET 6 complétera cet effort en permettant de créer des applications pour le bureau, le Web, le cloud, les mobiles, les jeux, l'Internet, l'intelligence artificielle et bien d'autres encore, fonctionnant sous Windows, Linux, Android, iOS, Mac/Mac Catalyst, Windows Arm64, iOS/tvOS et bien d'autres. Elle le fait en regroupant des composants autrefois disparates, dont Xamarin (d'où la fonctionnalité iOS/Android/macOS). « Un grand changement dans cette version est l'intégration complète d'Android et d'iOS dans le cadre des charges de travail existantes de Xamarin », a déclaré Lander.

    « Cela nécessite la contrainte évidente d'intégrer un tas de code, de systèmes de construction et d'autres technologies. Il faut aussi intégrer les blogs, les documents et les échantillons. Nous travaillons avec l'équipe Xamarin depuis de nombreuses années, mais nous souhaitons la bienvenue à tous nos amis Xamarin dans le projet .NET 6. Nous invitons également les utilisateurs de Xamarin à faire partie de .NET 6 » a-t-il ajouté. .NET 6 Preview 1 s'attaque à plusieurs objectifs avec une série de nouvelles fonctionnalités et de grands projets, dont Blazor Desktop et une ramification du composant ASP.NET Core de Microsoft.

    Cela permet le développement Wb en C# au lieu de JavaScript grâce à l'utilisation de WebAssembly. Microsoft propose désormais un étourdissant éventail d'options de développement d'applications pour le bureau, y compris WPF, WinForms, UWP, .NET MAUI, Win UI, Project Reunion, etc.

    Blazor Desktop pour concevoir des applications bureau

    Blazor vous permet de créer des interfaces Web interactives en utilisant C# au lieu de JavaScript. Les applications Blazor sont composées de composants d'interface utilisateur Web réutilisables mis en œuvre à l'aide de C#, HTML et CSS. Le code client et serveur est écrit en C#, ce qui permet en même temps de partager du code et des bibliothèques. Blazor est une fonctionnalité de ASP.NET, le framework de développement Web populaire qui étend la plateforme de développement .NET avec des outils et des bibliothèques pour la création d'applications Web.

    Nom : blazor-macos-768x508.jpg
Affichages : 3937
Taille : 18,3 Ko

    Blazor s'invite désormais sur le bureau. « Nous avons d'abord pris en charge Blazor sur le serveur, puis dans le navigateur avec WebAssembly, et maintenant nous l'étendons à nouveau, pour vous permettre d'écrire des applications de bureau Blazor. Blazor Desktop vous permet de créer des applications clientes hybrides, qui combinent le Web et l'interface utilisateur native dans une application cliente native. Il est principalement destiné aux développeurs Web qui veulent offrir à leurs utilisateurs des expériences client riches et hors ligne », a écrit Lander.

    Selon lui, Blazor Desktop offre un grand choix quant à la manière dont vous construisez votre application. À une extrémité du spectre des applications, vous pouvez utiliser Blazor et les technologies Web pour tous les aspects de l'expérience de l'application cliente, à l'exception du conteneur d'application natif le plus extérieur (comme la barre de titre). À l'autre extrémité du spectre, vous pouvez utiliser Blazor Desktop pour des fonctionnalités ciblées dans une application par ailleurs native (comme WPF), comme une page de profil utilisateur que vous avez déjà mise en œuvre pour votre site Web basé sur Blazor.

    Nom : blazor-windows.jpg.png
Affichages : 3968
Taille : 56,3 Ko

    Tous les choix entre les deux sont également possibles. L'intéressé a ajouté qu'il est également possible d'utiliser Blazor Desktop en combinaison avec une autre pile logiciel. « Nous construisons Blazor Desktop initialement pour les applications .NET, mais il n'y a aucune raison technique pour laquelle vous ne pourriez pas l'utiliser dans une application de bureau construite avec une autre pile d'applications, par exemple Swift », a-t-il déclaré. Il explique qu'en effet, Blazor est construit sur une interface utilisateur multiplateforme pour les applications .NET.

    Nom : hello-dotnet-windowsarm64-1.png
Affichages : 3928
Taille : 511,9 Ko

    Il s'appuie sur cette pile d'interfaces utilisateur pour un conteneur d'application et des contrôles natifs (si vous souhaitez les utiliser). « Nous construisons Blazor pour que ses performances de démarrage et de débit soient comparables à celles d'autres solutions de bureau. Pour les développeurs qui aiment Blazor et les technologies Web, nous pensons que Blazor sera un excellent choix pour la création d'applications de bureau », a-t-il ajouté.

    .NET Multi-platform App UI : une extension à Xamarin

    .NET Multi-platform App UI est une boîte à outils moderne qui s'appuie sur Xamarin et l'étend dans le cadre de l'unification de .NET 6. Selon Microsoft, beaucoup ont dit qu'ils souhaitaient proposer des applications belles et cohérentes sur différentes plateformes et différents appareils, et qu'ils souhaitaient partager davantage de code entre leurs applications mobiles et de bureau. Vous pourrez désormais cibler Android, iOS, macOS et Windows.

    Nom : maui-01-overview-1536x864.png
Affichages : 3932
Taille : 133,0 Ko

    Le support multiplateforme des applications mobiles .NET 6 sera basé sur l'intégration et l'extension de la boîte à outils Xamarin.Forms, qui a été adaptée au cours des sept dernières années et, selon Microsoft, a satisfait les besoins évolutifs de nombreux clients.

    Fast inner loop (Boucle intérieure rapide)

    Cette phrase fait référence à ce que Lander appelle le développement itératif rapide fourni par toute plateforme de développement attrayante et productive. L'équipe de développement fait d'abord tourner la construction beaucoup plus rapidement grâce à des projets liés aux performances. Un élément notable ici est la fonctionnalité de rechargement à chaud, longtemps demandée et finalement mise en œuvre (et améliorée) par Xamarin en novembre et maintenant considérée comme une capacité générale de .NET pour C#/IL ainsi que pour XAML.

    « Nous sommes en train de définir un nouveau modèle de rechargement de code à chaud que nous pouvons proposer pour tous les types d'applications. Il est probable qu'au moins une partie de cette fonctionnalité sera implémentée dans le runtime, et nous nous sommes engagés à le faire avec CoreCLR et Mono. Nous voulons permettre une construction très rapide, et des opérations encore plus rapides pour les changements de code qui peuvent sauter la construction entièrement, comme une nouvelle caractéristique standard de .NET », a fait savoir Lander.

    Amélioration de la prise en charge de l'ARM64

    À ce stade, Lander a annoncé que l'équipe se concentrera principalement sur l'activation fonctionnelle après avoir amélioré les performances d'Arm64 dans .NET 5.0, un effort qui sera également poursuivi.

    Amélioration de la prise en charge des conteneurs

    Microsoft a annoncé qu'une série de projets sont en cours pour améliorer l'expérience des conteneurs .NET, portant sur la mise à l'échelle, la réduction de la taille, l'augmentation des performances de démarrage et de débit, la prise en charge des grandes pages et bien d'autres choses encore. En ce qui concerne les nouveautés de .NET 6 Preview 1, a listé les points suivants :

    • ciblage de .NET 6 : il est effectué via des surnoms de frameworks cibles (TFM - Target framework monikers), un format de jeton standardisé pour spécifier le framework cible d'une application ou d'une bibliothèque .NET qui a été utilisé pour .NET 5. Il y en a maintenant de nouveaux pour .NET 6 ;
    • .NET CLI : il est plus pratique à utiliser depuis que l'équipe a adopté les bibliothèques System.CommandLine, qui ont ajouté trois fonctions principales : des "fichiers de réponse" et deux types de directives différentes ;
    • bibliothèques : ici, Microsoft a ajouté de nouvelles API mathématiques à travers System.Numerics et on note également l'amélioration de la prise en charge des listes de contrôle d'accès Windows (ACL - access control lists) ;
    • runtime : Microsoft a apporté pas mal de nouveaux à ce stade, mais l'une des principales caractéristiques est la prise en charge de la puce ARM64 d'Apple Silicon, qui appartient à cette société. De plus, les applications à fichier unique, qui n'étaient auparavant prises en charge que par Linux dans .NET 5, sont désormais prises en charge par Windows et macOS ;
    • etc.

    « .NET 6 promet d'être une nouvelle version passionnante avec de nombreuses améliorations convaincantes », a déclaré Lander dans sa conclusion. « C'est une version particulièrement intéressante, car elle contient des changements résultant de la nécessité de s'adapter à l'évolution des systèmes d'exploitation externes et de continuer à innover au sein de la plateforme .NET elle-même. C'est aussi la poursuite de l'ouverture accrue de l'équipe .NET, à la fois en termes de planification ouverte, mais aussi de partage d'outils de performance auparavant propriétaires ».

    « Nous n'y sommes pas encore parvenus, mais .NET 6 sera la deuxième version de novembre consécutive, dans notre nouvelle cadence annuelle. Compte tenu du succès de l'expédition de .NET 5 en novembre 2020, dans un environnement très difficile, il y a toutes les raisons de penser que .NET 6 sera également publié à temps », a-t-il ajouté. .NET 6 a été testé avec Visual Studio 16.9 Preview 4 et Visual Studio for Mac 8.9 et Microsoft recommande d'utiliser ces versions pour essayer .NET 6. Preview 1 peut être téléchargé ici. Microsoft a également annoncé Entity Framework Core 6.0 Preview 1 et a mis en évidence les mises à jour d'ASP.NET Core dans .NET 6 Preview 1.

    Source : .NET 6 Preview 1

    Et vous ?

    Que pensez-vous des améliorations et des nouvelles fonctionnalités ajoutées à .NET 6 Preview 1 ?

    Voir aussi

    Microsoft a annoncé la disponibilité générale de .NET 5 qui inclut C# 9, F# 5 et une prise en charge native de Windows Arm64

    Avec .NET 5, Microsoft voudrait produire un environnement d'exécution .NET unique et une infrastructure utilisable partout

    Depuis qu'il a effectué une migration vers .NET 5.0, le développeur de la bibliothèque .NET Fusion a constaté une nette amélioration des performances

    .NET 5 : Benchmark.NET est dorénavant l'outil canonique pour mesurer la performance du code .NET. Voici un aperçu des améliorations de performances à venir dans .NET 5
    Contribuez au club : corrections, suggestions, critiques, ... Contactez le service news et Rédigez des actualités

  2. #2
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    septembre 2020
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : septembre 2020
    Messages : 12
    Points : 42
    Points
    42
    Par défaut
    Je n'ais pas encore compris leur idee pour les GUI: MAUI, Winforms, WPF, UWP, Blazor, Platform UNO

  3. #3
    Membre chevronné
    Avatar de stailer
    Homme Profil pro
    Architecte technique
    Inscrit en
    mars 2003
    Messages
    1 135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mars 2003
    Messages : 1 135
    Points : 2 144
    Points
    2 144
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par puffola Voir le message
    Je n'ais pas encore compris leur idee pour les GUI: MAUI, Winforms, WPF, UWP, Blazor, Platform UNO
    Je pense que WinForms est toujours là mais bon, qui aurait l'idée de démarrer un projet là dessus ? En toute logique tu ferais du WPF.
    Ce dernier est d'actualité mais là aussi, on va pas se mentir : c'est un futur WinForms, clairement l'avenir est à Blazor.

    Il reste donc MAUI et UWP (car je pense pas que Platform UNO soit un outil Microsoft) que je ne connais pas ou peu. UWP fait de "l'embarqué" et de l'objet connecté alors que les autres non il me semble.

    Au final sur un nouveau projet hors iot/embarqué le choix c'est juste MAUI / Blazor. Et si tu es déjà habitué au web (voir déjà sur un framework à la React ou Angular) , ben c'est "vite répondu" : Blazor est ton ami.

    Evidemment il y aura une prise de risque, un pari, si tu pars sur Blazor vu la jeunesse de la techno.
    .o0o__St@iLeR__oOo.

    Lead Developer

    ASP.NET MVC - MCP/MCSD ASP.NET
    PHP Zend Framework / PhalconPHP
    Cordova/Xamarin IOS/Android
    Kendo UI - ExtJS - JQwidgets
    SQL Server / MySQL

  4. #4
    Membre éprouvé
    Profil pro
    Développeur .NET
    Inscrit en
    février 2005
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2005
    Messages : 352
    Points : 938
    Points
    938
    Par défaut
    Citation Envoyé par puffola Voir le message
    Je n'ais pas encore compris leur idee pour les GUI: MAUI, Winforms, WPF, UWP, Blazor, Platform UNO
    Platform UNO ce n'est pas un produit géré par Microsoft.

    Winforms est encore là pour ceux qui veulent ou doivent encore en faire. Des extensions pour d'anciennes version d'Office par exemple.

    WPF, c'était normalement la nouvelle manière de faire des app winform. Largement plus puissant que winform.

    UWP, le framework gui pour faire des apps universelle dans windows. Il y a eu des couac en cours de route. Mais on trouve pas mal d'app uwp. (surtout dans le store)

    Blazor, ce n'est pas un framework gui. C'est quelque chose pour faire ce qu'on fait en react/vuejs mais totalement en C#. Tout le côté gui c'est du html/css

    MAUI, c'est l'évolution de Xamarin.form vers du desktop. En gros une app faite sur windows pourra fonctionner sur macos/linux.

    Il existe aussi https://avaloniaui.net/ comme gui .net multiplatforme. Rider le supporte dans sa dernière version.

  5. #5
    Membre éclairé
    Inscrit en
    juin 2010
    Messages
    738
    Détails du profil
    Informations forums :
    Inscription : juin 2010
    Messages : 738
    Points : 889
    Points
    889
    Par défaut
    Citation Envoyé par puffola Voir le message
    Je n'ais pas encore compris leur idee pour les GUI: MAUI, Winforms, WPF, UWP, Blazor, Platform UNO
    Windows Forms et WPF et UWA sont du spécifique windows.

    MAUI est la suite de Xamarin forms ça marche pour le mobile et le desktop sur Windows et MacOs pour le moment.

    Blazor est un framework Web Assembly

  6. #6
    Membre expert Avatar de air-dex
    Homme Profil pro
    Inscrit en
    août 2010
    Messages
    1 608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : août 2010
    Messages : 1 608
    Points : 3 599
    Points
    3 599
    Par défaut
    Citation Envoyé par xarkam Voir le message
    UWP, le framework gui pour faire des apps universelle dans windows. Il y a eu des couac en cours de route. Mais on trouve pas mal d'app uwp. (surtout dans le store)
    UWP c'était quelque chose initialement prévu pour faire du "multiplateforme Windows" : Windows 10 (PC), Xbox, Windows Mobile et Hololens, sur x86 et ARM. Ça n'a pas pris car parmi toutes les plateformes Windows il n'y a vraiment que le PC x86 qui soit intéressant, donc aucun intérêt de se mettre à UWP.

    Citation Envoyé par xarkam Voir le message
    Blazor, ce n'est pas un framework gui. C'est quelque chose pour faire ce qu'on fait en react/vuejs mais totalement en C#. Tout le côté gui c'est du html/css
    Blazor je le vois un peu comme le nouveau Qt. La stack C++/Python-Qt-QML-JavaScript fait à peu près tout sauf du Web côté serveur, soit un petit peu moins que la stack C#-.NET-Blazor. Il y a un créneau à prendre avec Qt qui se montre de plus en plus pressant sur la version payante (et qui coûte très cher).
    "Ils ne savaient pas que c'était impossible alors ils l'ont fait." Mark Twain

    Mon client Twitter Qt cross-platform Windows et Linux. (en cours de développement).

  7. #7
    Membre éclairé
    Inscrit en
    juin 2010
    Messages
    738
    Détails du profil
    Informations forums :
    Inscription : juin 2010
    Messages : 738
    Points : 889
    Points
    889
    Par défaut
    Citation Envoyé par air-dex Voir le message
    UWP c'était quelque chose initialement prévu pour faire du "multiplateforme Windows" : Windows 10 (PC), Xbox, Windows Mobile et Hololens, sur x86 et ARM. Ça n'a pas pris car parmi toutes les plateformes Windows il n'y a vraiment que le PC x86 qui soit intéressant, donc aucun intérêt de se mettre à UWP.



    Blazor je le vois un peu comme le nouveau Qt. La stack C++/Python-Qt-QML-JavaScript fait à peu près tout sauf du Web côté serveur, soit un petit peu moins que la stack C#-.NET-Blazor. Il y a un créneau à prendre avec Qt qui se montre de plus en plus pressant sur la version payante (et qui coûte très cher).
    UWP ne sert pas à faire des applications graphiques, du moment qu'une application fait un truc du genre accéder au centre de notification c'est une app UWP. Les applications Legacy qui s'appuient sur Win32 vont avoir un léger problème d'ici quelques temps quand le rollout de 10X aura été effectué, avec perte de performance à la clef. Win32 a été déplacé dans un library OS, plus d'accès direct au pipeline graphique tous passe par du RDP en locale, pareil pour le système de fichier. Plus de 10 années ont été laissés pour migrer depuis le legacy OS.

  8. #8
    Membre averti Avatar de goldbergg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2014
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2014
    Messages : 122
    Points : 408
    Points
    408
    Par défaut
    UWP, c'est les application universelle dont le grand principe est qu'elle s'exécute en Sandbox et avec un système d'autorisation comme sur les smartphone.

    Il est possible de faire des application graphique en XAML (mais pas le même que WPF), mais aussi des application d'arrière plan.

    En théorie une application UWP est compilable en X86, X64, arm et arm64 et est compatible avec toute la chaine Win10 (PC, Xbox, IoT, etc...), mais on peut choisir de limiter les cible.

    Par convention elle sont destiné a être distribué via le Store Microsoft, mais il est possible de les distribué autrement, par exemple en créant une image OEM.
    Par default on ne peut pas les proposer en libre téléchargement, tel les APK sur Android, il faut activer une options dans Windows pour en installer librement en dehors du store.

    Le gros problème d'UWP, c'est que comme dit en première ligne, c'est ultra bridé...

    UWP a sont propre framework et n'est compatible qu'avec .net PCL/Standard, donc exit une grosse partie des package nugget.
    Il est aussi impossible de faire des chose standard comme la réflexion ou manipuler des fichier n'importe comment.
    Et pour finir, vue que c'est pas le même XAML que WPF, beaucoup d'élément d'interface graphique de WPF ne sont pas dispo sur UWP ou seulement de façon limité

    Migrer une appli WPF vers UWP peut rapidement être un vraie casse-tête.

    Dernière petite précision, si UWP vise principalement a faire des application pour le Store, toute les application du Store ne sont pas UWP, vue qu'il est possible de "convertir" une application standard en package pour le store, mais a ce moment la compatibilité devient très limité.

    Plus d'info ici : https://docs.microsoft.com/fr-fr/win...platform-guide


    Concernant Blazor, c'est a la base plus ou moins le remplaçant de WebForm (qui permet de dev des application web comme on le ferait en WinForm).

    Le but est de créer des composant HTML réactif de la même manière qu'on le fait en Vue.js ou React, mais en C#.
    Il existe malgré tous un bridge pour pouvoir exécuter du code JS depuis C# ou que le code JS invoque du code C#.

    Chaque composant peut avoir des paramètre, une route pour servir de page et peuvent bien évidement s'imbriquer.

    De base le Framework propose nativement des composant, notamment des élément de formulaire.

    Il existe trois version :

    -Serveur, ou le code s'exécute coté serveur, mais avec du code aussi coté client et une connexion SignalR (WebSocket) pour faire le lien tel que la synchro des donnée.
    Couplé a Electron.Net, il est déjà possible de faire des client lourd cross-plateforme avec.

    -WASM, ou la tout est coté client, mais la conception reste la même, avec toujours la possibilité d'interagir avec du JS au besoin.
    Il est possible d'utiliser pas mal de lib .net directement dans le navigateur, mais avec les limitation des navigateur, donc impossible de requêter n'importe quoi en HTTP sans se prendre une erreur CORS par exemple.
    Contrairement a la version serveur, on peut deployer une application WASM sur n'importe qu'elle serveur HTTP, même le plus minimaliste, tout est intégré.

    -Desktop, j'ai pas encore testé, mais j'imagine que sa reprend la version WASM (donc autonome), mais sans les bridage navigateur et éventuellement avec du xml plus proche du XAML que du HTML (comme c'est le cas en react-natif par exemple)

    J'invite tous le monde a tester Blazor par vous même, ça se prend en mains en quelque minute et on réalise très rapidement son énorme potentielle.

  9. #9
    Membre expert Avatar de air-dex
    Homme Profil pro
    Inscrit en
    août 2010
    Messages
    1 608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : août 2010
    Messages : 1 608
    Points : 3 599
    Points
    3 599
    Par défaut
    Citation Envoyé par goldbergg Voir le message
    En théorie une application UWP est compilable en X86, X64, arm et arm64 et est compatible avec toute la chaine Win10 (PC, Xbox, IoT, etc...), mais on peut choisir de limiter les cible.
    J'insistais surtout sur le côté universel, sur le 'U' de "UWP". Sur quoi les cibles seront-elles limitées, si ce n'est Windows 10 PC ?

    Citation Envoyé par goldbergg Voir le message
    -Desktop, j'ai pas encore testé, mais j'imagine que sa reprend la version WASM (donc autonome), mais sans les bridage navigateur et éventuellement avec du xml plus proche du XAML que du HTML (comme c'est le cas en react-natif par exemple)

    J'invite tous le monde a tester Blazor par vous même, ça se prend en mains en quelque minute et on réalise très rapidement son énorme potentielle.
    Exactement comme Qt et QML donc. On aurait ainsi un backend "natif" (C++ ou Python pour Qt, C# pour Blazor), pouvant être interfacé et interagir avec un frontend fait de JavaScript et d'une interface codée dans un langage de description d'interface (QML pour Qt, XAML ou le duo HTML/CSS pour Blazor).
    "Ils ne savaient pas que c'était impossible alors ils l'ont fait." Mark Twain

    Mon client Twitter Qt cross-platform Windows et Linux. (en cours de développement).

  10. #10
    Membre éclairé
    Inscrit en
    juin 2010
    Messages
    738
    Détails du profil
    Informations forums :
    Inscription : juin 2010
    Messages : 738
    Points : 889
    Points
    889
    Par défaut
    Citation Envoyé par goldbergg Voir le message
    UWP, c'est les application universelle dont le grand principe est qu'elle s'exécute en Sandbox et avec un système d'autorisation comme sur les smartphone.

    Il est possible de faire des application graphique en XAML (mais pas le même que WPF), mais aussi des application d'arrière plan.

    En théorie une application UWP est compilable en X86, X64, arm et arm64 et est compatible avec toute la chaine Win10 (PC, Xbox, IoT, etc...), mais on peut choisir de limiter les cible.

    Par convention elle sont destiné a être distribué via le Store Microsoft, mais il est possible de les distribué autrement, par exemple en créant une image OEM.
    Par default on ne peut pas les proposer en libre téléchargement, tel les APK sur Android, il faut activer une options dans Windows pour en installer librement en dehors du store.

    Le gros problème d'UWP, c'est que comme dit en première ligne, c'est ultra bridé...

    UWP a sont propre framework et n'est compatible qu'avec .net PCL/Standard, donc exit une grosse partie des package nugget.
    Il est aussi impossible de faire des chose standard comme la réflexion ou manipuler des fichier n'importe comment.
    Et pour finir, vue que c'est pas le même XAML que WPF, beaucoup d'élément d'interface graphique de WPF ne sont pas dispo sur UWP ou seulement de façon limité

    Migrer une appli WPF vers UWP peut rapidement être un vraie casse-tête.

    Dernière petite précision, si UWP vise principalement a faire des application pour le Store, toute les application du Store ne sont pas UWP, vue qu'il est possible de "convertir" une application standard en package pour le store, mais a ce moment la compatibilité devient très limité.

    Plus d'info ici : https://docs.microsoft.com/fr-fr/win...platform-guide


    Concernant Blazor, c'est a la base plus ou moins le remplaçant de WebForm (qui permet de dev des application web comme on le ferait en WinForm).

    Le but est de créer des composant HTML réactif de la même manière qu'on le fait en Vue.js ou React, mais en C#.
    Il existe malgré tous un bridge pour pouvoir exécuter du code JS depuis C# ou que le code JS invoque du code C#.

    Chaque composant peut avoir des paramètre, une route pour servir de page et peuvent bien évidement s'imbriquer.

    De base le Framework propose nativement des composant, notamment des élément de formulaire.

    Il existe trois version :

    -Serveur, ou le code s'exécute coté serveur, mais avec du code aussi coté client et une connexion SignalR (WebSocket) pour faire le lien tel que la synchro des donnée.
    Couplé a Electron.Net, il est déjà possible de faire des client lourd cross-plateforme avec.

    -WASM, ou la tout est coté client, mais la conception reste la même, avec toujours la possibilité d'interagir avec du JS au besoin.
    Il est possible d'utiliser pas mal de lib .net directement dans le navigateur, mais avec les limitation des navigateur, donc impossible de requêter n'importe quoi en HTTP sans se prendre une erreur CORS par exemple.
    Contrairement a la version serveur, on peut deployer une application WASM sur n'importe qu'elle serveur HTTP, même le plus minimaliste, tout est intégré.

    -Desktop, j'ai pas encore testé, mais j'imagine que sa reprend la version WASM (donc autonome), mais sans les bridage navigateur et éventuellement avec du xml plus proche du XAML que du HTML (comme c'est le cas en react-natif par exemple)

    J'invite tous le monde a tester Blazor par vous même, ça se prend en mains en quelque minute et on réalise très rapidement son énorme potentielle.
    UWP permet à ce stade d'exploiter quasi n'importe quoi, si vous en êtes encore au stade PCL/Net standard c'est que vous avez raté la sortie du train en gare et que vous faites uniquement du legacy.

  11. #11
    Membre chevronné
    Avatar de stailer
    Homme Profil pro
    Architecte technique
    Inscrit en
    mars 2003
    Messages
    1 135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mars 2003
    Messages : 1 135
    Points : 2 144
    Points
    2 144
    Billets dans le blog
    3
    Par défaut
    Merci @Goldbergg pour tous ces détails, j'aurais appris pas mal de choses sur certaines technos de .net sur lesquelles je ne suis pas.
    Juste un petit truc pour chipoter :

    Concernant Blazor, c'est a la base plus ou moins le remplaçant de WebForm (qui permet de dev des application web comme on le ferait en WinForm).
    Pour moi le remplaçant de WebForms c'était ASP.NET MVC.

    On est vraiment dans quelque chose de nouveau avec Blazor qui s'apparente à Angular (la ressemblance est plus grande qu'avec React je trouve)... Je pense que WebForms est enterré depuis longtemps. Et à mon avis, heureusement, je n'ai jamais aimé cette techno.
    .o0o__St@iLeR__oOo.

    Lead Developer

    ASP.NET MVC - MCP/MCSD ASP.NET
    PHP Zend Framework / PhalconPHP
    Cordova/Xamarin IOS/Android
    Kendo UI - ExtJS - JQwidgets
    SQL Server / MySQL

  12. #12
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    novembre 2010
    Messages
    2 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : novembre 2010
    Messages : 2 016
    Points : 4 102
    Points
    4 102
    Par défaut
    Le problème de Blazor c'est son premier chargement, punaise qu'est ce que c'est long, ça devrait s'améliorer avec net6.

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/03/2020, 18h32
  2. Chrome OS 69 débarque avec le support d’applications Linux pour les Chromebook
    Par Christian Olivier dans le forum Autres systèmes
    Réponses: 0
    Dernier message: 22/09/2018, 08h49
  3. Microsoft publie .NET Core 1.0.1
    Par Hinault Romaric dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 08/10/2016, 21h58
  4. Microsoft publie la première preview publique de SQL Server 2016
    Par Arsene Newman dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 27/05/2015, 22h02
  5. Réponses: 7
    Dernier message: 23/04/2011, 13h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo