Blockchain Yazılımcısı Olmak (2) — Ethereum’a Giriş

Murat Celiktepe
BlockchainIST Center
3 min readMay 5, 2021

Bir önceki yazıda bu serinin amacı üzerinde durup, blockchain temellerini almak için kaynaklar paylaşmıştım. 3. konu olarak Ethereum’a girmeye başlayacağız. Her şeyin sıra ile gitmesi için lütfen önceki yazıda bulunan konuları anladığınızdan emin olun.

Şimdi ethereum bu sektörde topluluğu en büyük blockchaindir. Erken yıllarda geliştirilmesi sebebiyle de nispeten köklü bir yapıya da sahiptir. O yüzden ethereumu önce anlamak çok ama çok önemli bir rol oynuyor bu süreçte. Zaten genel olarak ethereum’un derinliklerine kadar ineceğiz.

Ethereum 2013 yılında Vitalik Buterin tarafından ortaya atılmış ve 2015 yılında ise ilk defa ürüne çıkmıştır. Bu zamana kadar çok badire atlatmış olan ethereum, günümüze kadar ayakta kalarak aslında çok önemli bir sınav vermiştir.

Ethereum bitcoin blockchaininden farklı olarak üzerinde akıllı kontrat barındıran bir ekosistem sunar. Bu akıllı kontratlar blockchaini sadece para almak ve göndermek dışında başka şekillerde ve alanlarda kullanabileceğimizi gösterir.

Ethereum’un ne olduğunu kısaca anladığımıza göre şimdi de yavaş yavaş konseptlerine bakalım.

Ethereum Yapısı

Hesaplar

İki çeşit hesap vardır. EOA(Externally Owned Account — Kullanıcı hesapları gibi düşünebilirsiniz) ve CA(Contract Accounts — Kontrat hesapları).

  1. Hesaplar hakkında kısa video
  2. Ethereum stack exchange üzerinde bu konuda çok güzel bilgilendirici tartışmalar dönmüş.

→ Externally Owned Account örneği

→ Contract Account örneği

Transactions — İşlemler

Transaction ise kontratlar veya kullanıcılar tarafından oluşturulan, bloklar içerisine yığınlar haline dizilen işlemler olarak tanımlanabilir. Her blok bir işlem yığınından oluşur.

Bir kullanıcıdan başka bir kullanıcıya gönderilen token işlemi de transaction olarak nitelendirilir, kontrat tarafından ethereum üzerinde yapılan bir işlem de aynı şekilde.

  1. Transaction’lar hakkında kısa video
  2. Solidity dökümanında transaction tanımı yalın bir dille yapılmış.
  3. Belki en iyi anlatımın olduğu kaynak olarak bunu gösterebiliriz.

Bir transaction içerisinde birçok veri barındırır. Gönderici, alıcı, gönderici imzası, gas limit, data vs. Bu veriler etherscan üzerinde de şeffaf bir şekilde her transaction içeriği olarak paylaşılır. Bu verilerin tek tek ne olduğu konusunda ayrı bir araştırma yapmanızı öneririm çünkü her biri önemli bir özelliği temsil ediyor.

Gas ve Fee

Gas ve Fee ethereumun en temel konseptlerinden ikisidir. Ethereum üzerinde sınırsız işlem yapmak (DDOS atakları vs.) gibi sorunları önlemek, işlemleri belli bir kurala bağlamak vs. amaçlarıyla kullanılan bir sistemdir. Yaptığınız her işlemde bir miktar fee ödemek zorundasınız. Bu fee direkt olarak madencilere gider. Gas fiyatları “Yellow Paper” denen bir dökümanda resmi olarak belirlenmiştir ve ağ buna göre hareket eder.

Günümüzde ethereumun da en büyük sorunu haline gelen fahiş fee ücretleri de tamamen ağdaki kullanıcı sayısının artması ile ilgilidir. Ağdaki kullanıcı sayısı arttıkça işlem sayısı da artar. Ethereum bloklarının da belli bir maksimum büyüklüğü olduğu için bütün işlemleri sıkıştırabilmemiz haliyle mümkün olmadığı için madenciler tüm işlemleri fee lere göre sıralıyorlar. En yüksek fee ödeyen kişiler öncelikli oluyor. Bu da fee lerin yükselmesine yol açıyor çünkü herkes yüksek fee ödemeye başlıyor.

Ortalama 15 saniye bir blok bulunduğu için böyle bir sorun ile karşılaşıyoruz. Proof of Stake ile ethereum da işlemler daha da hızlanacağı için ağın artık ölçeklenebilirlik problemi kalmayacağı öngörülüyor ve bu da çok düşük fee lere işlem yapabilmemize olanak sağlayacaktır.

  1. Gas ve Fee’ler hakkında kısa video
  2. Consensys Media tarafından yazılmış oldukça güzel bir yazı
  3. Ethereum üzerindeki güncel gas fee leri takip edebileceğiniz bir site

Ethereum Nasıl Çalışır

Ethereumu dünya çapında merkeziyetsiz bir bilgisayar olarak düşünebilirsiniz. EVM(Ethereum Virtual Machine) her node üzerinde bulunur ve bütün node’larda aynı şekilde, senkronize olarak çalışır.

  1. Ethereum çalışma mantığı hakkında kısa video
  2. Medium üzerinde yazılmış bu konuda ki en iyi yazı diyebilirim.
  3. EVM hakkında mutlaka bakılması gereken bir yer

Geleneksel Ve Merkeziyetsiz Uygulamalar

Burda kısaca günümüzdeki merkezi uygulamalar ve merkeziyetsiz uygulamaları anlatıp farklarına dikkat çekelim. Aslında neden blockchain kullanalım veya hangi durumlarda kullanalım sorusuna cevap arayacağız.

Öncelikle bu iki videoyu dikkatle izleyelim. Genel bilgilendirme ve aralarındaki farklara dikkat çekilmiş.

  1. Birinci videoya şuradan ulaşabilirsiniz.
  2. İkinci videoya da şu linkten ulaşabilirsiniz.

Bu iki videodan sonra aşağıdaki kaynaklara bir göz atın derim.

  1. Neden blockchain temalı güzel bir makale
  2. Web geliştiricileri için ethereum hakkında güzel bir yazı
  3. Merkeziyetsiz uygulamalar(dApp) hakkında bir yazı
  4. Bu 3 makalenin konularını içeren detaylı bir makale

Bu 4 kaynakta oldukça bilgilendirici içeriğe sahip. Tabiki ağır gelebilir şu an hiç dert etmenize gerek yok. Sadece fikir sahibi bile olsanız ne olup bittiğiyle alakalı yeterli şimdilik. Bu iki makale de aslında işin temel teorik kısmını biraz anlamanız içindi. Bundan sonraki yazıda yazılımcıların kullandığı toolları yani araçları inceliyor olacağız.

Bir sonraki yazıda görüşmek üzere…

Murat ÇELİKTEPE

LinkedIn → celiktepemurat

Twitter → muratctp

--

--