Ana içeriğe atla
Change page

Akıllı sözleşme birleştirilebilirliği

Kısa bir giriş

Akıllı sözleşmeler Ethereum'da herkese açıktır ve açık API'ler olarak düşünülebilir. Bir merkeziyetsiz uygulama (dapp) geliştiricisi olmak için kendi akıllı sözleşmenizi yazmanıza gerek yoktur, sadece onlarla nasıl etkileşim kuracağınızı bilmeniz gerekir. Örneğin, uygulamanızdaki tüm token takas mantığını yönetmek için merkeziyetsiz bir borsa olan Uniswap (opens in a new tab)'ın mevcut akıllı sözleşmelerini kullanabilirsiniz; sıfırdan başlamanıza gerek yoktur. Onların v2 (opens in a new tab) ve v3 (opens in a new tab) sözleşmelerinden bazılarına göz atın.

Birleştirilebilirlik nedir?

Birleştirilebilirlik, yeni sistemler veya çıktılar oluşturmak için farklı bileşenleri bir araya getirmektir. Yazılım geliştirmede birleştirilebilirlik, geliştiricilerin yeni uygulamalar oluşturmak için mevcut yazılım bileşenlerini yeniden kullanabilmesi anlamına gelir. Birleştirilebilirliği anlamanın iyi bir yolu, birleştirilebilir unsurları Lego blokları olarak düşünmektir. Her bir Lego diğeriyle birleştirilebilir, bu da farklı Legoları birleştirerek karmaşık yapılar inşa etmenize olanak tanır.

Ethereum'da her akıllı sözleşme bir nevi Lego'dur; diğer projelerdeki akıllı sözleşmeleri projeniz için yapı taşları olarak kullanabilirsiniz. Bu, tekerleği yeniden icat etmek veya sıfırdan inşa etmek için zaman harcamanıza gerek olmadığı anlamına gelir.

Birleştirilebilirlik nasıl çalışır?

Ethereum akıllı sözleşmeleri açık API'ler gibidir, bu nedenle herkes sözleşmeyle etkileşime girebilir veya ek işlevsellik için bunları dapp'lere entegre edebilir. Akıllı sözleşme birleştirilebilirliği genellikle üç prensip üzerinden çalışır: modülerlik, özerklik ve keşfedilebilirlik:

1. Modülerlik: Bu, bireysel bileşenlerin belirli bir görevi yerine getirme yeteneğidir. Ethereum'da her akıllı sözleşmenin belirli bir kullanım durumu vardır (Uniswap örneğinde gösterildiği gibi).

2. Özerklik: Birleştirilebilir bileşenler bağımsız olarak çalışabilmelidir. Ethereum'daki her akıllı sözleşme kendi kendini yürütür ve sistemin diğer parçalarına dayanmadan işlev görebilir.

3. Keşfedilebilirlik: Geliştiriciler, harici sözleşmeler herkese açık değilse onları çağıramaz veya yazılım kütüphanelerini uygulamalara entegre edemez. Tasarımı gereği akıllı sözleşmeler açık kaynaktır; herkes bir akıllı sözleşmeyi çağırabilir veya bir kod tabanını çatallayabilir.

Birleştirilebilirliğin faydaları

Daha kısa geliştirme döngüsü

Birleştirilebilirlik, geliştiricilerin dapp'ler oluştururken yapması gereken işi azaltır. Naval Ravikant'ın dediği gibi: (opens in a new tab) "Açık kaynak, her sorunun yalnızca bir kez çözülmesi gerektiği anlamına gelir."

Bir sorunu çözen bir akıllı sözleşme varsa, diğer geliştiriciler bunu yeniden kullanabilir, böylece aynı sorunu çözmek zorunda kalmazlar. Bu şekilde geliştiriciler, mevcut yazılım kütüphanelerini alıp yeni dapp'ler oluşturmak için ekstra işlevsellik ekleyebilirler.

