Bu kılavuzun amacı, sizi olabildiğince hızlı bir şekilde Web3’e daldırmaktır, böylece öğrenmeye başlamak ve geliştirmeye başlamak için gereken bağlama ve temel anlayışa sahip olursunuz..

Neden Blockchain?

Bu alanda yeniyseniz, “merkezi olmayan İnternet” in bir geliştiriciye ne sunduğu net olmayabilir. Ethereum gibi halka açık bir blockchain’i, ona katılan herkes için açık bir “durumu” ve gerçeğin kaynağını tanımlayan, internete bağlı herkes tarafından erişilebilen, açık kaynak protokolünün gücünü ve fazlalığı kullanan bir sistem olarak düşünün. güvenilir ve güvenli kalması için eşler arası ağ oluşturma. Her uygulama geliştiricisinin uygulamalarının tüm durumunu özel sunucularda oluşturmasını ve sürdürmesini zorunlu kılmak yerine, çoğu şey genel blok zincirinde depolanabilir ve buradan alınabilir. Yaygın, güvenilir, güvenli bir arka uç.

Bunun mümkün olmasının nedeni, bir blockchain veritabanının benzersiz özelliklerinden kaynaklanmaktadır. Yalnızca yazılır: Tipik bir veritabanının kayıt ekleyip kaldırabildiği yerlerde, blok zinciri verileri sonsuza kadar var olur ve kaldırılamaz. Düğüm ağı, bu veritabanını bir “dağıtılmış defter” olarak tutar ve belirli bir zamanda kimin yazma iznine sahip olduğu konusunda katı protokollere sahiptir. Teknolojinin ilginç yönlerinden biri, yazma izinlerinin, katılmak için özel bir izin gerektirmeyen düğümler arasında nasıl dağıtıldığıdır. Kendi halka açık Ethereum düğümünüzü döndürürseniz, tüm ağa yazma erişiminiz olur: başka herhangi bir düğümden önce size bir düğüm yazma ayrıcalığını vermek için gereken “çalışma kanıtı” nı tamamladıysanız. 

Blockchain teknolojisinin uygulamadaki en önemli ve tipik bir örneği, kripto para gönderme ve alma kolaylığıdır. Halka açık Ethereum defteri, bir geliştiricinin bankalar, hesaplar veya diğer aracılar olmadan ödeme ağ geçitlerini uygulamasına izin verir.. 

Bir geliştirici, kullanıcıların takas etmeleri için gereken altyapıyı oluşturmak zorunda kalmadan kendi Ethereum jetonunu oluşturabilir. Çevrimiçi bir oyun platformu, oyun içi öğeleri belirtebilir ve kullanıcılar bu jetonları satın alıp platformun dışında takas edebilir ve oyun platformunun kendisinden ayrı olarak onlara sahip olabilir. Oyun içi kullanım için ürün ticareti yapmanın ötesinde, dijital koleksiyonların büyük bir gelecek potansiyeli var. E-sporun popülaritesi arttıkça, dijital olarak belirtilmiş bir “home run ball” eşdeğeri olabilir..


Her kullanıcının kendi genel / özel anahtar çiftine sahip olmasıyla, uygulamaların yalnızca bir kullanıcının kendi özel anahtarıyla işlemleri imzalayabildiğini doğrulaması gerektiğinden, kullanıcı kimlik doğrulaması çok daha basit hale getirilmiştir..

Akıllı sözleşmeler programlanabilir para yaratmak için kullanılabilir. Bir apartmanın iki sahibinin bir kiracının kira ödemelerini 50/50 bölmek istediği durumu ele almak için programlanabilir bir akıllı sözleşmenin temel bir kullanımını düşünün. Normalde, ya kiralayan her mal sahibine ayrı ayrı ödeme yapmak zorunda kalacak ya da bir mal sahibine ya da bir acenteye ödeme yapacaktır ve mal sahibi ya da aracı parayı ödeyecektir. Bu durum özellikle sorunlu olmasa da, bir bireyin diğerine payını sağlamak için ihtiyaç duyduğu örtük güveni düşünün. Bunu, gelen fonları programlı olarak bölen ve her bir sahibin adresine gönderen basit bir akıllı sözleşmeyle karşılaştırın. Kiracının sadece kirasını bu adrese göndermesi gerekir ve her mal sahibi kendi payını hemen alır. Ethereum gibi bir blok zincirinin güvenliği ve değişmezliği nedeniyle, her sahip akıllı sözleşmenin istendiği gibi çalışacağından ve kodunu denetleyebileceğinden emin olabilir.. 

Blockchain tarafından sağlanan dijital güven omurgasına sahip olduğumuzda, programlamanın faydalarını önemli sosyal sorunlara da uygulayabiliriz. Birkaç satır kodla bankacılık hizmeti sağlayabiliriz. Kimliğinizi birkaç tıklama ile doğrulayabiliriz. Hepsi, dünyanın herhangi bir yerindeki hemen hemen her bilgisayarda çalışabilen bir protokol ile.

