Follow Us
Facebooktwitteryoutube
YouTube
Promo
banner
Promo
banner

Как создать приложение Blockchain

Вы ищете руководство, в котором вы можете узнать, как создать приложение блокчейн? Вот руководство, которое поможет вам создать блокчейн-приложение с нуля..

В этой статье мы будем создавать наше блокчейн-приложение. Недавно мы рассказали, как построить блокчейн. Это было полное руководство по созданию блокчейна на языке программирования Python. Основное внимание в руководстве уделяется технологии блокчейн и ее внутреннему устройству..

Однако в этом руководстве рассказывается, как создать приложение с использованием блокчейна. Децентрализованное приложение (dApp) сможет использовать свойства блокчейна..

Мы создадим простое блокчейн-приложение с использованием Ethereum. Ethereum – это технология блокчейна второго поколения, которая предоставляет расширенные функции, такие как смарт-контракты, Proof-of-Stake и, что наиболее важно, возможность создавать децентрализованные приложения (dApps)..

Итак, давайте начнем с нашего руководства «Как создать приложение на основе блокчейна». Это руководство также предназначено для тех, кто хочет создать простое блокчейн-приложение. Чтобы создать простое блокчейн-приложение, мы будем использовать сеть Ethereum..

Но прежде чем мы начнем, давайте разберемся с основами..

Зарегистрируйтесь сейчас: Курс по основам корпоративных блокчейнов

Contents

Что такое dApp?

Первый шаг, который мы собираемся предпринять в том, как создать учебник по созданию приложения блокчейн, – это сначала изучить концепцию децентрализованного приложения (dApp)..

dApp означает децентрализованное приложение. Это приложение другого типа, которое предлагает ключевые характеристики, в том числе возможность автономной работы. Приложение также хранит данные криптографически, чтобы никто неавторизованный объект не мог получить к ним доступ без надлежащей авторизации..

Все эти характеристики делают децентрализованные приложения очень полезными в текущей корпоративной среде. Приложения также могут использовать токены, которые можно использовать для использования функций, предлагаемых приложением. Более того, приложение также может распространять токены, чтобы стимулировать узлы, которые участвуют в обеспечении функциональности dApp..

Выбор платформы – почему мы выбираем платформу Ethereum

Прямо сейчас есть много платформ, которые вы можете выбрать для создания своего dApp. Они включают популярные платформы блокчейнов, такие как Ethereum, Hyperledger Fabric и Cardano. Из всего этого Ethereum кажется лучшим выбором благодаря активному сообществу, инструментам и обучающим материалам, доступным в Интернете..

Еще одна причина, по которой мы выбираем Ethereum, заключается в том, что он использует Solidity. Solidity явно предназначен для развертывания и создания децентрализованных приложений и смарт-контрактов. Его легко освоить, и вы можете экспериментировать..


Практическое руководство по созданию децентрализованного блокчейн-приложения

Прежде чем мы углубимся в код, я хотел бы перечислить шаги, которые описывают процесс создания блокчейн-приложения. Давайте рассмотрим это ниже.

Найдите идею

Первый шаг – найти идею для работы. Децентрализация – это новая крутая концепция, которая может иметь множество вариантов использования. Как ученик или инженер, вы должны придумать полезную идею, которая принесет пользу вам или вашей компании. Кроме того, не беспокойтесь, если у вас нет идеи, которая изменит ситуацию. Можно создавать простые приложения только для обучения и практики..

Вы также можете искать проблемы, с которыми вы сталкиваетесь с блокчейном, и, возможно, попытаться решить их как можно лучше. Дело в том, чтобы посмотреть на проблему с точки зрения вашей боли, а затем попытаться ее решить..

Если вы пытаетесь создать dApp для своего бизнеса или в соответствии с вашими бизнес-требованиями, вам необходимо провести надлежащий анализ затрат и выгод. Вам также необходимо изучить риски, связанные с проектом, и посмотреть, сможет ли ваша бизнес-команда управлять приложением с должной осмотрительностью..

