DAML oktatóanyag: A DAML használatának megkezdése

DAML oktatóanyagot keres? Ha mégis, akkor jó helyre került. Ebben a cikkben egy megfelelő DAML blokklánc oktatóprogramot fogunk készíteni.

Az oktatóanyag megismeri a DAML alapvető ismereteit, annak szükségességét, és kódpéldákat tartalmaz, amelyek értelmesebbé teszik. Ha Ön kezdő, megtalálja a bemutatót a DAML használatának megkezdéséhez. Röviden, ez egy tökéletes DAML oktató a kezdők számára. Ez azonban nem egy teljes DAML fejlesztési oktatóanyag, mivel nem fogunk komplett alkalmazást építeni az oktatóanyagban, mivel az meghaladja a cikk kereteit..

DAML oktatóanyag: A DAML használatának megkezdése

DAML bemutató

Szóval, mi a DAML? Fedezzük fel.

Szüksége van egy blockchain frissítésre? A kezdéshez olvassa el a Blockchain kezdőknek útmutatót! Ezenkívül olvassa el a DAML végső útmutatóját.

Mi a DAML?

A DAML egy nyílt forráskódú programozási nyelv az elosztott alkalmazások fejlesztéséhez. Ez lehetővé teszi a fejlesztők számára, hogy tömören, gyorsan és helyesen hozzák létre ezeket az elosztott alkalmazásokat.

A Hyperledger fenntartja a DAML-t és ökoszisztémájának részévé tette. Ezzel a DAML is az egyik programozási nyelv, amely a vezető blokklánc platformok tetején fut. Igen, több platform is elfogadja. Emellett megkönnyíti a fejlesztők számára az alkalmazás gyors fejlesztését, majd annak eldöntését, hogy hova akarják telepíteni.

Mitől olyan különleges a DAML?

A DAML egy programozási nyelv az elosztott nyelvek felépítéséhez. Mivel egyre több vállalat érti az elosztott alkalmazások fontosságát, a DAML eszközt kínál ezeknek a vállalatoknak és fejlesztőiknek céljaik eléréséhez. Valójában ez egyike azoknak a csodálatos eszközöknek, amelyek lehetővé teszik az elosztott alkalmazás irányítását.

A DAML frontálisan kezeli a nehéz tervezési problémákat, mivel megoldást kínál olyan összetett problémákra, mint az elosztott állapotú szinkronizálás és a kriptográfia. A cél elérése érdekében átalakítják.

Az alapul szolgáló terv vagy megvalósítás elvonatkozik, amikor egy fejlesztő megírja a blockchain alkalmazását. Lehetővé teszi a fejlesztő számára, hogy az elvont követelményekre összpontosítson, és a DAML-t elbírja az összes nehéz munkával. Annak tudatában, hogy a DAML különleges, jobban értékelheti a DAML megtanulását a DAML bemutatónk segítségével.


DAML funkciók

A DAML oktatóanyagunk ezen szakaszában megismerhetjük a DAML legfontosabb jellemzőit.

Adatmodell: A DAML lehetővé teszi a fejlesztők számára, hogy komplex adatsémákat hozzanak létre alkalmazásukhoz. Ez megkönnyíti az összetett követelmények vagy üzleti folyamatok tervezését és megvalósítását.

Részletes engedélyek: A DAML-szerződések finomhangolódnak az engedélyek beállításához. Ez azt jelenti, hogy a fejlesztők beállíthatják, ki írhatja alá a szerződést, ki láthatja és milyen feltételek mellett.

Üzleti logika: Az üzleti logika is könnyedén integrálható. A fejlesztő olyan műveleteket írhat, amelyek szükségesek a szerződéshez, annak állításaihoz, paramétereihez és egyebekhez!

Forgatókönyv-alapú tesztelés: A DAML segítségével forgatókönyv-alapú tesztelés is lehetséges. Ez lehetővé teszi a fejlesztő számára, hogy tesztelje az üzleti logikát és a decentralizált alkalmazások egyéb aspektusait, például a munkafolyamatokat.

Futásidejű szolgáltatások

