No tienes acceso a esta clase

¬°Contin√ļa aprendiendo! √önete y comienza a potenciar tu carrera

Curso de Introducción a Solidity

Curso de Introducción a Solidity

Sebasti√°n Leonardo Perez

Sebasti√°n Leonardo Perez

Tokens

19/21
Recursos

Aportes 8

Preguntas 3

Ordenar por:

¬ŅQuieres ver m√°s aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Qué es un token

‚ÄćUn token es un objeto f√≠sico o digital que tiene valor en cierto contexto o para determinada comunidad, aunque su propia materialidad no contenga ese valor en s√≠.

Las fichas de casino, por ejemplo, son solo pedazos de plástico de distintos colores, pero representan cantidades de dinero. Algunas, hasta millones de dólares, aunque fabricar una de ellas cueste apenas centavos.

Eso hacen los tokens: representan otra cosa, est√°n en su lugar. ¬ŅPor qu√©? Hay muchos motivos: la comodidad, la seguridad, la facilidad de transportarlos o transferirlos.

En el mundo cripto, los tokens se generan a partir de piezas de código de programación, en formato de contratos inteligentes que corren sobre la blockchain. El smart contract describe cómo funciona cada token. La base de datos lleva el registro de cuántos tiene cada quien. Y los usuarios pueden enviárselos entre sí como forma de transferirse valor.

ERC-20

  • Representa a los tokens fungibles
  • Solo define su Interface
  • Existen mas est√°ndares pero mantienen compatibilidad con el ERC-20

ERC-20 OpenZeppelin

ERC-721

  • Representa a los tokens no fungibles. NFT
  • Solo define su Interface
  • Tienen un identificador √ļnico conocido como tokenId.

ERC-721 OpenZeppelin

TokenFungible.sol

// SPDX-License-Identifier: GPL-3.0

pragma solidity >=0.7.0 <0.9.0;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract TokenFungible is ERC20("TokenFungible", "TF") {
    
    //Funcion mint es la que emite los tokens y pide una direccion y una cantidad
    constructor() {
        _mint(msg.sender, 1000);
    }
    
}

TokenNoFungible.sol

// SPDX-License-Identifier: GPL-3.0

pragma solidity >=0.7.0 <0.9.0;

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";

contract TokenNoFungible is ERC721("TokenNoFungible","TNF") {
    
    //Funcion mint es la que emite los tokens y pide una direccion y un identificador
    constructor() {

        //tener la precaucion de siempre tener un ID que no se repita, unico
        _mint(msg.sender, 1);
    }
    
}

Esta clase me saco de muchas dudas sobre como funcionaban los tokens y los NFTs. He aprendido un montón hasta ahora, esperando que saquen cursos avanzados!!

RESUMEN CLASE 19:
TOKENS

I.- TOKENS

  • Son una representaci√≥n de un elemento que tiene un valor en un contexto determinado.

  • En general esta representaci√≥n tiene menos valor que el objeto original.

  • Existen diferentes clasificaciones para los tokens.

II.- CLASIFICACION

  • Fungibles: son elementos reemplazables por otros con las mismas caracter√≠sticas.
    Además son divisibles y podemos consumir solo una fracción.

  • No fungibles: son elementos que pueden variar de valor respecto de elementos de iguales caracter√≠sticas. No son divisibles.

III.- ERC-20

  • Es el est√°ndar que representa a los tokens fungibles.

  • Al ser un est√°ndar no cuenta con una implementaci√≥n, sino que solo define una interfase.

  • Existen otros est√°ndares que implementan tokens fungibles, pero todos ellos mantienen la compatibilidad contra el token ERC-20.

IV.- ERC-721

  • Es el est√°ndar que representa a los tokens no fungibles.

  • Al igual que el ERC-20 solo define una interfase.

  • A diferencia de los tokens fungibles, estos tienen un identificador √ļnico conocido como tokenId.

V.- TOKENURI

  • Contiene informaci√≥n no t√©cnica acerca de un token.

  • En general tiene que ver con informaci√≥n est√©tica o visual relacionada.

  • Fue introducida por el est√°ndar ERC-721, pero se utiliza en otros tipos de token.

REMIX:

TokenFungible.sol

// SPDX-License-Identifier: GLP-3.0

pragma solidity >=0.7.0 <0.9.0;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract TokenFungible is ERC20("TokenFungible", "TF") {

    constructor() {
        _mint(msg.sender, 1000);
    }

}

TokenNoFungible.sol

// SPDX-License-Identifier: GLP-3.0

pragma solidity >=0.7.0 <0.9.0;

import "@openzeppelin/contracts/token/ERC721/ERC721.sol";

contract TokenNoFungible is ERC721("TokenNoFungible", "TNF") {

    constructor() {
        _mint(msg.sender, 1);
    }
    
}

Tokens

Son una representación de un elemento que tiene un valor en un contexto determinado. En general, esta representación tiene menos valor que el objeto original. Existen diferentes clasificaciones para los tokens:

  • Fungibles: Son los elementos reemplazables por otros con las mismas caracter√≠sticas. Son divisibles.
  • No fungibles: son elementos que pueden variar de valor respecto de elementos de iguales caracter√≠sticas. No son divisibles.
    .

Algunos est√°ndares

ERC-20

Es el estándar que representa a los tokens fungibles. Al ser un estándar no cuenta con una implementación, sino que solo define una interfaz.

Existen otros est√°ndares que implementan tokens fungibles, pero todos ellos mantienen la compatibilidad con el token ERC-20.
.

ERC-721

Representa a los tokens no fungibles. Solo define una interfaz.

Los NFTs tienen un identificador √ļnico conocido como tokenId.
.

TokenUri

Contiene información no técnica acerca de un token. En general, tiene que ver con información estética o visual relacionada. Fue introducida por el estándar ERC-721, aunque también se utiliza en otros tipos de token.

Osea que las criptos son solo un registro numérico que vincula cada address en un mapping? Woowwww, esta clase me abrio los ojos y me dejo un tanto sorprendido

Super interesante!, seria genial un curso enfocado en el desarrollo de tokens.