¿Es Geth un mejor cliente para empezar a entender el mundo ethereum?

Al desarrollar un dapp, ¿es Geth una mejor opción para comenzar para un principiante? Veo que hay otras opciones que son ganache y trufa, pero no estoy seguro de cuál empezar. Supongo que los principiantes pueden confundirse con estos tres clientes cuando comienzan a aprender el desarrollo de dapp.

  1. ¿Estos tres sirven esencialmente para el mismo propósito?
  2. ¿Son estos tres algo que debe aprender para el desarrollo de dapp? o cualquiera de ellos se puede omitir?

Respuestas (1)

Los tres son buenos para usar en el desarrollo de D-app. También soy un principiante y descubrí que entender cómo funciona la cadena de bloques, la consola geth es la mejor manera de aprender, aunque puede llevarle un tiempo sincronizar un nodo. Recomiendo usar la red de prueba de ropsten si elige usar geth. puede comenzar a sincronizar el nodo usando "geth --testnet" como un comando de terminal y debería ver que el nodo comienza a sincronizarse. Para usar el nodo una vez sincronizado, le recomiendo que consulte https://web3js.readthedocs.io/en/1.0/

En cuanto a las trufas y el ganache, son marcos decentes para probar contratos e inicializar un proyecto con las carpetas necesarias para que sea competente. Pero si es nuevo en el desarrollo, encontrará algunos problemas con la configuración, etc. No digo que no los intente usar, pero pueden ser complicados y habrá mucha lectura e investigación sobre cómo puede hacerlo. utilizar los marcos.

Si está buscando una forma de implementar un contrato inteligente simple, la forma más fácil que he encontrado es usar web3.deploy, al que se puede acceder a través del botón "detalles" en https://remix.ethereum.org .

Lo que tiene que hacer es tener una consola geth abierta para implementar el contrato con web3.deploy, lo mejor para un principiante sería usar "geth --dev console" como comando de terminal, esto le dará una instancia local de ethereum blockchain "SÓLO UN NODO LOCAL, NO SE CONECTARÁ A NINGÚN OTRO Y SÓLO APARECERÁN EN LA BLOCKCHAIN ​​LOS TX'S QUE ENVÍES".

Una vez que haya configurado la consola de desarrollo, todo lo que tendría que hacer es copiar y pegar el script web3.deploy desde el botón de detalles en Remix y luego usar

contractName.function(parámetro, {de: cuenta1 gas: 1000})

para una función que cambiaría el estado actual de los datos en la cadena de bloques o simplemente puede usar

nombrecontrato.función(parámetro)

para llamar a una función que de otro modo "vería" algo de la cadena de bloques.

Espero que esto ayude =)