Как да изградим блокчейн приложение

Търсите ли ръководство, където можете да научите как да изградите блокчейн приложение? Ето ръководство, което може да ви помогне да създадете блокчейн приложение от нулата.

В тази статия ще изграждаме нашето блокчейн приложение. Наскоро разгледахме как да изградим блокчейн. Това беше пълно ръководство за изграждане на блокчейн в езика за програмиране Python. Основният фокус на урока е да научите за технологията на блокчейн и нейната вътрешна работа.

Този урок обаче е за това как да създадете приложение, използвайки блокчейн. Децентрализираното приложение (dApp) ще може да се възползва от свойствата на блокчейна.

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

И така, нека да започнем с нашия урок „Как да изградим приложение за блокчейн“. Този урок е насочен и към онези, които искат да създадат просто приложение за блокчейн. За да създадем просто приложение за блокчейн, ще използваме мрежата Ethereum.

Но преди да започнем, нека да разберем нашите основи.

Запиши се сега: Курс за основи на Enterprise Blockchains

Contents

Какво е dApp?

Първата стъпка, която ще предприемем в това как да създадем урок за приложение на блокчейн, е първо да научим концепцията за децентрализираното приложение (dApp).

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

Всички тези характеристики правят децентрализираните приложения много полезни в настоящата корпоративна среда. Приложенията също могат да използват токени, които могат да се използват, за да се възползват от функциите, предлагани от приложението. Освен това приложението може също да разпространява маркери, за да стимулира възлите, които участват в превръщането на dApp в функционален.

Избор на платформа – защо избираме платформата Ethereum

В момента има много платформи, които можете да изберете за изграждане на вашия dApp. Те включват популярни блокчейн платформи като Ethereum, Hyperledger Fabric и Cardano. От всичко това Ethereum изглежда най-добрият избор заради активната общност, инструменти и уроци, достъпни онлайн.


Друга причина, поради която избираме Ethereum, е, че той използва Solidity. Солидността е изрично направена за разполагане и създаване на dApps и интелигентни договори. Лесно е да се научите и ви дава гъвкавост да експериментирате.

Практическо ръководство за изграждане на децентрализирано приложение Blockchain

Как да изградим блокчейн приложение

Преди да отидем и да се потопим дълбоко в кода, бих искал да изброя стъпките, които очертават процеса на изграждане на блокчейн приложение. Нека да го разгледаме по-долу.

Намерете идея

Първата стъпка е да се намери идея, върху която да се работи. Децентрализацията е страхотна нова концепция, която може да има много случаи на употреба. Като обучаван или инженер, трябва да излезете с полезна идея, която може да бъде от полза за вас или вашата компания. Също така, не се притеснявайте, ако не можете да дойдете с идея, която променя пейзажа. Добре е да изграждате прости dApps само в името на обучението и практиката.

Можете също така да търсите проблеми, с които се сблъсквате с блокчейн, и може би да се опитате да ги разрешите по най-добрия начин. Въпросът тук е да разгледате проблема от вашата болка и след това да се опитате да го разрешите.

Ако се опитвате да създадете dApp за вашия бизнес или според бизнес изискванията ви, тогава трябва да направите подходящ анализ на разходите и ползите. Също така трябва да проучите рисковете, свързани с проекта, и да видите дали вашият бизнес екип може да управлява приложението с необходимата грижа.

При никакви обстоятелства не бива да вземате прибързано решение, за което ще съжалявате по-късно. Това е така, защото разработването на блокчейн е скъпо, особено когато става въпрос за намиране на талант за неговото развитие и управление. На всичкото отгоре има недостиг на разработчици, които работят върху блокчейна. Накратко, трябва да предприемете правилни стъпки, когато става въпрос за разработване на блокчейн или блокчейн приложения.

Ето ръководство за разработка на dApps, което може да разбере механизмите зад създаването на ново децентрализирано приложение.

Изберете метод на консенсус

Всяко децентрализирано приложение изисква подходящ консенсус алгоритъм, за да работи. Той гарантира, че транзакциите са валидирани и не могат да се извършват измами. Като разработчик или обучаван трябва да изберете от някой от наличните методи за консенсус, включително доказателство за залог, делегирано доказателство за залог, византийски толерантност към грешки и т.н.! Изборът трябва да зависи от вашето познаване и изискванията на приложението.

