Recentemente, tenho revisado meu conhecimento sobre Solidity para reforçar os detalhes e estou escrevendo um "WTF Introdução Simples ao Solidity" para iniciantes (os programadores experientes podem buscar outros tutoriais), com atualizações semanais de 1 a 3 palestras.
Twitter: @0xAA_Science
Comunidade: Discord | Grupo no WeChat | Site oficial wtf.academy
Todo o código e tutoriais são de código aberto no GitHub: github.com/AmazingAng/WTF-Solidity
No Solidity, a declaração import
nos permite referenciar o conteúdo de um arquivo em outro, aumentando a reutilização e organização do código. Este tutorial irá te mostrar como utilizar a declaração import
no Solidity.
-
Importação por posição relativa do arquivo, exemplo:
Estrutura de Arquivos ├── Import.sol └── Yeye.sol // Importar por posição relativa do arquivo import './Yeye.sol';
-
Importação do símbolo global do contrato de um arquivo online através do URL, exemplo:
// Importar por URL import 'https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/Address.sol';
-
Importação do diretório npm, exemplo:
import '@openzeppelin/contracts/access/Ownable.sol';
-
Importação de um símbolo global específico do contrato, exemplo:
import {Yeye} from './Yeye.sol';
-
O posicionamento do
import
no código é após a declaração da versão e antes do restante do código.
Podemos testar se a importação do código externo foi bem-sucedida com o seguinte trecho de código:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;
// Importar por posição relativa do arquivo
import './Yeye.sol';
// Importar um contrato específico
import {Yeye} from './Yeye.sol';
// Importar por URL
import 'https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/Address.sol';
// Importar o contrato Ownable do OpenZeppelin
import '@openzeppelin/contracts/access/Ownable.sol';
contract Import {
// Importar a biblioteca Address com sucesso
using Address for address;
// Declarar a variável yeye
Yeye yeye = new Yeye();
// Testar se é possível chamar uma função de yeye
function test() external {
yeye.hip();
}
}
Nesta palestra, exploramos o uso da palavra-chave import
para importar código externo. Com o import
, podemos referenciar contratos ou funções de outros arquivos que escrevemos, bem como importar diretamente códigos pré-escritos por terceiros, o que é muito prático.