A fenti négy alapvető tulajdonság mellett a DAML Runtime is rendelkezésre áll. A futásidő az alkalmazás által a végrehajtás során létrehozott környezetre vonatkozik. Ebben az állapotban vannak olyan főbb jellemzők, amelyek a programot hatékonyan és eredményesen futtatják. Ha megismeri őket a DAML oktatóanyagban, megszilárdíthatja DAML tanulását.

Beszéljünk róluk alább.

Tárolási absztrakció → A tároló absztrakció olyan perzisztens réteget kínál, amely biztosítja, hogy az összes DAML program tároló-agnosztikus legyen. Egyszerűbben fogalmazva: a DAML programok nem a választott tárhelytől függenek, mivel képesek átalakítani az említett adatokat emészthető formátumba.

tárolás-absztrakció

Engedélyezési ellenőrzések → Az engedély ellenőrzi a szerződésen belüli összes műveletet. Ha a művelet nem felel meg a megfelelő engedélynek, akkor azt nem lehet végrehajtani.

daml-bemutató-engedély-ellenőrzések

A szerződés ekkor futási hibát vet fel, és erről tájékoztatja a vevőt vagy a fejlesztőt.

daml-tutorial-error.

Az elszámoltathatóság követése → A futásideje felelős az elszámoltathatóság követéséért is. Biztosítja, hogy a felek önként kötjék meg a megállapodást. Ennek megvalósításához aláírók aláírására volt szükség. Ennek célja, hogy megvédje a vevőt a szervező vagy az eladó bármilyen erőszakos viselkedésétől.

Atomi összetételesség → A DAML támogatja az atomtervezést. Ez azt jelenti, hogy az összes műveletet atomszerűen hajtják végre, és ezért akár el is hajthatók, akár nem. A szerződések végrehajtásában nincs középút. Ez a munkafolyamat biztonságának biztosítása és a kizsákmányolók távol tartása érdekében történik.

Nincs kettős kiadás → A DAML futási idejével a szerződések célja annak biztosítása, hogy ne lehessen kettős kiadás. Ez azt jelenti, hogy ugyanazt a szerződést nem lehet kétszer teljesíteni.

Tudnivalók az adatvédelemről → A DAML altranzakciós szintet kínál, amely jóváhagyás után elérhetővé teszi az információkat.

Determinisztikus végrehajtás → Végül a futásideje támogatja a determinisztikus végrehajtást. Ez azt jelenti, hogy bármely művelet hatása a főkönyv jelenlegi állapotától függ.

A DAML használatának megkezdése

A DAML oktatóanyagunk ezen szakaszában megvizsgáljuk a DAML blokklánc oktatóanyag kezdő lépéseit. A DAML használata előtt telepítenie kell.

A DAML használatához két lépésből kell állnia.

1) A függőségek telepítése

A DAML használatához először telepítenie kell a függőségeket. Ehhez le kell töltenie az SDK-t és telepítenie kell az operációs rendszerre.

Ettől eltekintve a legjobb lenne, ha a következők is lennének

  • Visual Studio Code vagy bármilyen kompatibilis integrált fejlesztői környezet
  • JDK 8 vagy újabb.

2) SDK telepítés

Ha Windows rendszert használ, akkor lépjen a link, és töltse le a futtatható fájlt.

Linux vagy MAC esetén a következő parancsot kell futtatnia a curl használatával.

göndör –sSL https://get.daml.com/ | SH

Megkéri, hogy adja hozzá a ~ / .daml / bin fájlt a PATH változóhoz. Miután elkészült, készen áll a DAML használatára.

DAML bemutató útmutató kezdőknek

Soha nem dolgozott még a DAML-lel? Ezután ne aggódjon, mint ebben a részben, át fogjuk járni a DAML alapjait, az adattípusokat, a sablonokat, a funkciókat, a kifejezéseket és így tovább!

Mielőtt azonban megtennénk, meg kell értenünk a (digitális eszköz) DA Ledger modellt. A DAML bemutatónk fontos része.

DA Ledger Model

A DA Ledger Model a DAML középpontjában áll. Többpartneres munkafolyamatokat kínál egy virtuális megosztott főkönyv segítségével. A jobb ötlet érdekében ellenőrizheti az alábbi képernyőképet.

DAML-Tutorial-Ledger-Model