Избор на платформа

Тук трябва да изберете платформа по ваш избор. Ясно е, че вече разгледахме горната точка. Имате предимно три платформи за избор, включително Ethereum, Hyperledger Fabric и Cardano.

Има много корпоративни блокчейн рамки, които можете да използвате за това, но ние ще отидем с Ethereum.

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

Приложенията трябва да имат подходящо потребителско изживяване. Ето защо трябва да създадете блокчейн приложение с добър потребителски интерфейс. Приложението също трябва да има администраторска конзола, за да можете да го управлявате без проблеми.

Разбиране на принципите на блокчейн

Обичайно е разработчиците да стартират урок за разработка на блокчейн приложения, без да разбират основните концепции и принципи. Ето защо препоръчвам основите на блокчейн изцяло, преди да започнете с уроци за разработка на приложения. Може да искате да прочетете за нейната екосистема, включително инструменти за блокчейн, платформи и криптовалути.

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

Упражнявайте уменията си, доколкото можете. Това ще ви даде уменията за разработване на по-сложни приложения в бъдеще.

Как да изградим Blockchain App? Лесният подход

Да, добре сте го прочели. В този раздел фокусът ни ще бъде да създадем просто приложение за блокчейн само с пет прости стъпки. Ако никога не сте изграждали блокчейн приложение, тогава тези пет стъпки ще ви помогнат да разберете по-добре процеса.

Петте стъпки са както следва.

  • Инсталирайте зависимости и клонирайте хранилища.
  • Работещ Ganache CLI
  • Съставяне на договори
  • Разполагане на договори
  • Договорно взаимодействие

И това е всичко. Можете да намерите по-подробни стъпки на самата публикация. Това е просто приложение за гласуване на блокчейн.

Как да изградим Blockchain App? Твърдият подход

Добре! Хвана ме! Вие не искате лесния начин, но искате да научите блокчейн по трудния начин. Не се притеснявайте, тъй като в този раздел ще създадем приложение за списък със задачи, използвайки интелигентни договори Ethereum.

Работа на приложението на блокчейн

Преди да се потопим дълбоко в създаването на блокчейн приложение, нека се опитаме да разберем как първоначално ще работи блокчейн приложението.

За да разберем това, нека да разгледаме как работи едно просто приложение. Всяко приложение, което работи в интернет, се изобразява на компютъра на потребителя с помощта на браузър или специално приложение на Windows. Във всеки случай той изисква от сървъра страниците или информацията, които след това се извеждат на компютъра на потребителя.

В случая с уеб приложението всичко е централизирано. Това предлага някои предимства; обаче, оставя много да се желае, що се отнася до сигурността. Блокчейн приложенията работят съвсем различно. Всичко е децентрализирано, включително кода и данните, които се съхраняват в приложението.

Интелигентни договори

Ключът тук е интелигентният договор. Интелигентен договор улеснява самото приложение. Той съдържа целия код, който кара приложението да работи. Той също така автоматизира процеса и гарантира, че той работи по предназначение. В нашия урок ще използваме интелигентни договори, за да напишем различните функционалности на списъка със задачи.

Интелигентните договори използват езика за програмиране Solidity. Подобно е на JavaScript. След като интелигентен договор е написан, неговият код става неизменим и неизменим. Можете да промените кода, докато се разгръщате. След като приложението бъде внедрено, няма да можете да промените кода. Това се прави, за да се осигури надеждност и сигурност на блокчейн приложенията. Подходът също така означава, че трябва да бъдете изключително внимателни и да направите всички тестове, преди да внедрите интелигентния договор. Също така кодовете за интелигентни договори са публични по своята същност.

Искате ли да научите как да изградите блокчейн с помощта на Python? Ето урок за изграждане на блокчейн с Python, който можете да следвате.

Създаване на нашето приложение за списъци със задачи за блокчейн

За да сте сигурни, че разбирате концепцията, първо трябва да научите как ще работи приложението Todo blockchain. Ще използваме Ethereum, за да направим приложението. Нашето приложение ще използва един възел Ethereum и ще има и приложение от страна на клиента. Ще използваме Solidity, за да напишем интелигентния договор и след това да го разгърнем.