Ни при каких обстоятельствах не следует принимать поспешных решений, о которых вы потом пожалеете. Это связано с тем, что разработка блокчейна обходится дорого, особенно когда речь идет о поиске талантов для разработки и управления им. Вдобавок ко всему существует нехватка разработчиков, которые работают над блокчейном. Короче говоря, вы должны предпринять правильные шаги, когда дело доходит до разработки блокчейн или блокчейн-приложений..

Вот руководство по разработке dApps, которое поможет вам понять механизмы создания нового децентрализованного приложения..

Выберите метод консенсуса

Для работы любого децентрализованного приложения требуется надлежащий алгоритм консенсуса. Это гарантирует, что транзакции подтверждены, и что мошенничество не будет иметь места. Как разработчик или учащийся, вам необходимо выбрать любой из доступных методов консенсуса, включая Proof of Stake, Delegated Proof of Stake, Byzantine fault-устойчивый и так далее! Выбор должен зависеть от вашего опыта и требований к приложению..

Выбор платформы

Здесь вам нужно выбрать платформу по вашему выбору. Ясно, что мы уже рассмотрели вышеупомянутый вопрос. В основном у вас есть три платформы на выбор, включая Ethereum, Hyperledger Fabric и Cardano..

Для этого можно использовать множество корпоративных блокчейнов, но мы собираемся использовать Ethereum..

Консоль администратора и пользовательский интерфейс

У приложений должен быть надлежащий пользовательский интерфейс. Вот почему вам следует создать приложение на основе блокчейна с хорошим пользовательским интерфейсом. В приложении также должна быть консоль администратора, чтобы вы могли без проблем управлять им..

Понимание принципов блокчейна

Разработчики часто начинают руководство по разработке приложений с блокчейном, не понимая основных концепций и принципов. Вот почему я полностью рекомендую изучить основы блокчейна, прежде чем начинать с руководств по разработке приложений. Вы также можете прочитать о его экосистеме, включая инструменты блокчейна, платформы и криптовалюты..

Практика и развитие

Практикуйте свои навыки как можно больше. Это даст вам навыки для разработки более сложных приложений в будущем..

Как создать приложение Blockchain? Простой подход

Да, вы правильно прочитали. В этом разделе мы сосредоточимся на создании простого приложения на основе блокчейна всего за пять простых шагов. Если вы никогда не создавали блокчейн-приложение, эти пять шагов помогут вам лучше понять процесс..

Пять шагов заключаются в следующем.

  • Установите зависимости и клонируйте репозитории.
  • Запуск Ganache CLI
  • Составление договора
  • Развертывание контракта
  • Договорное взаимодействие

И это все. Вы можете найти более подробные инструкции в самом сообщении. Это простое приложение для голосования на блокчейне..

Как создать приложение Blockchain? Жесткий подход

Хорошо! Ты поймал меня! Вам не нужен легкий путь, но вы хотите изучить блокчейн на собственном горьком опыте. Не волнуйтесь, так как в этом разделе мы собираемся создать приложение со списком задач с использованием смарт-контрактов Ethereum..

Принцип работы блокчейн-приложений

Прежде чем мы углубимся в создание блокчейн-приложения, давайте попробуем понять, как именно блокчейн-приложение будет работать в первую очередь..

Чтобы понять это, давайте посмотрим, как работает простое приложение. Любое приложение, работающее в Интернете, отображается на компьютере пользователя с помощью браузера или специального приложения в Windows. В любом случае он запрашивает у сервера страницы или информацию, которая затем отображается на компьютере пользователя..

В случае с веб-приложением все централизовано. Это дает некоторые преимущества; однако, когда дело доходит до безопасности, это оставляет желать лучшего. Блокчейн-приложения работают совершенно по-другому. Все децентрализовано, включая код и данные, которые хранятся в приложении..

Смарт-контракты

Ключевым моментом здесь является смарт-контракт. Смарт-контракт упрощает само приложение. Он содержит весь код, который заставляет приложение работать. Это также автоматизирует процесс и гарантирует, что он работает должным образом. В нашем руководстве мы собираемся использовать смарт-контракты для написания различных функций списка дел..

