как NEAR Protocol рекомендует местное развитие?

раскрытие информации: я работаю с NEAR и в настоящее время присоединяюсь

на основе документации (https://docs.nearprotocol.com/) и углубляясь вnearcore/scriptsпапка, похоже, в настоящее время существует 5 способов запустить локальный узел для разработки и тестирования (т.е. разработка DApps, интеграция с платформой или участие в ней), а также для проверки (как часть NEAR Stakewars)

у всех есть возможность запустить контейнер Docker или скомпилировать и запустить код изначально

(см. репо на GitHub @nearprotocol/nearcore/scripts/start_*)

два, которые кажутся наиболее полезными для разработчика DApp, - это

  • start_localnet и
  • start_testnet

первый запускает узел, который полностью изолирован от локальной разработки, а второй подключается к NEAR TestNet (через общий список загрузочных узлов и URL-адрес телеметрии)

что из вышеперечисленного NEAR рекомендует для местного развития?

для полноты, вот все 5 скриптов запуска:

  • start_localnet
    полностью изолирован, не имеет отношения к NEAR TestNet (без загрузочных узлов и телеметрии)
  • start_testnet
    подключен к NEAR TestNet через загрузочные узлы и телеметрию. очевидно, может также повторно использовать существующиеgenesis.json файл, если найден
  • start_stakewars,
    если вы участвуете в NEAR Stakewars, это ваш сценарий запуска
  • start_unittest
    используетсяnearcore, near-bindgen а также near-evm
  • start_staging_testnet
    используетсяnear-bindgen примеры "межконтрактный-высокий уровень"

PSA1: near-bindgenимеет несколько хорошо задокументированных примеров - если вы еще этого не сделали, просто решите сейчас, что вы хотите изучить Rust

PSA2: near-evm похоже на доказательство концепции, которая позволяет запускать смарт-контракты Ethereum на платформе NEAR

1 ответ

Решение

Как обычно start_testnetдолжно быть достаточно, поскольку он позволяет разработчикам развертывать и тестировать свой контракт в тестовой сети, что, как я полагаю, является тем, чего хочет большинство разработчиков. Однако есть определенные случаи, когдаstart_localnetпредпочтительнее. Например, если вы хотите использовать другой генезис по какой-либо причине (одна из причин, которые я вижу, это то, что если вы хотите увидеть, сколько стоят вещи с разными параметрами конфигурации), или если тестовая сеть нестабильна, или если вы хотите запустить настроенную код nearcore, который может быть несовместим с кодом тестовой сети.

Другие вопросы по тегам