Forrás: DAML dokumentáció

A modell meghatározása, a DA főkönyveinek felépítése (mi), integritási modellje (aki kérheti) és az adatvédelmi modellje (ki láthatja).

A DA Ledger Model részletesebb megismerése érdekében olvassa el a hivatalos dokumentációt itt.

Alapszerződések

A DAML középpontjában talál egy DAML főkönyvet. Kis sablonon megyünk keresztül, mivel ez segít megérteni az alapvető fogalmakat, ideértve a tranzakciókat, a sablonszerződéseket, az aláírókat, a DAML modulokat és a fájlokat.

Vállalások

A DAML Ledger tartalmaz egy „commits” listát. Egyszerűbben fogalmazva: a kötelezettségvállalás egy beküldött tranzakció a főkönyv számára. A szerződéstől fogva úgy tekinthet rá, mint egy aktív tranzakcióra, amelyet végre kell hajtani, és végrehajtása a szerződés tulajdonságaitól és feltételeitől függ.

DAML modulok és fájlok

Mielőtt elkezdené, meg kell említenie a DAML verziót. Meg lehet tenni a DAML fájl tetején. A verzió értesíti a fordítót arról, hogy a nyelv melyik verzióját használja.

rohadtul1.2

A modul importálásához a „module” kulcsszót kell használnia.

moduleTokenwhere

Hozzászólások

Ha megjegyzéseket szeretne hozzáadni, megteheti a „-” kulcsszóval.

– Ez egy megjegyzés

Sablonok

A szerződés típusának meghatározásához sablont használnak. Ez meghatározza azokat az entitásokat, amelyek hozzáférhetnek a szerződés végrehajtásához. A szerződéseket sablonpéldányoknak tekintheti.

sablon Token

val vel

tulajdonos: Párt

hol

aláíró tulajdonos

Mint láthatja, a „sablon” kulcsszóval meghatároztunk egy Token sablont. Ehhez érv is kell. Még egy dolog, amit tudomásul vehet, az, hogy a szóköz térközpontú. Ha korábban használta a Pythont, meg fogja érteni a kód felépítését és célját.

Végül láthatja az aláíró kulcsszót, amely a szerződéses példányokat aláírókat jelöli. Ezeknek a feleknek a felhatalmazása szükséges a szerződéssel kapcsolatos intézkedések végrehajtására, ideértve az archiválást és a létrehozását is.

A forgatókönyvek megértése sablonok segítségével

Most, hogy megértettük a sablon alapstruktúráját, a DAML oktatóanyag két másik sablonjának használatával megértjük a forgatókönyveket. Mielőtt azonban megtennénk, értsük meg, mi is pontosan aforgatókönyv.

Forgatókönyv

A forgatókönyv a tesztreceptként írható le legjobban, amelynek segítségével ellenőrizhető, hogy a sablonok megfelelően viselkednek-e. Használható tranzakciós tesztek elvégzésére. Vessünk egy pillantást az alábbi példára.

token_test_one = forgatókönyv

sam <- getParty „sam”

benyújtani sam do

Token létrehozása a tulajdonos = sam névvel

A fenti az az alapforgatókönyv, amely a tokennel foglalkozik egy „sam” néven ismert párt számára.

A forgatókönyv futtatásához a DAML stúdiót kell használnia.

Ha többet szeretne megtudni a forgatókönyvről, javasoljuk, hogy nézze meg a forgatókönyv dokumentációs oldal itt.

Adattípus

Mint minden programozási nyelv, a DAML is támogatja az adattípusokat. Az adattípusok segítségével meghatározhat egy változót, és adatokat tárolhat ott.

Az egyszerűbbé tétele érdekében gondoljunk a sablonokra, mint adatbázis táblákra. Most elmentheti az adatokat a sablonba, és könnyebben kezelheti őket a sablon tervezésével.

Sok natív adattípus létezik, amelybe a DAML belép. A következőket tartalmazza.

  • Fél → Az entitás azonosságának tárolása. A felek tranzakciókat nyújthatnak be és szerződéseket köthetnek.
  • Szöveg → Unicode karakter tárolása
  • Az Int → 64 bites egész számokat tárol
  • Decime → fixpontos számokat tárol
  • Dátum → tárol egy dátumot
  • Idő → UTC-ben tárolja az időt
  • RelTime → Tárolja az időeltolódást
  • ContractId → hivatkozás a szerződés típusára

