Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Smart_Contract_architecture_on_Ethereum.pdf

Mesi Rendón
October 15, 2018
68

 Smart_Contract_architecture_on_Ethereum.pdf

Mesi Rendón

October 15, 2018
Tweet

Transcript

  1. Objetivos • Retomar desde lo construido • Dejar el ejemplo

    trivial • Herramientas de desarrollo • Buenas prácticas de desarrollo • Documentación y experiencias • Conclusiones y Preguntas
  2. Herramientas de desarrollo • Máquina ◦ Unix-like (Ubuntu LTS) ▪

    sudo apt-get install git-core curl vim build-essential • Node (https://goo.gl/NyaeHT) ◦ nvm ▪ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash ▪ command -v nvm ▪ nvm install node ▪ command -v npm ◦ Yarn (https://yarnpkg.com/en/) • Truffle (https://yarnpkg.com/en/) ◦ npm i -g truffle ganache-cli
  3. Herramientas de desarrollo • Navegador ◦ Firefox ◦ Chrome •

    Metamask (https://metamask.io/) • OpenZeppelin (https://github.com/OpenZeppelin/openzeppelin-solidity) ◦ yarn add openzeppelin-solidity
  4. Herramientas adicionales de desarrollo • VueJS (https://vuejs.org/) ◦ npm i

    -g @vue/cli • Swagger (https://swagger.io/) ◦ npm i -g swagger • Docker (https://www.docker.com/) ◦ Docker ◦ Docker compose • IDE ◦ Vim ◦ JetBrains’ WebStorm (https://www.jetbrains.com/webstorm/) ◦ VisualStudio Code (https://code.visualstudio.com/) ◦ Sublime ◦ Atom
  5. Proyecto con Truffle • Directorio vacío del proyecto (cuidado) •

    Estructura . ├── contracts │ └── Migrations.sol ├── migrations │ └── 1_initial_migration.js ├── README.md ├── test ├── truffle-config.js └── truffle.js
  6. TDD & BDD • Mocha, Chai, Chai as Promised ◦

    yarn add -D chai chai-as-promised