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

Développement Web avec .NET Discussion :

Microsoft publie la première préversion publique de Blazor


Sujet :

Développement Web avec .NET

  1. #1
    Expert éminent sénior

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 757
    Points : 10 697
    Points
    10 697
    Billets dans le blog
    21
    Par défaut Microsoft publie la première préversion publique de Blazor
    Microsoft lance un nouveau projet expérimental baptisé Blazor
    qui simplifie la création d'applications web monopages avec .NET

    Microsoft travaille depuis plusieurs mois sur un nouveau projet dont le but est d'offrir aux programmeurs un framework web basé sur l'utilisation de C#, Razor et HTML s'exécutant directement au sein du navigateur. Navigateur (browser en anglais) + Razor = Blazor !

    Les espérances sont fortes, puisque Blazor permettrait de développer des applications web monopages (single-page application) avec des performances très proches d'applications natives, grâce à l'usage de la technologie WebAssembly. Pour rappel, la technologie WebAssembly est supportée par tous les navigateurs récents. Si cette technologie n'est pas supportée (cas de navigateurs plus anciens), alors l'application tournera grâce à un environnement d'exécution .NET écrit pour asm.js, non sans un impact sur les performances.

    Blazor inclut toutes les caractéristiques d'un framework web moderne :
    • un modèle de composant pour construire des interfaces composables ;
    • le routage ;
    • la mise en page ;
    • les formulaires ainsi que leur validation ;
    • l'injection de dépendance ;
    • l'interopérabilité avec le JavaScript ;
    • le rechargement à chaud durant le développement ;
    • le rendu côté serveur ;
    • le débogage à la fois dans le navigateur et dans l'IDE ;
    • le support d'IntelliSense et de différents outils ;
    • le support de vieux navigateurs via asm.js ;
    • la publication et la diminution de la taille des applications.

    Il est possible d'avoir un aperçu de cette technologie en visionnant cette présentation où Steve Sanderson nous fait une petite démonstration :


    Ce projet vient de s'ouvrir au grand public et est disponible sur GitHub. Attention toutefois, ce projet est encore au stade expérimental. L'objectif de cette ouverture est d'étendre l'expérimentation afin d'obtenir des retours et des suggestions de la part des utilisateurs, et non pour un usage en production. Si cette phase se révèle concluante, c'est-à-dire que les retours sont positifs et que tous les verrous techniques sont levés, il est fort probable que ce projet perdra son caractère expérimental pour permettre usage plus large.

    Source : Blog Microsoft

    Et vous ?

    Que pensez-vous de ce projet ?
    Quelle(s) technologie(s) utilisez-vous pour développer vos applications monopages ?
    François DORIN
    Consultant informatique : conception, modélisation, développement (C#/.Net et SQL Server)
    Site internet | Profils Viadéo & LinkedIn
    ---------
    Page de cours : fdorin.developpez.com
    ---------
    N'oubliez pas de consulter la FAQ C# ainsi que les cours et tutoriels

  2. #2
    Modérateur
    Avatar de Gugelhupf
    Homme Profil pro
    Analyste Programmeur
    Inscrit en
    Décembre 2011
    Messages
    1 320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste Programmeur

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 320
    Points : 3 741
    Points
    3 741
    Billets dans le blog
    12
    Par défaut
    Serait-ce le début de la fin pour le JavaScript avec WebAssembly ? (troll )
    N'hésitez pas à consulter la FAQ Java, lire les cours et tutoriels Java, et à poser vos questions sur les forums d'entraide Java

    Ma page Developpez | Mon profil Linkedin | Vous souhaitez me contacter ? Contacter Gokan EKINCI

  3. #3
    Membre expérimenté

    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2004
    Messages : 389
    Points : 1 595
    Points
    1 595
    Par défaut
    Application web monopage ? Bof bof...

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 99
    Points : 140
    Points
    140
    Par défaut
    genre tu viens de finir un projet de 2 ans en Javascript et on t'affiche ça et tu te dis, pfff j'ai plus qu'à recommencer ... j'adore le développement web (autant que le c++ je crois )

  5. #5
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 065
    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 065
    Points : 4 229
    Points
    4 229
    Par défaut
    Tu peux continuer à maintenir ton application t'es pas obligé de l'adapter à chaque nouveau framework qui sort, par contre pour tes futurs développement tu peux y penser.

  6. #6
    Expert éminent sénior

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 757
    Points : 10 697
    Points
    10 697
    Billets dans le blog
    21
    Par défaut
    Citation Envoyé par tmcuh Voir le message
    genre tu viens de finir un projet de 2 ans en Javascript et on t'affiche ça et tu te dis, pfff j'ai plus qu'à recommencer ...
    Il faut quand même attendre que le projet mûrisse un peu. Ce serait dommage de devoir tout reprendre si le projet s'arrête

    Mais effectivement, ce projet me semble prometteur et il est intéressant de garder un oeil dessus...
    François DORIN
    Consultant informatique : conception, modélisation, développement (C#/.Net et SQL Server)
    Site internet | Profils Viadéo & LinkedIn
    ---------
    Page de cours : fdorin.developpez.com
    ---------
    N'oubliez pas de consulter la FAQ C# ainsi que les cours et tutoriels

  7. #7
    Chroniqueur Actualités
    Avatar de Michael Guilloux
    Homme Profil pro
    Data Consultant
    Inscrit en
    Juillet 2013
    Messages
    2 888
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Data Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 2 888
    Points : 87 206
    Points
    87 206
    Billets dans le blog
    2
    Par défaut Microsoft publie la première préversion publique de Blazor
    Microsoft publie la première préversion publique de Blazor
    son framework web .NET expérimental qui s'exécute au sein du navigateur

    Début février, Microsoft a annoncé un nouveau projet expérimental baptisé Blazor (contraction de Browser et Razor), dont le but est d'offrir aux programmeurs un framework web .NET basé sur C#, Razor et HTML et qui s'exécute directement au sein du navigateur via WebAssembly. D'après Microsoft, Blazor permet le développement Web full stack avec la stabilité et la productivité de .NET. Avec ce projet, Microsoft veut aussi simplifier considérablement la tâche de création d'applications web monopages (single-page application) performantes qui s'exécutent dans n'importe quel navigateur. Pour cela, le projet devrait donc offrir des fonctionnalités dignes d'un framework moderne, y compris :

    • un modèle de composant pour construire des interfaces utilisateur composables ;
    • le routage ;
    • la mise en page ;
    • les formulaires ainsi que leur validation ;
    • l'injection de dépendances ;
    • l'interopérabilité avec JavaScript ;
    • le rechargement à chaud pendant le développement ;
    • le rendu côté serveur ;
    • le débogage .NET à la fois dans le navigateur et dans l'IDE ;
    • le support d'IntelliSense et de différents outils ;
    • le support de vieux navigateurs (non-WebAssembly) via asm.js ;
    • la publication d'applications ainsi que la réduction de leur taille.

    Aujourd'hui, Microsoft fait un pas vers l'avant en publiant la première préversion publique de Blazor : la version 0.1.0. Dans cette version, la firme dit avoir jeté les bases du modèle de composant de Blazor et ajouté d'autres fonctionnalités de base, telles que le routage, l'injection de dépendances et l'interopérabilité avec JavaScript. Microsoft a également travaillé sur l'expérience utilisateur et les outils afin que vous obteniez un excellent IntelliSense et des complétions dans l'éditeur Razor.

    Les autres fonctionnalités qui ont été démontrées précédemment sous forme de prototypes, comme le rechargement à chaud, le débogage et le prérendu, n'ont pas encore été implémentées, mais sont prévues pour de futures mises à jour. Même ainsi, Microsoft estime qu'il y a beaucoup de choses dans cette version pour que les développeurs commencent à la tester pour faire des retours sur la direction actuelle.

    Pour installer Blazor, vous devez d'abord installer le SDK .NET Core 2.1 Preview 1, puis la dernière préversion de Visual Studio 2017 (15.7) avec la charge de travail de développement Web. Après cela, il ne restera plus qu'à installer l'extension ASP.NET Core Blazor Language Services à partir de Visual Studio Marketplace.

    Pour créer votre premier projet Blazor à partir de Visual Studio, sélectionnez Fichier -> Nouveau projet -> Web -> Application Web ASP.NET Core. Vous devez ensuite vous assurez que .NET Core et ASP.NET Core 2.0 soient sélectionnés dans les listes déroulantes en haut de la boite de dialogue qui s'affiche et choisir le modèle de projet Blazor.


    Si vous n'utilisez pas Visual Studio, vous pouvez installer les modèles Blazor à partir de la ligne de commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    dotnet new -i Microsoft.AspNetCore.Blazor.Templates
    dotnet new blazor -o BlazorApp1
    cd BlazorApp1
    dotnet run
    Dans son billet relatif à l'annonce de Blazor 0.1.0, Microsoft fournit des instructions pour commencer à créer des applications Web avec Blazor. Vous trouverez aussi sur GitHub plus de détails sur les fonctionnalités dans la première préversion du framework web .NET expérimental.

    Sources : Blog Microsoft, GitHub

    Et vous ?

    Qu'en pensez-vous ?
    Comptez-vous tester Blazor dès maintenant ? Si oui, n’oubliez pas de partager votre expérience
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  8. #8
    Membre habitué
    Homme Profil pro
    CTO
    Inscrit en
    Mars 2012
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : CTO

    Informations forums :
    Inscription : Mars 2012
    Messages : 62
    Points : 161
    Points
    161
    Par défaut
    Existe t'il des projets similaires sous python ?

  9. #9
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    794
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 794
    Points : 987
    Points
    987
    Par défaut
    Citation Envoyé par Dhafer1 Voir le message
    Existe t'il des projets similaires sous python ?
    Je ne sais pas mais une partie des dev de .net font partie de la core team python donc ça ne devrait pas tarder.

  10. #10
    Membre confirmé
    Profil pro
    DIRLO
    Inscrit en
    Juillet 2009
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DIRLO

    Informations forums :
    Inscription : Juillet 2009
    Messages : 199
    Points : 532
    Points
    532
    Par défaut
    j'aurai préféré un autre nom ...

    • SilverNight
    • SilverFight
    • SilverRight

  11. #11
    Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2014
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2014
    Messages : 82
    Points : 56
    Points
    56
    Par défaut
    Euh... Je suis le seul a avoir fait la mis à jour de VS mais de voir nul par Blazor
    L’Échec est la preuve que l'on à essayer
    Les question bête n'existe pas la seul chose bête c'est la personne qui n'auras pas poser la question

  12. #12
    Membre averti
    Avatar de mrqs2crbs
    Profil pro
    LEAD DEV
    Inscrit en
    Juin 2013
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : LEAD DEV

    Informations forums :
    Inscription : Juin 2013
    Messages : 105
    Points : 398
    Points
    398
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par TheYoungGeek43 Voir le message
    Euh... Je suis le seul a avoir fait la mis à jour de VS mais de voir nul par Blazor
    tu utilises bien visual studio Preview 2017 (15.7) ?

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 14
    Points : 19
    Points
    19
    Par défaut un chalenger pour angular
    C'est une bonne chose, mais il faudra être très convainquant pour me bouger d'angular

  14. #14
    Chroniqueur Actualités
    Avatar de Michael Guilloux
    Homme Profil pro
    Data Consultant
    Inscrit en
    Juillet 2013
    Messages
    2 888
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Data Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 2 888
    Points : 87 206
    Points
    87 206
    Billets dans le blog
    2
    Par défaut Microsoft publie la deuxième préversion de Blazor
    Microsoft publie la deuxième préversion de Blazor
    son framework web .NET expérimental qui s'exécute au sein du navigateur

    Près d'un mois après la sortie de Blazor 0.1.0, Microsoft annonce la deuxième préversion publique de son framework Web expérimental. Le projet a été dévoilé début février avec pour objectif d'offrir aux programmeurs un framework web .NET basé sur C#, Razor et HTML et qui s'exécute directement au sein du navigateur via WebAssembly. D'après Microsoft, Blazor devrait permettre le développement Web full stack avec la stabilité et la productivité de .NET, mais aussi simplifier la création d'applications web monopages (single-page application) performantes qui s'exécutent dans n'importe quel navigateur. Les fonctionnalités prévues comprennent :

    • un modèle de composant pour construire des interfaces utilisateur composables ;
    • le routage ;
    • la mise en page ;
    • les formulaires ainsi que leur validation ;
    • l'injection de dépendances ;
    • l'interopérabilité avec JavaScript ;
    • le rechargement à chaud pendant le développement ;
    • le rendu côté serveur ;
    • le débogage .NET à la fois dans le navigateur et dans l'IDE ;
    • le support d'IntelliSense et de différents outils ;
    • le support de vieux navigateurs (non WebAssembly) via asm.js ;
    • la publication d'applications ainsi que la réduction de leur taille.

    La version 0.1.0 publiée le mois dernier a permis de jeter les fondements du framework et ajouter des fonctionnalités de base, notamment le routage, l'injection de dépendances et l'interopérabilité avec JavaScript. Dans cette nouvelle préversion, Microsoft poursuit son travail avec des améliorations et des fonctionnalités supplémentaires.

    Cette préversion vous permet par exemple de construire vos propres bibliothèques de composants réutilisables. Dans un billet de blog, Microsoft décrit en six étapes la procédure pour le faire. On notera également une syntaxe améliorée pour la gestion des événements et la liaison de données.

    Avec une fonctionnalité « Build on save » dans Visual Studio, Microsoft permet aussi le workflow de développement Web standard avec Blazor. Rappelons en effet que le workflow de développement typique de nombreux développeurs Web consiste à éditer le code, à l'enregistrer et à actualiser le navigateur. Ce flux de travail est rendu possible par la nature interprétée de JavaScript, HTML et CSS. Blazor est toutefois un peu différent, car il repose sur la compilation de code C# et Razor en assemblies .NET. Pour permettre le workflow de développement Web standard avec Blazor, Visual Studio va désormais surveiller les modifications de fichiers dans votre projet Blazor et va régénérer et redémarrer votre application alors que les éléments seront modifiés. Vous pouvez ensuite actualiser le navigateur pour voir les modifications sans avoir à régénérer manuellement l'application.

    Parmi les fonctionnalités mises en avant dans cette préversion, on peut citer encore les attributs conditionnels ainsi que des améliorations de HttpClient. Vous trouverez dans les notes de version sur GitHub une liste complète des changements dans cette version.

    Pour installer Blazor 0.2.0, vous devez d'abord installer le SDK .NET Core 2.1 Preview 2, puis la dernière préversion de Visual Studio 2017 (15.7) avec la charge de travail de développement Web. Après cela, il ne restera plus qu'à installer l'extension ASP.NET Core Blazor Language Services à partir de Visual Studio Marketplace. Microsoft fournit également des instructions à suivre pour passer de la version 0.1.0 à la version 0.2.0.

    Rappelons aussi que pour créer votre premier projet Blazor à partir de Visual Studio, vous devez aller dans Fichier -> Nouveau projet -> Web -> Application Web ASP.NET Core. Vous devez ensuite vous assurez que .NET Core et ASP.NET Core 2.0 soient sélectionnés dans les listes déroulantes en haut de la boite de dialogue qui s'affiche et choisir le modèle de projet Blazor.


    Sources : Blog Microsoft, GitHub

    Et vous ?

    Qu'en pensez-vous ?
    L'avez-vous déjà testé ? Si oui, partagez votre expérience !

    Voir aussi :

    Microsoft publie la première préversion publique de Blazor, son framework web .NET expérimental qui s'exécute au sein du navigateur
    Microsoft lance un nouveau projet expérimental baptisé Blazor, qui simplifie la création d'applications web monopages avec .NET
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  15. #15
    Membre extrêmement actif
    Avatar de Madmac
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2004
    Messages
    1 685
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 685
    Points : 1 376
    Points
    1 376
    Billets dans le blog
    7
    Par défaut
    L'idée est bonne. Mais je déteste le navigateur et la compagnie qui a l'habitude de saigner tous le mondes (développeur inclus).

  16. #16
    Chroniqueur Actualités

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2013
    Messages
    8 443
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Mars 2013
    Messages : 8 443
    Points : 197 520
    Points
    197 520
    Par défaut Microsoft annonce la disponibilité de Blazor 0.5.1, son framework web .NET expérimental
    Microsoft annonce la disponibilité de Blazor 0.5.1,
    son framework web .NET expérimental qui s'exécute au sein du navigateur

    Début février, Microsoft a annoncé un nouveau projet expérimental baptisé Blazor (contraction de Browser et Razor), dont le but est d'offrir aux développeurs un framework web .NET basé sur C#, Razor et HTML et qui s'exécute directement au sein du navigateur via WebAssembly. D'après Microsoft, Blazor permet le développement Web full stack avec la stabilité et la productivité de .NET. Avec ce projet, Microsoft veut aussi simplifier considérablement la tâche de création d'applications web monopages (single-page application) performantes qui s'exécutent dans n'importe quel navigateur. Pour cela, le projet devrait donc offrir des fonctionnalités dignes d'un framework moderne, y compris :
    • un modèle de composant pour construire des interfaces utilisateur composables ;
    • le routage ;
    • la mise en page ;
    • les formulaires ainsi que leur validation ;
    • l'injection de dépendances ;
    • l'interopérabilité avec JavaScript ;
    • le rechargement à chaud pendant le développement ;
    • le rendu côté serveur ;
    • le débogage .NET à la fois dans le navigateur et dans l'IDE ;
    • le support d'IntelliSense et de différents outils ;
    • le support de vieux navigateurs (non-WebAssembly) via asm.js ;
    • la publication d'applications ainsi que la réduction de leur taille.

    Cette fois-ci, Microsoft a annoncé la disponibilité de Blazor 0.5.0 (puis Blazor 0.5.1 pour corriger les problèmes reportés par les utilisateurs).

    Les nouvelles fonctionnalités de cette version sont :
    • Blazor côté serveur
    • Modèle de démarrage aligné avec ASP.NET Core
    • Améliorations d'interopérabilité JavaScript
    • Suppression de l'obligation de pré-enregistrer les méthodes JavaScript
    • Invoquer la méthode d'instance .NET à partir de JavaScript
    • Transférer les objets .NET en JavaScript par référence
    • Ajouter Blazor à n'importe quel fichier HTML en utilisant un tag de script normal
    • Rendre le HTML brut
    • Nouvel extrait de paramètre de composant
    • Prise en charge précoce du débogage dans le navigateur

    Qu'est-ce que Blazor côté serveur?

    Blazor est principalement un framework web côté client destiné à s'exécuter dans un navigateur où la logique du composant et les interactions DOM se produisent toutes dans le même processus.

    Nom : Blazor_1.png
Affichages : 10661
Taille : 4,3 Ko

    Cependant, Blazor a été construit pour être assez flexible pour gérer les scénarios où l'application Blazor s'écarte du processus de rendu. Par exemple, vous pouvez exécuter Blazor dans un processus Web Worker afin qu'il s'exécute séparément du processus d'interface utilisateur. Les événements seraient transférés du processus de l'interface utilisateur vers le processus de Blazor, et Blazor pousserait les mises à jour de l'interface utilisateur vers le processus de l'interface utilisateur si nécessaire. Ce scénario n'est pas encore supporté, mais c'est quelque chose que Blazor a été conçu pour gérer.

    Nom : blazor_2.png
Affichages : 8959
Taille : 6,0 Ko

    Un autre cas d'utilisation potentiel pour exécuter Blazor dans un processus séparé est l'écriture d'applications de bureau avec Electron. La logique du composant Blazor peut s'exécuter dans un processus .NET Core normal, tandis que les mises à jour de l'interface utilisateur sont gérées dans le processus de rendu Electron.

    Nom : blazor_3.png
Affichages : 8830
Taille : 16,7 Ko

    À ce propos, Microsoft indique avoir un prototype fonctionnel dont vous pouvez vous servir pour essayer d’utiliser Blazor et Electron de cette manière.

    Blazor 0.5.0 prend le modèle hors-processus de Blazor et le filtre sur une connexion réseau pour que vous puissiez exécuter Blazor sur le serveur. Avec Blazor 0.5.0, vous pouvez exécuter vos composants Blazor côté serveur sur .NET Core pendant que les mises à jour de l'interface utilisateur, la gestion des événements et les appels d'interopérabilité JavaScript sont gérés via une connexion SignalR.

    Nom : blazor_4.png
Affichages : 8840
Taille : 10,8 Ko

    L'exécution de Blazor côté serveur présente plusieurs avantages:
    • Vous pouvez toujours écrire votre application entière avec .NET et C # en utilisant le modèle de composant Blazor.
    • Votre application a toujours un aspect interactif riche et évite les actualisations de page inutiles.
    • La taille de téléchargement de votre application est significativement plus petite et le temps de chargement initial de l'application est beaucoup plus rapide.
    • La logique de votre composant Blazor peut tirer pleinement parti des capacités du serveur, notamment en utilisant des API compatibles .NET Core.
    • Étant donné que vous utilisez .NET Core sur le serveur, les outils .NET existants, comme le débogage, fonctionnent.
    • Fonctionne avec les clients légers (ex: les navigateurs qui ne supportent pas WebAssembly, les périphériques à ressources limitées, etc.).

    Bien sûr, il y a aussi des inconvénients:
    • Latence: chaque interaction utilisateur implique désormais un saut réseau.
    • Pas de support hors ligne: si la connexion client est interrompue, l'application cesse de fonctionner.
    • Évolutivité: le serveur doit gérer plusieurs connexions client et gérer l'état du client.

    Modèle de démarrage

    Tous les projets Blazor dans la version 0.5.0 utilisent désormais un nouveau modèle de démarrage similaire au modèle de démarrage dans ASP.NET Core. Chaque projet Blazor a une classe Startup avec une méthode ConfigureServices pour configurer les services pour votre application Blazor, et une méthode Configure pour configurer les composants racine de l'application.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
        }
     
        public void Configure(IBlazorApplicationBuilder app)
        {
            app.AddComponent<App>("app");
        }
    }
    Le point d'entrée de l'application dans Program.cs crée un hôte Blazor configuré pour utiliser la classe Startup.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }
     
        public static IWebAssemblyHostBuilder CreateHostBuilder(string[] args) =>
            BlazorWebAssemblyHost.CreateDefaultBuilder()
                .UseBlazorStartup<Startup>();
    }
    Dans les applications Blazor côté serveur, le point d'entrée provient de l'application hôte ASP.NET Core, qui référence la classe Blazor Startup pour ajouter les services Blazor côté serveur et pour ajouter l'application Blazor au pipeline de gestion des demandes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            ...
            services.AddServerSideBlazor<App.Startup>();
        }
     
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            ...
            app.UseServerSideBlazor<App.Startup>();
        }
    }
    Alors que le projet Blazor côté serveur peut également avoir une classe Program, il n'est pas utilisé lors de l'exécution sur le serveur. Cependant, il serait utilisé si vous passiez à l'exécution côté client (WebAssembly) en changeant simplement la balise <script> dans index.html pour charger blazor.webassembly.js au lieu de blazor.server.js.

    L'application Blazor et l'application ASP.NET Core partagent le même fournisseur de services. Les services ajoutés dans les méthodes ConfigureServices sont visibles par les deux applications. Les services étendus sont limités à la connexion client.

    Ajouter Blazor à n'importe quel fichier HTML

    Dans les éditions antérieures de Blazor, la version du projet a été modifiée pour remplacer la balise de script blazor-boot par une balise de script réelle qui gérait le téléchargement du démarrage. Cette configuration a rendu difficile l'utilisation de Blazor dans des fichiers HTML arbitraires.

    Dans Blazor 0.5.0, ce mécanisme a été remplacé. Pour les projets côté client, ajoutez un tag de script qui fait référence au script _framework / blazor.webassembly.js (qui est généré dans le cadre de la construction). Pour les projets côté serveur, vous référencez _framework / blazor.server.js. Vous pouvez ajouter ce script à n'importe quel fichier HTML, y compris le contenu généré par le serveur.

    Par exemple, au lieu d'utiliser le fichier index.html statique du projet client Blazor, vous pouvez ajouter une page Razor à votre projet hôte ASP.NET Core, puis y ajouter la balise de script Blazor ainsi que toute logique de rendu côté serveur.

    Source : Microsoft

    Voir aussi :

    Windows 10 : Microsoft présente de nouvelles builds dopées au machine learning pour éviter les redémarrages inopportuns après des mises à jour
    Slack rachète la plateforme HipChat à Atlassian et envisage de la fermer et récupérer ses utilisateurs, afin d'être plus solide face à Microsoft Teams
    Un ingénieur de Mozilla affirme que YouTube est plus lent sur Firefox et Microsoft Edge que sur Google Chrome
    Microsoft se lance dans la console de jeu orientée cloud, comme annoncé lors de l'édition 2018 de l'Electronic Entertainment Expo
    Un développeur tiers publie LibreOffice pour Windows 10 sur le Microsoft Store, The Document Foundation s'en dédouane et la firme de Redmond l'éjecte
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  17. #17
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2008
    Messages : 167
    Points : 471
    Points
    471
    Par défaut
    Acte 1 : Sun crée Java. Avec les applets, permettant de faire tourner des applications java sur un navigateur.

    Acte 2 : Microsoft se dit : He, c'est pas mal tout ça. Vais faire ma propre JVM pour mon propre navigateur.

    Acte 3 : Sun grogne. Microsoft crée .NET

    Acte 4 : Adobe Flash a repris le flambeau. Microsoft se dit : He c'est pas mal tout ça. Un peu échaudé quelques années auparavant, il crée Silverlight, pour pas se faire taper sur les doigts.

    Acte 5 : Flash est "presque" mort, Silverlight est mort né, snifff.

    Acte 6 : Microsoft revient à sa première idée : Faire des applets, mais en .NET, cette fois-ci.

    Moral de l'histoire : le recyclage n'est pas qu'une affaire d'écologistes

  18. #18
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    794
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 794
    Points : 987
    Points
    987
    Par défaut
    Citation Envoyé par jpouly Voir le message
    Acte 1 : Sun crée Java. Avec les applets, permettant de faire tourner des applications java sur un navigateur.

    Acte 2 : Microsoft se dit : He, c'est pas mal tout ça. Vais faire ma propre JVM pour mon propre navigateur.

    Acte 3 : Sun grogne. Microsoft crée .NET

    Acte 4 : Adobe Flash a repris le flambeau. Microsoft se dit : He c'est pas mal tout ça. Un peu échaudé quelques années auparavant, il crée Silverlight, pour pas se faire taper sur les doigts.

    Acte 5 : Flash est "presque" mort, Silverlight est mort né, snifff.

    Acte 6 : Microsoft revient à sa première idée : Faire des applets, mais en .NET, cette fois-ci.

    Moral de l'histoire : le recyclage n'est pas qu'une affaire d'écologistes


    Tu racontes nawak, il s'agit juste de webassembly le code C# n'est jamais exécuté.

  19. #19
    Membre régulier
    Homme Profil pro
    ingénieur IT
    Inscrit en
    Août 2014
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : ingénieur IT

    Informations forums :
    Inscription : Août 2014
    Messages : 29
    Points : 107
    Points
    107
    Par défaut
    Citation Envoyé par jpouly Voir le message
    Acte 1 : Sun crée Java. Avec les applets, permettant de faire tourner des applications java sur un navigateur.

    Acte 2 : Microsoft se dit : He, c'est pas mal tout ça. Vais faire ma propre JVM pour mon propre navigateur.

    Acte 3 : Sun grogne. Microsoft crée .NET

    Acte 4 : Adobe Flash a repris le flambeau. Microsoft se dit : He c'est pas mal tout ça. Un peu échaudé quelques années auparavant, il crée Silverlight, pour pas se faire taper sur les doigts.

    Acte 5 : Flash est "presque" mort, Silverlight est mort né, snifff.

    Acte 6 : Microsoft revient à sa première idée : Faire des applets, mais en .NET, cette fois-ci.

    Moral de l'histoire : le recyclage n'est pas qu'une affaire d'écologistes
    Il y a une différence majeur dans le cas de Blazor.
    Comme cité plus haut Blazor compile vers le langage WebAssembly ou JavaScript avec asm.js si le navigateur web ne supporte pas WebAssembly.
    Contrairement à Flash, aux Applets Java et à Silverlight, il n'y a aucun plugin à installer sur son navigateur web.

    C'est justement l'un des but de WebAssembly, offrir de manière natif dans le navigateur web un moyen d’exécuter un langage ouvert, standardisé et de bas niveau vers lequel un langage de haut niveau peut compiler, tout comme les langages HTML, CSS et JavaScript offrent la possibilité de créer des sites web de manières standardisées sur la majorité des navigateurs web.
    Du coup le développeur pourra utiliser un langage de son choix (JavaScript, C#, Python, C++, Rust, ...) au lieu d'uniquement le JavaScript pour dynamiser son site web côté client.

    On évite les écueils de Flash, Applet Java et Silverlight car ici il n'y a pas de plugin à installer ou à mettre à jour avec les risques de sécurité liés à leur utilisation.

    Je trouve Blazor très intéressant surtout si on veut faire un site web 100% C# côté client et serveur avec Blazor + Asp.net Core.

    Je rajoute que contrairement à Silverlight, Blazor semble open source, multiplateforme, gratuit et plus léger et plus simple à déployer. (dotnet core + la ligne de commande suffise).

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2008
    Messages : 167
    Points : 471
    Points
    471
    Par défaut
    Citation Envoyé par jolt-counter Voir le message
    Il y a une différence majeur dans le cas de Blazor.
    Comme cité plus haut Blazor compile vers le langage WebAssembly ou JavaScript avec asm.js si le navigateur web ne supporte pas WebAssembly.
    Contrairement à Flash, aux Applets Java et à Silverlight, il n'y a aucun plugin à installer sur son navigateur web.

    C'est justement l'un des but de WebAssembly, offrir de manière natif dans le navigateur web un moyen d’exécuter un langage ouvert, standardisé et de bas niveau vers lequel un langage de haut niveau peut compiler, tout comme les langages HTML, CSS et JavaScript offrent la possibilité de créer des sites web de manières standardisées sur la majorité des navigateurs web.
    Du coup le développeur pourra utiliser un langage de son choix (JavaScript, C#, Python, C++, Rust, ...) au lieu d'uniquement le JavaScript pour dynamiser son site web côté client.

    On évite les écueils de Flash, Applet Java et Silverlight car ici il n'y a pas de plugin à installer ou à mettre à jour avec les risques de sécurité liés à leur utilisation.

    Je trouve Blazor très intéressant surtout si on veut faire un site web 100% C# côté client et serveur avec Blazor + Asp.net Core.

    Je rajoute que contrairement à Silverlight, Blazor semble open source, multiplateforme, gratuit et plus léger et plus simple à déployer. (dotnet core + la ligne de commande suffise).
    Si le "plug-in" est "natif", forcément on a pas besoins de l'installer.

    Mais quand j'entend parler de bytecode et de sandbox (cf. wikipedia), je me dis que dans l'idée, c'est pas très éloigné d'un Silverlight ou d'un flash.

    Pour le cotés open source, quand je vois la liste des contributeurs (Microsoft, Apple, Google, Mozilla et W3C), je reste septique.

Discussions similaires

  1. Rejoignez la rédaction de www.developpez.com
    Par Community Management dans le forum Evolutions du club
    Réponses: 22
    Dernier message: 28/12/2015, 11h06

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