Mi a szoliditás és hogyan használható intelligens szerződések kidolgozására?

Mi a szoliditás és hogyan használható intelligens szerződések kidolgozására?

A Solidity hosszú utat tett meg, mióta először 2014 -ben javasolták, majd később az Ethereum Solidity csapata fejlesztette ki. Több százezer fejlesztő használja a programozási nyelvet blokklánc-alapú szolgáltatások létrehozására egyre több használati esetre.





Ez a cikk elmagyarázza, hogy mi a Solidity és hogyan használható az Ethereum ökoszisztémában. Ez a cikk az Ön számára készült, ha többet szeretne megtudni a blokklánc-alapú programozási nyelv belső működéséről.





a legjobb ingyenes vpn kiterjesztés a chrome 2018 -hoz

Mi az a szilárdság?

A Solidity egy objektum-orientált, magas szintű programozási nyelv, amelyet intelligens szerződések létrehozására használnak, amelyek automatizálják a blokklánc tranzakcióit. A 2014 -es javaslat után a nyelvet az Ethereum projekt munkatársai fejlesztették ki. A nyelvet elsősorban intelligens szerződések létrehozására használják az Ethereum blokkláncon, és intelligens szerződések létrehozására más blokkláncokon.





A szilárdság hasonló az egyik leggyakoribb programozási nyelvhez, a JavaScripthez. A JavaScript nyelvjárásának tekinthető. Ez azt jelenti, hogy ha érti a JavaScriptet, könnyen felvehető a Solidity. A Solidity hasonló tulajdonságokkal rendelkezik a C ++ és a Python programozási nyelvekhez is.

Magas szintű nyelvként a Solidity megszünteti annak szükségességét, hogy egyesével és nullával írja be a kódot. Sokkal könnyebbé teszi az emberek számára, hogy betűket és számokat kombinálva írhassanak programokat a könnyebben érthető módon.



A szilárdság statikusan gépelt, támogatja az öröklődést, a könyvtárakat és a felhasználó által definiált összetett típusokat. Mivel a Szilárdság statikusan van beírva, a felhasználó sok minden változót megad. Az adattípusok lehetővé teszik a fordító számára, hogy ellenőrizze a változók helyes használatát. A szilárdsági adattípusokat általában értéktípusokként vagy referencia típusokként osztályozzák.

Az értéktípusok és a referenciatípusok közötti fő különbség abban rejlik, hogy hogyan rendelhetők hozzá egy változóhoz, és hogyan tárolódnak az EVM -ben (Ethereum Virtual Machine). Míg az érték megváltoztatása az egyik típusú változóban nem befolyásolja egy másik változó értékét, bárki, aki hivatkozik a referencia típusú változók megváltozott értékeire, frissített értékeket kaphat.





Hogyan működik a szilárdság?

Az Ethereum ökoszisztéma szépsége az, hogy sokféle kriptovaluta és decentralizált alkalmazás használhatja. Az intelligens szerződések lehetővé teszik egyedi technológiák létrehozását az Ethereumon mindenféle vállalkozás és szervezet számára.

A világ minden évben dollármilliárdokat költ blokklánc megoldásokra. E megoldások közül sokat a Solidity segítségével hoztak létre. A Solidity segítségével felépített intelligens szerződések úgy tekinthetők, mint az üzleti és nem üzleti folyamatok automatizálásának módjai a különböző emberek között. Ez biztosítja, hogy a blokkláncban tranzakciókat végző embereknek ne kelljen aggódniuk olyan kockázatok miatt, mint például a csalás vagy az, hogy nem tudják használni ugyanazt a pénznemet.





A Solidity kód végrehajtását lehetővé tevő egyik legfontosabb összetevő az EVM. Az EVM -et virtuális számítógépként írják le a blokkláncon, amely az emberek ötleteit kódokká alakítja, amelyek alkalmazásokat futtatnak a blokkláncon.

A motorháztető alatt a Solidity gépi szintű kódot hoz létre, amelyet az EVM hajt végre. Egy fordítót használnak a magas szintű ember által olvasható kód lebontására, amelyet utasításokká alakítanak, amelyeket a processzor olvas. A különböző platformok ingyenes Solidity-fordítást biztosítanak, beleértve a Remix online fordítót és a letöltött parancsszerű fordítót a PC-n.

