Akıllı Kontrat Dilleri

Aybars Dorman 🏴‍☠️
BlockchainIST Center
2 min readNov 25, 2020
Akıllı Kontratlar

Akıllı Kontratlar

Ethereum’un en iyi özelliklerinden biri, akıllı kontratların yazılım geliştirici dostu diller kullanılarak programlanabilmesidir. Eğer daha önceden Python veya JavaScript konusunda deneyim sahibiyseniz, Ethereum programlama sürecinde tanıdık sözdizimlerine sahip bir dil bulabilirsiniz.

Ethereum platformunda akıllı kontrat geliştirmek için güncel olarak aktif şekilde kullanılan iki dil şunlardır:

  • Solidity
  • Vyper

Akıllı kontratları geliştirme sürecindeki ön koşullar:

  • Diğer programlama dilleri, özellikle JavaScript veya Python bilgisi akıllı sözleşme dillerindeki farklılıkları anlamınızda sizlere yardımcı olabilir.
  • Dil karşılaştırmalarını incelemeden önce akıllı sözleşmeleri bir kavram olarak anlamak faydalı olacaktır.

- Bunun için Ethereum.org sitesindeki “Intro to Smart Contracts” bölümünü ziyaret edebilirsiniz.

Solidity

• C++, Python ve JavaScript’ten etkilenilerek oluşturulmuştur.

• Statik tipli olarak inşa edildiği için bir değişkenin türü kod derlenileceği zaman bilinir.

Solidity aşağıdakileri desteklemektedir:

• Inheritance (diğer sözleşmeler arasında özellikler miras alınabilir)

  • Kütüphaneler (farklı sözleşmelerden çağırabileceğiniz yeniden kullanılabilir kodlar oluşturabilirsiniz — diğer nesne yönelimli programlama dillerindeki statik sınıftaki statik işlevler gibi)

Akıllı Kontrat Örneği

// Bu örnek size Solidity sözdiziminin neye benzediğine dair bir fikir verecektir. Fonksiyonların ve değişkenlerin daha ayrıntılı açıklamaları için: dökümantasyona bakınız.pragma solidity >=0.4.22 <0.7.0;//solidity’nin versiyon tanımlamasıcontract Ilk{//contract   tanımladığımız yer/class ile aynı mantık, her contract bir classdır// Her kod   parçası belli bir miktarda gas harcıyor ve bu gaslar ödenekleri madencilere   veriliyor “yani ne kadar temiz kod o kadar az para”string   public mesaj = "Merhaba Dünya";//örnek   bir get set methodu// SET   ifadesi nesnenin özelliklerine değer atandığında çalışır.// GET ifadesi ise özellik   değeri okunduğunda// ya da farklı bir ifadeye aktarılmaya çalıştığında çalışır.function   getMessage() public  view  returns(string memory) {return   mesaj;}function   setMessage(string memory _mesaj) public {mesaj   = _mesaj; }}

Bizi Takip Edin

Web Sitemiz

Twitter

LinkedIn

Instagram

YouTube

Telegram

--

--