Като разработчик трябва да използвате портфейл Ethereum – което е лесно да се направи.

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

За да създадем локална среда, ще са ни необходими множество инструменти и пакети. Да ги разгледаме един по един.

Ганаш

Ганаш е инструмент за разработка на Ethereum. Тя ви позволява да управлявате, разгръщате и разработвате приложения, интелигентни договори и тестове. Ще стартираме версията на Windows за урока. Ако имате различна операционна система, можете също да изтеглите версията за Mac или Linux. След като бъде инсталиран, трябва да можете да го използвате чрез инструмента за команден ред.

Node.js

Node.js е следващият ни инструмент, който трябва да бъде инсталиран. За да накарате частния блокчейн да работи на вашата машина, трябва да инсталирате Node Package Manager.

Веднъж инсталиран, отворете терминала си и въведете командата по-долу. Ако тече, значи сте добре да тръгнете.

$ възел -v

Портфейл MetaMask Ethereum

Тъй като ще работим върху блокчейна Ethereum, се нуждаем от портфейл, който може да работи от браузъра. Метамаска е портфейл на уеб браузър, който ви позволява да взаимодействате с блокчейна Ethereum.

Трюфелна рамка

Последният софтуер, който ще инсталираме, е Трюфелна рамка. Той предлага широк набор от инструменти, които ви позволяват да работите ефективно върху вашето dApp. Можете да използвате езика за програмиране Solidity, за да разработите интелигентен договор на Ethereum.

Някои от основните функции на трюфелната рамка включват следното

  • Правилно управление на интелигентни договори
  • Управление на мрежи
  • Автоматизирано тестване
  • Конзола за разработка
  • Script Runner
  • Внедряване и миграции
  • Развитие от страна на клиента.

За да инсталирате, трябва да използвате npm команда. Просто изпълнете следната команда в командния ред.

$ npm инсталиране -g [имейл защитен]

Как да изградим блокчейн приложение

Инсталацията ще отнеме известно време. Също така имайте предвид, че трябва да инсталирате точната версия, за да следвате урока.

Искате ли да станете експерт в професионалния блокчейн? Запишете се в нашия сертифициран корпоративен блокчейн професионален курс сега!

Създаване на проекта

Готино! Вече имаме нашата среда за разработка, готова за употреба. Сега всичко, което трябва да направим, е да създадем нашия проект. За целта трябва да създадем директорията на проекта. Нека го направим по-долу.

$ mkdir dapp-todo

$ cd dapp-todo

Създайте просто приложение за блокчейн

След като сте в папката, трябва да стартирате проекта за трюфел, като изпълните командата по-долу.

$ трюфел init

Изградете приложение, използвайки блокчейн

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

Можете ръчно да създадете файла и след това да запазите съдържанието, показано по-долу.

{

“Name”: “dapp-todo”,

“Версия”: “1.0.0”,

“Description”: “Списък със задачи, задвижван от Ethereum”,

“Main”: “truffle-config.js”,

“Директории”: {

„Тест“: „тест“

},

“Скриптове”: {

“Dev”: “олекотен сървър”,

“Test”: “echo \” Грешка: не е посочен тест \ ” && sexit 1 ″

},

„Автор“: „[имейл защитен]”,

“Лиценз”: “ISC”,

“DevDependencies”: {

“Bootstrap”: “4.1.3”,

“Chai”: “^ 4.1.2”,

“Chai-as-обещано”: “^ 7.1.1”,

“Chai-bignumber”: “^ 2.0.2”,

“Олекотен сървър”: “^ 2.3.0”,

„Nodemon“: „^ 1.17.3“,

„Трюфел“: „5.0.2“,

„Договор за трюфел“: „3.0.6“

}

}

След като приключите, сега изпълнете следната команда, за да инсталирате зависимостите.

$ npm инсталиране

Разбиране на структурата на директориите

Структурата на директорията ще изглежда по-долу.

Нека разберем всяка папка една по една.

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

Създаване на интелигентен договор

Сега е време да започнем със създаването на интелигентен договор. Нашите интелигентни договори ще се съхраняват в папката с договори. Нека създадем файл за интелигентен договор, наречен todo.sol

След като приключите, сега трябва да напишете кода, както е показано по-долу.