Az alábbiakban bemutatjuk a natív típusok megértéséhez szükséges kódot.

native_test = forgatókönyv

Sam <- getParty “Sam”

Mysterio <- getParty „Mysterio”

hadd

my_int = –657

my_dec = 0.001: Tizedes

my_text = “Sam”

my_bool = Hamis

állít (Sam / = Mysterio)

állít (-my_int == 123)

állítás (1000,0 * saját_dec == 1,0)

állítás (my_text == “Sam”)

A DAML más adattípusokat is támogat, beleértve a bélyegzőket, listákat és rekordokat.

A DAML adattípusainak megismeréséhez nézze meg azok dokumentációs oldalát itt.

Adatok átalakítása választási lehetőségekkel

A DAML támogatja a változtathatatlanságot. Ez azt jelenti, amikor szükség van adatok frissítésére; új szerződést kell létrehozni az új adatokkal. Ez azonban nem mindig így van, mivel mindig van valami nagyon apró változtatni és módosítani. Például egy vállalat módosíthatja telefonszámát, hogy ezt megtehesse választások.

Vessünk egy pillantást a DAML dokumentációjába.

sablon Kapcsolat

val vel

tulajdonos: Párt

buli buli

cím: Szöveg

telefon: Szöveg

hol

aláíró tulajdonos

vezérlő tulajdonos tudja

UpdateTelephone

: ContractIdContact

val vel

newTelefon: Szöveg

csináld

ezt hozza létre

telefon = újTelefon

A kód nagy része fentebb magától értetődő. Az egyetlen dolog, amit tudnia kell, hogy meghatároztuk az „UpdateTelephone” néven ismert választást.

A választási lehetőségek küldöttségként is használhatók. Végül integrálhatók a Főkönyv modellbe is.

Ha többet szeretne megtudni a DAML-választásokról, keresse fel a hivatalos dokumentáció oldalt itt.

Megkötések hozzáadása a szerződéshez

Megkötéseket is hozzáadhat a DAML-szerződéshez az „užtikrinti” kulcsszóval. Használhatja a másik mechanizmust is, amely az érvényesítés, a megszakítás és a hibakulcsszó felhasználásával korlátozásokat ad a szerződéshez.

De mielőtt ezt megtenné, megfelelő sablonfeltételeket kell előírnia a szerződésében.

Ha többet szeretne megtudni a korlátozásokról, ellenőrizze a dokumentációt itt.

Felek és hatóság

A DAML megfelelő módon képes kezelni a feleket, és felhatalmazza őket a szerződéshez való hozzáférésre. Használhatja őket nemcsak a jogosultság átadására, hanem speciális választási lehetőségeket is írhat, amelyek megváltoztathatják a főkönyv működését. Ez a rugalmasság fontos, mivel elegendő eszközt ad a feleknek a dolgok megváltoztatásához, és a szerződés alapgondolatát is érintetlenül tartja.

Például megakadályozhatja az IOU visszavonását, vagy jobban teheti az egyszeri engedélyezést a javaslat-elfogadás munkafolyamatok használatával. Rengeteg lehetőség áll rendelkezésre a DAML-en belül, hogy megoldást nyújtson szinte minden ottani forgatókönyvre.

További információ a pártokról és a hatóságokról itt.

Következtetés

Ez a DAML oktatóanyagunk végére vezet. Ebben az oktatóanyagban sikerült megismerkednünk a DAML-lel és annak különlegességével. Megismertük a DAML belső működését és a programozási nyelv egyéb kulcsfontosságú aspektusait is, például az adattípusokat, a forgatókönyveket stb. Ezek a kulcsfontosságú fogalmak segítenek abban, hogy bekapcsolódjon a DAML projektekbe, amelyeket a jövőben fog megvalósítani.

Szóval, mit gondol a DAML-ről? Gondolod, hogy mindenütt jelen lévő programozási nyelvvé válhat decentralizált alkalmazások létrehozása érdekében? Hozzászólás az alábbiakban, és tudassa velünk.

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