Alan yeni ve gelişmekte olduğundan, geliştiricilerin yeni türden araçlar, uygulamalar ve sistemler oluşturma ve bu teknoloji için yeni kullanım senaryoları bulma fırsatı oldukça fazladır..

Problem Arayışında Çözüm?

Blockchain teknolojisine yönelik eleştirilerdeki yaygın bir kaçınma, bunun bir problem arayışında bir çözüm olmasıdır. Dijital para biriminin ilk blockchain katil uygulaması olduğu ve Distributed Finance veya DeFi’nin bir sonraki olmak için şekillendiği, bu teknolojinin nasıl uygulanabileceğinin tam olarak bilinmediği ve geliştiricilerin temel nedenlerinden biri olduğu tartışılabilir. uzayda bir parçası olmak heyecan verici buluyor. Araştırmacılar, deneyciler ve girişimciler onu tamamen beklenmedik şekillerde uygulayana kadar, on yıldan fazla bir süredir lazer teknolojisinin görünürde bir kullanımı yoktu. Aynı argüman herhangi bir yeni teknoloji için kullanılabilirken, dijital para biriminin büyük çapta yaygın şekilde benimsenmesi ve şu anda dağıtılmış, yönetilmeyen, merkezi olmayan blok zincirlerde bulunan 350 milyar doları aşan miktar oldukça dikkat çekicidir.. 

Temel Dağıtılmış Uygulama Yapısı 

Dağıtılmış bir uygulama, genel olarak konuşursak, yığınındaki bir yerde bir blok zincirine bağlanan ve muhtemelen bir şekilde çalışması için temel olan bir uygulamadır. Dağıtılmış uygulamalar, bir web uygulamasında bulabileceğiniz normal ön ve arka uç sistemlerinin bir karışımıdır, ancak Ethereum ağına bağlanmak için web3.js gibi bir kitaplık kullanır. Bazı dağıtılmış uygulamalar tamamen dağıtılmıştır: tamamen dağıtılmış ağlarda yaşamak.

Kullanıcı tarafında, MetaMask kullanıcıların Ethereum cüzdanını yöneten popüler bir eklentidir. MetaMask, bir kullanıcının işlemleri imzalaması ve “kimliğini” kanıtlaması için bir arayüz sağlar.

Verilen dağıtılmış bir uygulama, kimlik doğrulama için Ethereum blok zincirine ve ayrıca kullanıcıların MetaMask cüzdanına (veya başka bir cüzdana) bağlanabilir.. 

Ethereum ile Arayüz 

Tipik olarak, Ethereum ile etkileşim kurmak için bir düğüm çalıştırmanız gerekir. Bir düğüm, bir blok zincirinin yapısının temel bir parçasıdır, merkezi olmayan yapıyı oluşturmak için diğer eşlere bağlanan eştir. Protokol, genel ana ağda kraldır: merkezi bir sunucu yoktur, otorite yoktur ve bir düğümü kimin çalıştırabileceğine dair sınır yoktur. Katılan tüm düğümler için yalnızca ortak bir protokol vardır.

Birçok uygulama geliştiricisi kendi Ethereum düğümlerini çalıştırmamayı tercih eder, bu nedenle Infura Ethereum için geliştiricilerin kullanabileceği bir ağ geçidi ve API sağlamak için var.

Akıllı Sözleşmeler

Bitcoin ağı en çok bilinen blok zincirlerinden biri olsa da Ethereum, akıllı sözleşmeler adı verilen küçük programları çalıştırabilen Turing eksiksiz bir sanal makine içerdiğinden geliştiriciler için daha heyecan verici bir özellik setine sahiptir. Sonuç olarak Ethereum, blockchain ekosistemlerinden herhangi biri arasında en güçlü ve en aktif geliştirici topluluğuna sahiptir.. 

Akıllı sözleşmeler düğümler üzerinde çalışır ve giriş ve çıkışları için işlemleri kullanır. Akıllı sözleşmeler, bir kullanıcının hesap adresinde olduğu gibi, blok zincirindeki adreslerde bulunur. Akıllı bir sözleşmeyle etkileşim kurmak için, ona yalnızca giriş verileriyle birlikte bir işlem göndermeniz gerekir.. 

Gaz

Akıllı bir sözleşme yürütmek, akıllı sözleşmeyi yürütme hizmeti için düğüm operatörlerini telafi eden küçük bir maliyet olan gaz gerektirir ve aynı zamanda spam olayını azaltır (spam göndermeyi pahalı hale getirerek) ve kötü kodlanmış akıllı sözleşmelerin sonsuz döngüye girmesini ve ağı tıkamasını önler..

Mainnet, Test Ağları, Diğer Ağlar

Blok zinciri sözlüğündeki bir ana ağ, belirli bir protokol için birincil aktif ağı ifade eder. Ethereum söz konusu olduğunda, mainnet gerçek değerin değiş tokuş edildiği yerdir ve gerçeğin kaynağı olarak kabul edilir. Ancak herhangi bir düğüm grubu kendi ağını oluşturabilir. Test ağları, geliştiricilerin projelerini ve kodlarını risk almadan test edebilmeleri için Eth ve gas’ın ücretsiz olduğu çok daha küçük ağlar sunarak geliştirici topluluğuna hizmet eder. Ethereum test ağları Ropsten, Kovan, Rinkeby ve Görli olarak adlandırılır..