Смарт-контракты используют язык программирования Solidity. Он похож на JavaScript. После написания смарт-контракта его код становится неизменным и неизменным. Вы можете изменить код во время развертывания. Однако после развертывания приложения вы не сможете изменить код. Это сделано для обеспечения надежности и безопасности блокчейн-приложений. Такой подход также означает, что вам нужно быть особенно осторожным и проводить все тесты перед развертыванием смарт-контракта. Кроме того, коды смарт-контрактов являются общедоступными..

Хотите узнать, как построить блокчейн с помощью Python? Вот руководство по созданию блокчейна с Python, которому вы можете следовать.

Создание нашего приложения со списком дел на блокчейне

Чтобы убедиться, что вы понимаете концепцию, вам сначала нужно узнать, как будет работать приложение цепочки блоков Todo. Мы будем использовать Ethereum для создания приложения. Наше приложение будет использовать один узел Ethereum, а также будет иметь клиентское приложение. Мы собираемся использовать Solidity, чтобы написать смарт-контракт, а затем развернуть его..

Как разработчику вам необходимо использовать кошелек Ethereum, который легко сделать..

Подготовка – Создание среды

Чтобы создать локальную среду, нам понадобится несколько инструментов и пакетов. Давайте пройдемся по ним один за другим.

Ганаш

Ганаш это инструмент разработки Ethereum. Он позволяет вам управлять, развертывать и разрабатывать приложения, смарт-контракты и тесты. Мы собираемся запустить версию для Windows для этого учебника. Если у вас другая операционная система, вы также можете загрузить версию для Mac или Linux. После установки вы сможете использовать его через инструмент командной строки..

Node.js

Node.js – это наш следующий инструмент, который необходимо установить. Чтобы запустить частный блокчейн на вашем компьютере, вам необходимо установить Диспетчер пакетов узлов.

После установки откройте свой терминал и введите команду ниже. Если он работает, тогда вам хорошо..

$ node -v

Кошелек MetaMask Ethereum

Поскольку мы собираемся работать с блокчейном Ethereum, нам нужен кошелек, который может работать из браузера.. Метамаск кошелек в веб-браузере, который позволяет вам взаимодействовать с блокчейном Ethereum..

Трюфельный каркас

Последнее программное обеспечение, которое мы собираемся установить, – это Трюфельный каркас. Он предлагает широкий набор инструментов, которые позволяют вам эффективно работать с вашим dApp. Вы можете использовать язык программирования Solidity для разработки смарт-контракта Ethereum..

Некоторые из ключевых функций Truffle Framework включают следующие

  • Правильное управление смарт-контрактами
  • Сетевое управление
  • Автоматизированное тестирование
  • Консоль разработки
  • Script Runner
  • Развертывание и миграции
  • Клиентская разработка.

Для установки необходимо использовать команда npm. Просто запустите следующую команду в командной строке.

$ npm установить -g [email protected]

Установка займет некоторое время. Также обратите внимание, что вам необходимо установить точную версию, чтобы следовать руководству..

Хотите стать экспертом в области блокчейн? Присоединяйтесь к нам сертифицированный профессиональный курс корпоративного блокчейна сейчас!

Настройка проекта

Круто! Теперь у нас есть среда разработки, готовая к использованию. Теперь все, что нам нужно сделать, это создать наш проект. Для этого нам нужно создать каталог проекта. Давай сделаем это ниже.

$ mkdir dapp-todo

$ cd dapp-todo

Как только вы окажетесь в папке, вам нужно запустить проект трюфеля, выполнив команду ниже.

$ truffle init

После этого вам будет показано сообщение, подобное приведенному выше. Это означает, что папка и файлы успешно созданы. Теперь вы можете открыть папку в своем любимом текстовом редакторе. Но прежде чем вы это сделаете, вам нужно создать package.json файл. Это поможет вам установить зависимости, необходимые для проекта..

Вы можете вручную создать файл, а затем сохранить содержимое, показанное ниже..

