Урок 2

Налаштування реміксу для взаємодії з Oracle

Для багатьох розробників Ethereum Remix представляє єдиний магазин. Це потужний інструмент, який обробляє все: від розробки смарт-контракту до розгортання. У цьому уроці ми налаштуємо Remix для взаємодії з оракулами, залучаючи реальні дані для наших контрактів.

Налаштування реміксу: підготовка середовища

Перш ніж почати, переконайтеся, що Remix IDE відкрито у вашому браузері. Для найкращого досвіду та сумісності використовуйте останню версію інструменту.

  1. Версія Solidity: переконайтеся, що ви використовуєте версію v0.8.21 Solidity. Ви можете вказати це на початку смарт-контракту як:

    Solidity 
     прагма solidity ^0.8.21;
    
  2. Вибір середовища: на панелі ліворуч на вкладці «Розгортання та запуск транзакцій» переконайтеся, що вибрано середовище Injected provider . Це підключає Remix до вашої MetaMask, що дозволяє легко розгортати тестову мережу Goerli на наступних уроках.

Імпорт бібліотек Oracle: використання вже існуючих інструментів і бібліотек

Chainlink, як головний постачальник оракул, пропонує контракти Solidity, адаптовані для різних версій мови. Щоб використати їх у Remix:

  1. У верхній частині файлу Solidity імпортуйте необхідні контракти Chainlink. Для версії 0.8.x ваш імпорт може виглядати приблизно так:

    Імпорт Solidity 
     "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";
    
  2. Якщо Remix запропонує вам імпортувати файл із GitHub, прийміть і продовжуйте. Це автоматично завантажить необхідні файли контракту зі сховища Chainlink GitHub.

Підключення до зовнішніх джерел даних: як отримати зовнішню інформацію

Налаштувавши необхідні бібліотеки, ми можемо підключити наш контракт до зовнішнього джерела даних. Chainlink використовує мережу вузлів Oracle для надання даних смарт-контрактам.

  1. Цінові канали: контракти Price Feed від Chainlink є опорними точками даних у мережі. Щоб використовувати їх, створіть екземпляр каналу цін у своєму контракті, використовуючи відповідну адресу контракту (наприклад, канал цін ETH/USD). Ось приклад:

    Solidity 
     AggregatorV3Interface internal priceFeed = AggregatorV3Interface(0xYourContractAddressHere);
    
  2. Спеціальні запити даних: Chainlink також дозволяє надсилати спеціальні запити даних до будь-якого зовнішнього API. Це вимагає більш детального налаштування, яке ми розглянемо в наступному уроці.
    На цьому етапі ваше середовище Remix має бути налаштовано на інтегровану в Oracle розробку смарт-контрактів. Виконавши ці кроки, наш наступний урок проведе вас через створення контракту, який використовує та обробляє дані реального світу.

Відмова від відповідальності
* Криптоінвестиції пов'язані зі значними ризиками. Дійте обережно. Курс не є інвестиційною консультацією.
* Курс створений автором, який приєднався до Gate Learn. Будь-яка думка, висловлена автором, не є позицією Gate Learn.
Каталог
Урок 2

Налаштування реміксу для взаємодії з Oracle

Для багатьох розробників Ethereum Remix представляє єдиний магазин. Це потужний інструмент, який обробляє все: від розробки смарт-контракту до розгортання. У цьому уроці ми налаштуємо Remix для взаємодії з оракулами, залучаючи реальні дані для наших контрактів.

Налаштування реміксу: підготовка середовища

Перш ніж почати, переконайтеся, що Remix IDE відкрито у вашому браузері. Для найкращого досвіду та сумісності використовуйте останню версію інструменту.

  1. Версія Solidity: переконайтеся, що ви використовуєте версію v0.8.21 Solidity. Ви можете вказати це на початку смарт-контракту як:

    Solidity 
     прагма solidity ^0.8.21;
    
  2. Вибір середовища: на панелі ліворуч на вкладці «Розгортання та запуск транзакцій» переконайтеся, що вибрано середовище Injected provider . Це підключає Remix до вашої MetaMask, що дозволяє легко розгортати тестову мережу Goerli на наступних уроках.

Імпорт бібліотек Oracle: використання вже існуючих інструментів і бібліотек

Chainlink, як головний постачальник оракул, пропонує контракти Solidity, адаптовані для різних версій мови. Щоб використати їх у Remix:

  1. У верхній частині файлу Solidity імпортуйте необхідні контракти Chainlink. Для версії 0.8.x ваш імпорт може виглядати приблизно так:

    Імпорт Solidity 
     "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";
    
  2. Якщо Remix запропонує вам імпортувати файл із GitHub, прийміть і продовжуйте. Це автоматично завантажить необхідні файли контракту зі сховища Chainlink GitHub.

Підключення до зовнішніх джерел даних: як отримати зовнішню інформацію

Налаштувавши необхідні бібліотеки, ми можемо підключити наш контракт до зовнішнього джерела даних. Chainlink використовує мережу вузлів Oracle для надання даних смарт-контрактам.

  1. Цінові канали: контракти Price Feed від Chainlink є опорними точками даних у мережі. Щоб використовувати їх, створіть екземпляр каналу цін у своєму контракті, використовуючи відповідну адресу контракту (наприклад, канал цін ETH/USD). Ось приклад:

    Solidity 
     AggregatorV3Interface internal priceFeed = AggregatorV3Interface(0xYourContractAddressHere);
    
  2. Спеціальні запити даних: Chainlink також дозволяє надсилати спеціальні запити даних до будь-якого зовнішнього API. Це вимагає більш детального налаштування, яке ми розглянемо в наступному уроці.
    На цьому етапі ваше середовище Remix має бути налаштовано на інтегровану в Oracle розробку смарт-контрактів. Виконавши ці кроки, наш наступний урок проведе вас через створення контракту, який використовує та обробляє дані реального світу.

Відмова від відповідальності
* Криптоінвестиції пов'язані зі значними ризиками. Дійте обережно. Курс не є інвестиційною консультацією.
* Курс створений автором, який приєднався до Gate Learn. Будь-яка думка, висловлена автором, не є позицією Gate Learn.
It seems that you are attempting to access our services from a Restricted Location where Gate is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Thailand, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.