твърдост на прагма ^ 0,5,0;

договор Todo {

// Кодирайте тук

}

Първият ред код указва коя версия на Solidity използваме, за да напишем интелигентния договор. След това трябва да използваме ключовата дума за договор и да създадем договор за Todo. Това ще съдържа кода за интелигентния договор.

Сега, нека добавим променлива, за да видим дали всичко работи по предназначение.

твърдост на прагма ^ 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 = artefacts.require (“./ Todo.sol”);

module.exports = функция (разполагане) {

deployer.deploy (Todo)

}

Първият ред код просто създава променлива, която препраща нашия интелигентен договор. След като приключим, ние го разгръщаме.

След като приключим, сега нека изпълним командата за мигриране.

$ Трюфел мигрира

Можете също да стартирате конзолата, като използвате командата по-долу.

$ конзола за трюфели

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

След като успешно изпълнихме първия си интелигентен договор за Ethereum, сега е време да добавим функции към нашия dApp. Нашата dApp е проста. Той ще изброи задачите в нашия списък Todo. Трябва да използваме интелигентния договор, за да го осъществим.

Нека го направим по-долу.

твърдост на прагма ^ 0,5,0;

договор Todo {

uint обществени задачи = 0;

struct Задача {

uint id;

низ съдържание;

bool завършен;

}

}

Тук използвахме ключова дума struct, за да създадем нова структура Task. Използваме го, за да дефинираме структурата на нашата задача, която съдържа идентификатора, съдържанието и завършената булева стойност.

След това сега трябва да картографираме структурата на нашите задачи и да я направим публична, за да може тя да бъде достъпна от блокчейна. За целта трябва да добавим следния ред код.

Кодът за интелигентен договор сега ще изглежда по-долу.

твърдост на прагма ^ 0,5,0;

договор Todo {

uint обществени задачи = 0;

struct Задача {

uint id;

низ съдържание;

bool завършен;

}

картографиране (uint => Задача) обществени задачи;

}

И накрая, сега трябва да създадем функция, която да обработва задачите.

функция createTask (низ памет _content) public {

taskCount ++;

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

}

Функцията е обяснима в по-голямата си част. Създадохме функцията, така че да може да отчита броя на задачите, които са изброени в Todo dApp.

И накрая, трябва да създадем конструктор, който да инициализира класа Todo.

конструктор () public {

createTask („Това е първата ни задача“)

}

Нашият файл todo.sol сега трябва да изглежда както по-долу.

твърдост на прагма ^ 0,5,0;

договор Todo {

uint обществени задачи = 0;

struct Задача {

uint id;

низ съдържание;

bool завършен;

}

конструктор () public {

createTask („Това е първата ни задача“)

}

картографиране (uint => Задача) обществени задачи;

функция createTask (низ памет _content) public {

taskCount ++;

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

}

}

Създаване на задачи

Също така можем да създаваме задачи в нашия Todo dApp. За целта трябва да създадем спусък, когато се създава нова задача. Нашият подход е да създадем ново събитие TaskCreated и след това да го добавим към съществуващата ни функция createTask ().

Събитие TaskCreate (

uint id;

съдържание на низ,

bool завършен

);

Сега добавете следния ред към функцията createTask ().

излъчва TaskCreated (taskCount, _content, false);

Изпълнение на задачи

Завършването на задачи може също да бъде добавено с помощта на събитие. Трябва да добавите следното събитие към договора за Todo.

събитие TaskCompleted (

uint id,

bool завършен

);

За да работи, трябва да добавите и нова функция.

функция toggleCompleted (uint _id) public {

Памет на задачи _task = задачи [_id];

_task.completed =! _task.completed;

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

emit TaskCompleted (_id, _task.completed)

}

Поздравления! Създали сте първия си списък с приложения dApp в блокчейн Ethereum.

Крайна бележка

Това също ни води до края на нашия урок как да изградим блокчейн приложение. Ето как изграждате приложение за изграждане на блокчейн от нулата.

Оттам нататък трябва да тествате правилно договора, преди най-накрая да го мигрирате към блокчейна. Можете също да създадете предния край на приложението и да го тествате. Ако не се интересувате от това, можете да активирате конзолата и да получите достъп до променливите и функцията, за да тествате нещата!

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

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map