Daha fazla inovasyon

Birleştirilebilirlik, inovasyonu ve denemeyi teşvik eder çünkü geliştiriciler istenen sonuçları elde etmek için açık kaynaklı kodu yeniden kullanmakta, değiştirmekte, çoğaltmakta veya entegre etmekte özgürdür. Sonuç olarak, geliştirme ekipleri temel işlevsellik için daha az zaman harcar ve yeni özellikleri denemeye daha fazla zaman ayırabilir.

Daha iyi kullanıcı deneyimi

Ethereum ekosisteminin bileşenleri arasındaki birlikte çalışabilirlik, kullanıcı deneyimini iyileştirir. Dapp'ler harici akıllı sözleşmeleri entegre ettiğinde, kullanıcılar uygulamaların iletişim kuramadığı parçalanmış bir ekosisteme kıyasla daha fazla işlevselliğe erişebilir.

Birlikte çalışabilirliğin faydalarını göstermek için arbitraj ticaretinden bir örnek kullanacağız:

Bir token exchange A üzerinde exchange B üzerindekinden daha yüksek bir fiyattan işlem görüyorsa, kâr elde etmek için fiyat farkından yararlanabilirsiniz. Ancak, bunu yalnızca işlemi finanse edecek (yani token'ı exchange B üzerinden alıp exchange A üzerinde satacak) yeterli sermayeniz varsa yapabilirsiniz.

Ticareti karşılayacak yeterli fonunuzun olmadığı bir senaryoda, bir flaş kredi ideal olabilir. Flaş krediler oldukça tekniktir, ancak temel fikir, varlıkları (teminat olmadan) ödünç alabilmeniz ve tek bir işlem içinde aynı şekilde iade edebilmenizdir.

İlk örneğimize dönecek olursak, bir arbitraj tüccarı büyük bir flaş kredi çekebilir, exchange B üzerinden token satın alabilir, bunları exchange A üzerinde satabilir, anapara + faizi geri ödeyebilir ve kârı elinde tutabilir; tüm bunları aynı işlem içinde gerçekleştirebilir. Bu karmaşık mantık, birden fazla sözleşmeye yapılan çağrıların birleştirilmesini gerektirir ki bu, akıllı sözleşmeler birlikte çalışabilirlikten yoksun olsaydı mümkün olmazdı.

Ethereum'da birleştirilebilirlik örnekleri

Token takasları

İşlemlerin ETH ile ödenmesini gerektiren bir dapp oluşturursanız, token takas mantığını entegre ederek kullanıcıların diğer ERC-20 token'ları ile ödeme yapmasına olanak tanıyabilirsiniz. Kod, sözleşme çağrılan işlevi yürütmeden önce kullanıcının token'ını otomatik olarak ETH'ye dönüştürecektir.

Yönetişim

Bir DAO için özel yönetişim sistemleri oluşturmak pahalı ve zaman alıcı olabilir. Bunun yerine, hızlıca bir yönetişim çerçevesi oluşturmak üzere DAO'nuzu başlatmak için Aragon Client (opens in a new tab) gibi açık kaynaklı bir yönetişim araç kiti kullanabilirsiniz.

Kimlik yönetimi

Özel bir kimlik doğrulama sistemi oluşturmak veya merkezi sağlayıcılara güvenmek yerine, kullanıcıların kimlik doğrulamasını yönetmek için merkeziyetsiz kimlik (DID) araçlarını entegre edebilirsiniz. Buna bir örnek, kullanıcıların bir Ethereum cüzdanı ile kimliklerini doğrulamasına olanak tanıyan "Ethereum ile Giriş Yap" işlevselliği sunan açık kaynaklı bir araç kiti olan SpruceID (opens in a new tab)'dir.

İleri okuma

Size yardımcı olan bir topluluk kaynağı mı biliyorsunuz? Bu sayfayı düzenleyin ve ekleyin!