Az EVM intelligens szerződéseknek vannak bizonyos korlátai, amelyeket kezelni kell. Ezek közül az egyik legjelentősebb a JSON-struktúrák vagy lebegőpontos aritmetika elemzésére szolgáló hasznos könyvtári funkciók korlátozott elérése.

Nyilvános és magánfunkciók

A nyilvános funkciók hasonlóak az API -khoz, amelyekhez a világon bárki hozzáférhet. Bárki felhívhatja őket a kódjukban. A nyilvános funkciókat sok esetben olyan platformokra tervezték, amelyeket minden felhasználó használ.

Például létrehozhat egy nyilvános funkciót, amely lehetővé teszi egy platform minden felhasználójának, hogy ellenőrizze számlaegyenlegét. Az intelligens szerződések kihasználásának egyik leggyakoribb módja az állami funkciók.

Kapcsolódó: Mi a blokklánc és hogyan működik?

Bár az intelligens szerződések könnyen írhatók a Solidity segítségével, gyakran nagyon nehéz biztonságosan írni őket. Például, ha az intelligens szerződésben szereplő visszavonási funkció nem biztonságos, a támadó manipulálhatja a sebezhető funkciót, hogy pénzeszközöket számoljon fel.

A támadó hívhat felvonási funkciót, hogy pénzt küldjön egy másik számlára, egy ciklus segítségével, amely többször megismétli a visszavonási funkciót.

A magánfunkciók csak a szerződéseken belül hívhatók le. Olyan utasításokat tartalmaznak, amelyeket csak akkor lehet végrehajtani, ha más funkciók hívják őket, egy láncban. Ez megnehezíti, hogy a kódot rosszindulatú szereplők manipulálják.

Szabványok és kódlogika

Különböző szabványok jelennek meg, amelyek meghatározzák, hogyan használják fel a Solidity intelligens szerződéseket az Ethereumon történő alkalmazások építésére. Ezeket a szabványokat ERC (Ethereum Request for Comments) szabványoknak nevezik. A szabványok olyan dokumentumon alapulnak, amely iránymutatásokat tartalmaz a szükséges funkciókról és a kód viselkedésének korlátozásáról.

A Solidity működését meghatározó ERC -szabványok a következők:

  • ERC20
  • ERC165
  • ERC721
  • ERC223
  • ERC621
  • ERC777
  • ERC827
  • ERC884
  • ERC865
  • ERC1155

A Solidity különböző módon használható az intelligens szerződések kölcsönhatásba hozására egymással. A szilárdság felhasználható arra is, hogy külön utasításokat készítsen az adatok intelligens szerződésben való tárolásának módjáról. Az intelligens szerződések logikája és adatai elválaszthatók a Solidity használatával. A helyettesítő szerződések alkalmazásával a szerződés logikája megváltoztatható, hogy ezt lehetővé tegye.

Állandóság

Lehetetlen megváltoztatni az intelligens szerződés kódját, miután azt megírták és összeállították. Ez azt jelenti, hogy minden kódsornak a rendeltetésének megfelelően kell működnie, különben komoly kockázatot jelenthet a kód kihasználása.

Kapcsolódó: Hogyan válhat blokklánc programozóvá, és hogyan kezdhet nagy pénzt

Mivel az Ethereum blokklánc megváltoztathatatlan, lehetetlen megváltoztatni a hozzá írt adatokat és logikát. Ennek kiküszöbölésének módja az, ha egy proxy segítségével egy másik szerződésre mutat, amely tényleges üzleti logikát tartalmaz. Ez lehetővé teszi a hibák kijavítását a szerződés új verziójának megvalósítása közben.

hogyan kell belépni a bios windows 10 -be

Gázköltségek

Az Ethereum mainneten a Solidity használatáért többletköltséget kell fizetni. A többletköltségek egy része az Ethereum gázrendszerén alapul, amiért fizetni kell a bányászoknak a blokklánc -hálózat biztosításáért, hogy a kód biztonságosan fusson rajta.