{

  «Name»: «dapp-todo»,

  «Версия»: «1.0.0»,

  «Description»: «Список дел на базе Ethereum»,

  «Основной»: «truffle-config.js»,

  «Каталоги»: {

    «Test»: «test»

  },

  «Скрипты»: {

    «Dev»: «lite-сервер»,

    «Test»: «echo \» Ошибка: тест не указан \ » && sexit 1 ″

  },

  «Автор»: «[email protected]»,

  «Лицензия»: «ISC»,

  «DevDependencies»: {

    «Бутстрап»: «4.1.3»,

    «Чай»: «^ 4.1.2»,

    «Чай как обещал»: «^ 7.1.1»,

    «Chai-bignumber»: «^ 2.0.2»,

    «Lite-server»: «^ 2.3.0»,

    «Nodemon»: «^ 1.17.3»,

    «Трюфель»: «5.0.2»,

    «Трюфель-контракт»: «3.0.6»

  }

}

После этого выполните следующую команду, чтобы установить зависимости.

$ npm install

Понимание структуры каталогов

Структура каталогов будет выглядеть ниже.

Давайте разберемся с каждой папкой по очереди.

  • Контракты: Каталог содержит все смарт-контракты. Контракт migrations.sol обрабатывает миграции в блокчейн..
  • Миграции: Каталог миграции содержит данные миграции. Отсюда и происходят миграции.
  • node_modules: Он содержит все модули / зависимости узла.
  • Тест: Этот каталог содержит тестовые файлы.
  • трюфель-config.js: Этот файл содержит конфигурацию проекта трюфелей..

Создание смарт-контракта

Пришло время начать с нашего создание смарт-контракта. Наши смарт-контракты будут храниться в папке контрактов. Давайте создадим файл смарт-контракта с именем todo.sol.

После этого вам нужно написать код, как показано ниже..

прагма solidity ^ 0.5.0;

контракт Todo {

// Код здесь

}

Первая строка кода указывает, какую версию Solidity мы используем для написания смарт-контракта. Затем нам нужно использовать ключевое слово contract и создать контракт Todo. Он будет содержать код для смарт-контракта..

Теперь давайте добавим переменную, чтобы увидеть, все ли работает должным образом..

прагма solidity ^ 0.5.0;

контракт Todo {

uint Задачи = 0;

}

Здесь мы определяем переменную задач, которая будет подсчитывать количество задач, которые у нас есть в нашем приложении Todo..

Подключение к Ganache

После того, как наш смарт-контракт правильно настроен в Truffle, теперь нам нужно подключиться к частной цепочке блоков Ganache, которую мы создали. Для этого необходимо обновить некоторые файлы конфигурации. Нам также необходимо создать сценарий миграции и запустить его, чтобы мы могли подключиться к личной сети блокчейнов..

Для начала нам нужно обновить файл truffle-config.json. Он должен находиться в каталоге основного проекта. Как только вы откроете его, скопируйте и вставьте следующий код.

module.exports = {

сетей: {

разработка: {

хост: «127.0.0.1»,

порт: 7545,

network_id: «*» // совпадение идентификатора сети

}

},

solc: {

оптимизатор: {

включен: правда,

пробеги: 200

}

}

}

Создав файл truffle-config.js, пришло время создать сценарий миграции, чтобы созданный нами смарт-контракт можно было перенести в личную сеть блокчейнов..

Мы сохраним имя как 2_deploy_contracts.js.

Миграции очень важны для нашего приложения Todo. Поскольку блокчейн – это тип базы данных, нам необходимо переводить ее из одного состояния в другое. Здесь помогают миграции.

Чтобы связать файлы миграции, нам нужно обновить, добавив следующий код во вновь созданный файл миграции..

var Todo = artifacts.require («./ Todo.sol»);

module.exports = function (deployer) {

deployer.deploy (Todo)

}

Первая строка кода просто создает переменную, которая ссылается на наш смарт-контракт. После этого мы развертываем его..

После этого давайте запустим команду migrate..

