Solidity

Wikipediasta
Tämä on arkistoitu versio sivusta sellaisena, kuin se oli 2. huhtikuuta 2021 kello 12.44 käyttäjän Juha Kämäräinen (keskustelu | muokkaukset) muokkauksen jälkeen. Sivu saattaa erota merkittävästi tuoreimmasta versiosta.
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)
Siirry navigaatioon Siirry hakuun

Solidity on oliosuuntautunut ohjelmointikieli, jota käytetään älysopimus-nimellä (engl. smart contract) tunnettujen protokollien ohjelmointiin eri lohkoketjualustoilla, erityisesti Ethereumilla. Sen kehittivät Gavin Wood, Christian Reitwiessner ja Alex Beregszaszi yhdessä useiden muiden Ethereumin ytimen ohjelmoijien kanssa.

Solidity on staattisesti tyypitetty kieli ja toimii Ethereum Virtual Machine -ympäristössä. Sen syntaksi perustuu EcmaScript-kieleen ja edelleen JavaScriptiin.[1] Se on saanut vaikutteita myös C++:sta ja Pythonista.[2]

Koodiesimerkki

[muokkaa | muokkaa wikitekstiä]
pragma solidity >= 0.7.0 <0.8.0;

contract Coin {
    // The keyword "public" makes variables
    // accessible from other contracts
    address public minter;
    mapping (address => uint) public balances;

    // Events allow clients to react to specific
    // contract changes you declare
    event Sent (address from, address to, uint amount);

    // Constructor code is only run when the contract
    // is created
    constructor() public {
        minter = msg.sender;
    }

    // Sends an amount of newly created coins to an address
    // Can only be called by the contract creator
    function mint(address receiver, uint amount) public {
        require(msg.sender == minter);
        require(amount < 1e60);
        balances[receiver] += amount;
    }

    // Sends an amount of existing coins
    // from any caller to an address
    function send(address receiver, uint amount) public {
        require(amount <= balances[msg.sender], "Insufficient balance.");
        balances[msg.sender] -= amount;
        balances[receiver] += amount;
        emit Sent (msg.sender, receiver, amount);
    }
}
  • Jaggi, Harish & Jha, Raj: Rendezvous with Practical Solidity: A Complete Hands On Book. Notion Press, 2020. (englanniksi)
  • Solidity v0.8.3. Viitattu 23.3.2021.
  1. Jaggi, Harish & Jha, Raj: Rendezvous with Practical Solidity: A Complete Hands On Book. Notion Press, 2020. (englanniksi)
  2. Solidity v0.8.3. Viitattu 23.3.2021.
Käännös suomeksi
Käännös suomeksi
Tämä artikkeli tai sen osa on käännetty tai siihen on haettu tietoja muunkielisen Wikipedian artikkelista.
Alkuperäinen artikkeli: en:Solidity
Tämä ohjelmistoon liittyvä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.