Ethereum ağları aynı zamanda kurumsal uygulamalar için de kullanılır: küçük bir kuruluş grubu arasında (örneğin) işlemleri ve diğer işlemleri kolaylaştırmak için izinli olarak (izinsiz ana ağ ve test ağlarına karşı) çalışan özel yapım ağlar. Bu ağların çok daha az düğümü vardır ve genellikle belirli bir amaca hizmet eder. Örneğin büyük bankalar, bankalar arası ödeme için bir blok zinciri kullanabilir.

Ethereum’da Gelişim

Ethereum’daki gelişme genellikle ilk olarak yerel, evde üretilen blok zincirlerde gerçekleşir. Geliştiriciler, Ethereum ağları oluşturmanıza izin veren geth, komut satırı yazılımı gibi bir şey kullanmakta özgürdür. Ancak bu, düşük seviyeli bir dilde programlama gibidir: İşleri kolaylaştıran Truffle paketi birçok geliştirici ihtiyacını karşılar. Paketin bir parçası olan Ganache, geliştiricilerin uygulamalarını test etmek için yerel bir blok zinciri ağını çalıştırmasını çok daha kolaylaştırıyor ve komut satırı araçlarıyla birlikte geliştirme amacıyla “tek tıklamalı blok zinciri” sunuyor. Drizzle, ön uç geliştirmeye yardımcı olur ve Truffle’ın kendisi, akıllı sözleşme geliştirme ve dağıtımını kolaylaştıran bir çerçevedir.

Blockchain ile etkileşim kurmak, bir API (web3.js gibi) kullanımını ve bir düğüme erişimi gerektirir; Birçok geliştirici, kendi düğümlerini çalıştırmak yerine, Infura Ethereum API olarak.

Akıllı Sözleşme Dilleri

Şu anda, akıllı sözleşmeleri kodlamak için en popüler dil Sağlamlık. Bu javascript benzeri dil, özellikle web kodlama deneyimi olan yeni geliştiriciler için oldukça kolaydır.. Remiks geliştiricilerin akıllı sözleşmeler oluşturmayı denemelerine olanak tanıyan çevrimiçi bir IDE’dir. Ana ağdaki akıllı sözleşmeler gerçek değerde çalıştığı ve dağıtıldıktan sonra değiştirilemez olduğu için akıllı sözleşme programcıları için öğrenmesi gereken birçok önemli ayrıntı vardır (buna yardımcı olan programlama metodolojileri olsa da).

Tam Yığın

Tüm modern web geliştirmede olduğu gibi, yığının çeşitli seviyelerinde kullanmak için bileşenlerin birçok seçeneği vardır. Her zaman güncel olan blockchain yığınında daha fazla ayrıntı elde edebilirsiniz.

Basit Bir Proje Yığını

İşte basit bir projede kullanabileceğiniz tipik bir geliştirme araçları seti:

NPM 

Düğüm paketi yöneticisi, node.js’nin parçası

Truffle Çerçevesi

Geliştirmeyi kolaylaştıran bir araç paketi

Ganache

Truffle çerçevesinden, kendi makinenizde özel bir blok zinciri başlatmak için kullanılır

MetaMask

Ethereum’a bir blok zinciri kullanıcı arayüzü ve ağ geçidi; bu, uygulamanızın bağlanarak kullanıcıların işlemleri imzalamasına ve diğer görevleri gerçekleştirmesine olanak tanıyan bir tarayıcı eklentisi ve mobil uygulamadır.

Sağlamlık

Akıllı sözleşmeler için popüler bir programlama dili

HTML / CSS / JS

Ön ucunuz için

Web3.js

Ethereum ağına bağlanmanızı ve etkileşimde bulunmanızı sağlayan bir Ethereum API kitaplığı

Infura

Geliştiricilere kendi düğümlerini çalıştırmak zorunda kalmadan Ethereum ağına erişim sağlayan bir Ethereum API hizmeti

Başlamaya hazırsanız, 3 adımlı kılavuzumuz, kısa bir yürüyüşle blok zincirine hızlı bir şekilde başlamanız ve çalışmaya başlamanız için daha fazla ayrıntıya girecektir..

    Geliştiricinin İlk Katılımı: 1. AdımGeliştirici İlk Katılımı Adım 1

    Geliştiricinin İlk Katılımı: 1. Adım

    Geliştiricinin İlk Katılımı: 2. AdımGeliştirici İlk Katılımı 2. Adım

    Geliştiricinin İlk Katılımı: 2. Adım

    Geliştiricinin İlk Katılımı: 3. AdımGeliştirici İlk Katılımı 3. Adım

    Geliştiricinin İlk Katılımı: 3. Adım

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me