Ana içeriğe geç
Change page

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

Son düzenleme: @kaanmetu(opens in a new tab), 4 Mart 2024

Kısa bir giriş

Akıllı sözleşmeler Ethereum üzerinde herkese açıktır ve açık API'ler olarak düşünülebilirler. Bir dapp geliştiricisi olmak için kendi akıllı sözleşmenizi yazmanız gerekmez, sadece onlarla nasıl etkileşime geçebileceğinizi bilmelisiniz. Örneğin, bir merkeziyetsiz borsa olan Uniswap(opens in a new tab)'ın mevcut akıllı sözleşmelerini uygulamanızdaki tüm token değişim mantığını idare etmek için kullanabilirsiniz: Sıfırdan başlamanız gerekmez. Onların v2(opens in a new tab) ve v3(opens in a new tab) sözleşmelerine 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 kullanabilecekleri anlamına gelir. Birleştirilebilirliği anlamanın iyi bir yolu, birleştirilebilir öğeleri, Lego blokları olarak düşünmektir. Her Lego başka bir Lego ile birleştirilebilir ve farklı Legoları birleştirerek karmaşık yapılar oluşturmanıza olanak tanır.

Ethereum'da her akıllı sözleşme bir tür Lego'dur; diğer projelerden 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, genel 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 oluşturulabilirliği genellikle üç ilkeye dayalı olarak çalışır: modülerlik, özerklik ve keşfedilebilirlik:

1. Modülerlik: Bu, ayrı 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. Otonomi: 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 bölümlerine güvenmeden çalışabilir.

3. Keşfedilebilirlik: Geliştiriciler, genel kullanıma açık değilse, harici sözleşmeler arayamaz veya yazılım kitaplıklarını uygulamalara entegre edemezler. Tasarım gereği, akıllı sözleşmeler açık kaynaklıdır; herkes bir akıllı sözleşme çağırabilir veya bir kod tabanını çatallayabilir.

Birleştirilebilirliğin faydaları

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

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

Bir sorunu çözen akıllı bir sözleşme varsa, diğer geliştiriciler onu yeniden kullanabilir, böylece aynı sorunu çözmeleri gerekmez. Bu şekilde, geliştiriciler mevcut yazılım kitaplıklarını alabilir ve yeni dapp'ler oluşturmak için ekstra işlevsellik ekleyebilir.

Daha fazla yenilik

Birleştirilebilirlik, yenilikçiliği ve denemeyi teşvik eder çünkü geliştiriciler, istenen sonuçları oluşturmak için açık kaynak kodunu yeniden kullanmakta, değiştirmekte, çoğaltmakta veya entegre etmekte özgürdür. Sonuç olarak, geliştirme ekipleri temel işlevlere 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 geliştirir. Dapp'ler harici akıllı sözleşmeleri entegre ettiğinde, uygulamaların iletişim kuramadığı parçalanmış bir ekosisteme kıyasla kullanıcılar 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 A borsasında B borsasından daha yüksek işlem görüyorsa, kâr etmek için fiyat farkından yararlanabilirsiniz. Ancak, bunu yalnızca işlemi mümkün kılmak için yeterli sermayeniz varsa yapabilir (yani, B borsasından tokeni satın alıp A borsasında satabilirsiniz).

Alım satımı karşılamak için yeterli paranızın olmadığı bir senaryoda, anlık kredi ideal olabilir. Hızlı krediler oldukça tekniktir, ancak temel fikir, varlıkları (teminatsız) ödünç alabilmeniz ve bir işlem içinde aynı şekilde iade edebilmenizdir.

İlk örneğimize geri dönersek, bir arbitraj tüccarı, büyük bir flash kredi alabilir, B borsasından token satın alabilir, bunları A borsasında satabilir, sermayeyi + faizi geri ödeyebilir ve aynı işlem içinde kârı tutabilir. Bu karmaşık mantık, çağrıları birden fazla sözleşmeye birleştirmeyi gerektirir; bu, akıllı sözleşmelerin birlikte çalışabilirliği olmasaydı mümkün olmazdı.

Ethereum'da birleştirilebilirlik örnekleri

Token takasları

İşlemlerin ETH'de ödenmesini gerektiren bir dapp oluşturursanız, token takas mantığını entegre ederek kullanıcıların diğer ERC-20 tokenlerinde ödeme yapmasına izin verebilirsiniz. Sözleşme çağrılan işlevi yürütmeden önce kod, kullanıcının tokenini otomatik olarak ETH'ye dönüştürür.

Yönetim

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

Kimlik yönetimi

Özel bir kimlik doğrulama sistemi oluşturmak veya merkezi sağlayıcılara güvenmek yerine, kullanıcılar için kimlik doğrulamayı yönetmek için merkezi olmayan kimlik (DID) araçlarını entegre edebilirsiniz. Bir örnek, kullanıcıların kimliklerini bir Ethereum cüzdanıyla doğrulamasını sağlayan "Ethereum ile oturum açma" işlevi sunan açık kaynaklı bir araç seti olan SpruceID(opens in a new tab)'dir.

  • create-eth-app ile merkeziyetsiz uygulama ön yüz geliştirmeye bir adım önde başlayın – Popüler akıllı sözleşmelerle uygulamalar oluşturmak için create-eth-app kullanımına genel bir bakış.

Daha fazla okuma

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

Bu makale yararlı oldu mu?