Az intelligens szerződések írásakor fontos megjegyezni, hogy a gázköltségek meghatározhatják, hogy mennyire teljesít az intelligens szerződés. Mivel a gázdíjat minden használt tárolóhelyért fizetik, a Solidity kóddal végrehajtott műveletek gázba kerülnek. Egy okos szerződést, amelyet drága lebonyolítani, hosszú távon nem valószínű, hogy alkalmazni fogják.

A gázoptimalizálás segít csökkenteni a gázköltséget a Solidity kód végrehajtásakor. A gázoptimalizálás legnépszerűbb módszerei közé tartozik a könyvtárak használata és a kevesebb funkció használata. A könyvtárakat gyakran használják bájtkód mentésére.

Ahelyett, hogy felesleges bájtkódot adna az intelligens szerződéshez, a logikát a könyvtárakba lehet helyezni. Ez segít kicsiben tartani az intelligens szerződés méretét. Kevesebb funkció használatával kevesebb bájtkódra van szükség, és a kód ellenőrzésének nehézsége is csökken.

Hogyan használható a szilárdság az Ethereumban?

A szilárdságot intelligens szerződések létrehozására használják a cserélhető és nem helyettesíthető tokenekre. Különböző szabványokat alkalmaznak nem cserélhető és cserélhető tokenek építésére az Ethereum ökoszisztémában.

Ezek lehetővé teszik különböző típusú használati esetek létrehozását a blokkláncot használók számára. A szilárdság lehetővé teszi, hogy az emberek tokeneket és nem cserélhető tokeneket használhassanak az Ethereumon. Az Ethereum lehetővé teszi a tokenek különböző felhasználási lehetőségeit, a nem cserélhető zsetonok verésétől kezdve a hozzáadott mezőgazdasági készletek eléréséig.

A decentralizált autonóm szervezeteket (DAO) a Solidity is lehetővé teszi. A DAO, amely egy új típusú online szervezeti struktúra, elsősorban a Solidity nyelven íródott. A DAO -k lehetővé teszik, hogy különböző emberek tagként gyűljenek össze egy online platformon, ahol szavaznak a DAO legfontosabb döntéseiről.

A szilárdság lehetővé teszi a DAO -n belüli folyamatok automatizálását. Példák a folyamat automatizálására a DAO -kban: szavazatok leadása a kulcsfontosságú döntésekért, valamint a jó hírnév kiosztása a DAO tagjainak a csoporthoz való hozzájárulásukért.

A blokkláncok szabványainak meghatározása

A szilárdság sokkal több, mint egy programozási nyelv. Ez határozza meg a blokklánc -technológia jövőjének szabványait.

A Solidity biztonságának és teljesítményének javításán dolgozó nyílt forráskódú fejlesztők számának köszönhetően az Ethereum ökoszisztéma több ezer alkalmazása függ attól, hogy alkalmazásai működjenek. Ahogy új szabványokat hoznak létre az intelligens szerződésekhez az Ethereumban, a nyelv biztonságosabb lesz.

Részvény Részvény Csipog Email Valóban decentralizált internet lehetséges? Hogyan működhet a blokklánccal

Lehetséges valóban decentralizált internet? Mit jelent a decentralizáció, és hogyan tartana biztonságban?

Olvassa tovább
Kapcsolódó témák
  • Technológia magyarázata
  • Programozás
  • Ethereum
  • Blockchain
A szerzőről Calvin Ebun-Amu(48 cikk megjelent)

Calvin a MakeUseOf írója. Amikor nem nézi Ricket és Mortyt vagy kedvenc sportcsapatait, Calvin az induló vállalkozásokról, a blokkláncról, a kiberbiztonságról és a technológia más területeiről ír.

Továbbiak Calvin Ebun-Amu-tól

Iratkozzon fel hírlevelünkre

Csatlakozz hírlevelünkhöz, ahol technikai tippeket, értékeléseket, ingyenes e -könyveket és exkluzív ajánlatokat találsz!

Feliratkozáshoz kattintson ide