Advency quick access

Création de dAPP Web 3

Le web 2.0

Pour comprendre ce qu’est le Web 3.0, on va d’abord s’intéresser au Web 2.0.

Le Web 2.0, c’est l’internet que l’on connaît et que l’on utilise aujourd’hui : les utilisateurs qui se rendent sur une application (web, mobile, logiciel, etc.) vont aller y consommer des informations, mais vont également interagir sur ces applications (messageries, achats en ligne, etc.) via un ou plusieurs serveurs appartenant aux entités propriétaires. En d’autres termes, tous les échanges entre les utilisateurs et les applications sont centralisés.

Tout ce que les utilisateurs publient sont des données qui appartiennent aux entités propriétaires de l’application, qui en font ce qu’elles veulent. Aujourd’hui, ce système est donc largement impliqué dans la vie privée des utilisateurs et des consommateurs d’internet.

Le web 3.0

L’objectif du Web 3.0 est de décentraliser ces données en passant par un système de « Peer to Peer » : les données ne transitent plus par des serveurs qui appartiennent aux marques et entités, mais sont partagées entre tous les utilisateurs qui naviguent sur internet, et chacun stocke des bouts d’informations. Ces données sont ensuite reconstituées avec une chaîne de caractères cryptés.

Les informations publiées ne sont donc plus récoltées, analysées et traitées par des entreprises tierces. Les utilisateurs reprennent le contrôle de leurs données et se réapproprient internet.

La DApp

Une DApp est une application décentralisée. On l’aura donc compris, Les DApps s’opposent aux applications centralisées que l’on connaît et utilise majoritairement aujourd’hui. Pour fonctionner, elles sont constituées de :

  • Un (ou plusieurs) contrat autonome (plus connu sous le nom de Smart Contract) : c’est la structure de la DApp. Les contrats sont construits sur le protocole Peer to Peer qui ne dépend pas d’un tiers de confiance
  • Une interface utilisateur
  • Un modèle distribué de stockage de données

Concrètement, comment ça fonctionne ?

Dans un contrat ordinaire, on a (au minimum) deux parties, et une entité tierce qui gère le contrat et en arbitre les règles. On va donc s'adresser à cette entité tierce pour toute interaction concernant le contrat.

Les contrats autonomes (smart contracts) sont, eux, construits sur le modèle Web 3.0 : les parties établissent un contrat qui est codé et crypté, et décentralisé entre tous les utilisateurs d’internet : il n’y a donc plus besoin de s’adresser à une entité tierce.

Les DApps, ce sont donc des applications (web, mobile, etc.) qui utilisent les propriétés de la blockchain pour fonctionner :

  • Distribué et transparent : les contrats sont validés par l’ensemble des utilisateurs d’internet, et toutes les interactions avec les contrats autonomes sont enregistrées publiquement. Une personne ne peut donc pas avoir la main sur le contrat et en falsifier son code, car les autres utilisateurs, qui disposent eux aussi de ce contrat codé, l’invalideront. Tout le monde peut vérifier le code d’une Dapps, ce qui garantit sa sécurité.
  • Immuable : une fois créé et inséré dans la blockchain, le contrat ne peut donc plus être changé. Personne ne peut prendre le contrôle du contrat
  • Résilient : Les DApps sont gérées sur des centaines de milliers d'ordinateurs à travers le monde. Elles ont donc un taux de disponibilité très élevées puisqu’elles ne cessent jamais de fonctionner
  • Données protégées : les données ne sont détenues que par les utilisateurs des Dapps, ce qui change le rapport aux politiques de protection des données

L’équipe d’Advency s’intéresse particulièrement au Web 3.0. et propose son expertise dans le développement d’applications décentralisées, notamment (mais non exclusivement) avec Ethereum ou Binance Chain, des réseaux décentralisés rédigés en langage « Solidity » dont le code est proche de celui de Javascript.

Les étapes de création d'une DApp

  • 1
    Compréhension du besoin, cadrage
    • Atelier de travail de lancement
    • Validation des besoins et conseils/préconisations
  • 02
    Conception graphique (UX/UI Design)
    • Ateliers de co-conception
    • Définition de l’arborescence
    • Création de maquettes (prototypes cliquables du projet), itérations jusqu’à satisfaction
  • 03
    Conception technique
    • Reprise du besoin
    • Description des fonctionnalités
    • Rédaction des spécifications techniques et fonctionnelles
  • 04
    Choix de la blockchain
    • Ethereum, Binance Chain ou autre réseau
  • 05
    Création d’un (ou plusieurs) contrat autonome
    • Définition des actions à effectuer automatiquement : qu'il s'agisse de transactions simples, d'une chaîne de calculs d'algorithmes ou autre, toutes ces fonctionnalités d'exécution automatique devront résider dans des contrats autonomes.
    • Voir le Guide de développement d'applications Smart Contract
  • 06
    Création d’un backend centralisé
    • Dans le cas de stockage massif de données ou de l’expression d’un besoin de fonctionnalité qui ne relève pas des transactions en chaîne. La DApp devient alors une Semi-DApp.
  • 07
    Développement des frontaux

    Partie visible par l'internaute avec lequel il pourra interagir

  • 08
    Tests poussés et recette
    • Avec un processus d’assurance qualité approfondi
  • 09
    Mise en ligne
  • 10
    Maintenance
    • Préventive (maintien du bon fonctionnement, mises à jour)
    • Corrective (prise en charge des demandes via un outil spécial mis à disposition)
    • Évolutive (nouvelles fonctionnalités, évolutions de la plateforme)

Et si on discutait de votre projet ?

La première étape c'est d'écouter et de comprendre le besoin.
Sur la base d'un cahier des charges ou directement en session d'échange (RDV ou visio), nous sommes à l'écoute de chaque projet de création ou de refonte

Prendre un rendez-vous

Accessibilité