$ Truffle migrate

Вы также можете запустить консоль, используя команду ниже.

консоль $ трюфель

Разработка нашего приложения Todo List

Теперь, когда мы успешно выполнили наш первый смарт-контракт Ethereum, пришло время добавить функции в наше приложение. Наше приложение очень простое. Он перечислит задачи в нашем списке Todo. Нам нужно использовать смарт-контракт, чтобы это произошло.

Давай сделаем это ниже.

прагма solidity ^ 0.5.0;

контракт Todo {

uint публичные задачи = 0;

 

struct Task {

uint id;

строковое содержимое;

bool завершено;

}

}

Здесь мы использовали ключевое слово struct для создания новой структуры Task. Мы используем его для определения структуры нашей задачи, которая содержит идентификатор, контент и завершенное логическое значение..

Затем нам нужно сопоставить нашу структуру задач и сделать ее общедоступной, чтобы она могла быть доступна для блокчейна. Для этого нам нужно добавить следующую строку кода.

Код смарт-контракта теперь будет выглядеть так, как показано ниже..

прагма solidity ^ 0.5.0;

контракт Todo {

uint публичные задачи = 0;

struct Task {

uint id;

строковое содержимое;

bool завершено;

}

отображение (uint => Задача) публичные задачи;

}

Наконец, теперь нам нужно создать функцию, которая обрабатывает задачи..

функция createTask (строка памяти _content) public {

taskCount ++;

задачи [taskCount] = Задача (taskCount, _content, false)

}

Функция по большей части не требует пояснений. Мы создали функцию, чтобы она могла подсчитывать количество задач, перечисленных в Todo dApp..

Наконец, нам нужно создать конструктор для инициализации класса Todo..

constructor () public {

createTask («Это наша первая задача»)

}

Теперь наш файл todo.sol должен выглядеть так, как показано ниже..

прагма solidity ^ 0.5.0;

контракт Todo {

uint публичные задачи = 0;

struct Task {

uint id;

строковое содержимое;

bool завершено;

}

constructor () public {

createTask («Это наша первая задача»)

}

отображение (uint => Задача) публичные задачи;

функция createTask (строка памяти _content) public {

taskCount ++;

задачи [taskCount] = Задача (taskCount, _content, false)

}

}

Создать задачи

Мы также можем создавать задачи в нашем Todo dApp. Для этого нам нужно создать триггер при создании новой задачи. Наш подход состоит в том, чтобы создать новое событие TaskCreated, а затем добавить его в нашу существующую функцию createTask ()..

событие TaskCreated (

uint id;

строковое содержимое,

bool завершено

);

Теперь добавьте следующую строку в функцию createTask ().

испустить TaskCreated (taskCount, _content, false);

Завершение задач

Завершающие задачи также можно добавить с помощью события. Вам необходимо добавить следующее событие в контракт Todo.

событие TaskCompleted (

uint id,

bool завершено

);

Чтобы он заработал, вам также нужно добавить новую функцию.

function toggleCompleted (uint _id) public {

Память задач _task = tasks [_id];

_task.completed =! _task.completed;

задачи [_id] = _task;

испустить TaskCompleted (_id, _task.completed)

}

Поздравляю! Вы создали свое первое приложение со списком Todo на блокчейне Ethereum..

Конечная записка

Это также подводит нас к концу нашего руководства по созданию блокчейн-приложения. Вот как вы создаете приложение для сборки блокчейна с нуля.

Оттуда вам нужно правильно протестировать контракт, прежде чем вы окончательно перенесете его в блокчейн. Вы также можете создать интерфейс приложения и протестировать его. Если вас это не интересует, вы можете запустить консоль и получить доступ к переменным и функциям, чтобы все проверить.!

Но если вы все еще не осведомлены о последствиях использования блокчейна, мы настоятельно рекомендуем вам начать наш бесплатный курс по блокчейну, чтобы узнать о нем больше. Без изучения или понимания того, как это работает, вам будет очень сложно понять концепцию программирования..

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Adblock
detector