Merkezi olmayan bir uygulama (dApp), tek bir bilgisayar yerine eşler arası (P2P) bir blok zinciri ağında çalışan bir tür dağıtılmış açık kaynaklı yazılım uygulamasıdır. DApp'ler, bir web sitesinde veya mobil cihazda desteklenen ancak P2P destekli diğer yazılım uygulamalarına görünür şekilde benzer.
dApp'lerin merkezi olmayan yapısı, bir geliştirici bir dApp'in kod tabanını yayınladıktan sonra diğerlerinin bunun üzerine inşa edebileceği anlamına gelir. Uygulama, tek bir otoritenin kontrolünden muaftır. Merkezi olmayan finans, web'de gezinme, oyun oynama ve sosyal medya da dahil olmak üzere çeşitli uygulamalar oluşturmak için bir dApp geliştirilmiştir.
DApp'ler, blok zinciri dağıtılmış bir defter tarafından desteklenen merkezi olmayan bir ağ üzerine kuruludur. Blockchain kullanımı, bir dApp'nin dağıtılmış ağlar aracılığıyla verileri işlemesini ve işlemleri yürütmesini sağlar. dApp'ler ayrıca genellikle Ethereum platformu kullanılarak oluşturulur.
Ethereum blok zinciri gibi dağıtılmış defter teknolojileri, dApp'lerin popülerleşmesine yardımcı olmuştur. DApp'lerin en büyük avantajları, her zaman erişilebilir olmaları ve tek bir hata noktasına sahip olmamalarıdır.
Uber veya Twitter gibi standart bir web uygulaması, bir kuruluşun sahibi olduğu ve işlettiği bir bilgisayar sisteminde çalışır ve kuruluşa uygulama ve çalışmaları üzerinde tam yetki verir. Bir tarafta birden fazla kullanıcı olabilir, ancak arka uç tek bir kuruluş tarafından kontrol edilir.
DApp'ler bir P2P ağında veya bir blok zinciri ağında çalışabilir. Örneğin, BitTorrent, Tor ve Popcorn Time, bir P2P ağının parçası olan bilgisayarlarda çalışan ve birden fazla katılımcının içerik tükettiği, içeriği beslediği veya tohumladığı veya her iki işlevi aynı anda gerçekleştirdiği uygulamalardır.
Kripto para birimleri bağlamında, dApp'ler halka açık, açık kaynaklı, merkezi olmayan bir ortamda bir blok zinciri ağı üzerinde çalışır ve herhangi bir tek otorite tarafından kontrol ve müdahaleden muaftır. Örneğin, bir geliştirici Twitter benzeri bir dApp oluşturabilir ve bunu herhangi bir kullanıcının mesaj yayınlayabileceği bir blok zincirine koyabilir. Bir kez yayınlandıktan sonra, uygulama yaratıcıları dahil hiç kimse mesajları silemez.
Bir dApp nasıl çalışır?
Merkezi olmayan uygulamalar aşağıdaki üç ortak özelliğe ve temel özelliğe sahiptir:
-Açık kaynak kodludurlar. Gerekli tüm değişikliklere, kullanıcıların çoğunluğunun oybirliği ile karar verilir. Bu, kod tabanının değerlendirme için tüm kullanıcılara açık olmasını gerektirir.
-Merkezi olmayan depolama sağlarlar. Veriler, merkezi olmayan bloklarda depolanır.
-Doğrulanmış ve doğruluğu kanıtlanmış kriptografik Merkezi olmayan veri blokları sunarlar.
-DApp'ler, genellikle Ethereum kullanan bir blok zinciri sisteminde depolanır ve yürütülür. Uygulama, uygulamaya erişmek için gerekli olan kriptografik belirteçlerin kullanımıyla doğrulanır.
-DApp'ler, bir web sayfasını oluşturmak için aynı ön uç kodunu kullandıklarından geleneksel uygulamalara benzer. Ancak, merkezi olmayan bir P2P ağında çalıştığı için dApp'in arka uç kodu farklıdır. Bu, dApp'leri tek bir otoritenin kontrolünden özgür kılan şeydir.
Geleneksel bir uygulama, merkezi sunucular ve veri tabanı tarafından desteklenirken, bir dApp, bir blok zincirinde depolanan akıllı bir sözleşme tarafından desteklenir. Ethereum, akıllı sözleşmeler yürütmek için en popüler blok zinciridir. Akıllı sözleşmeler, kodda tanımlanan kuralları uygular ve işlemlere aracılık eder. Akıllı bir sözleşme yalnızca arka uçtan oluştuğundan ve genellikle tüm dApp'in yalnızca küçük bir parçası olduğundan, akıllı bir sözleşme sisteminde merkezi olmayan bir uygulama oluşturmak, birkaç akıllı sözleşmeyi birleştirmeyi ve ön uç için üçüncü taraf sistemleri kullanmayı gerektirir.
Akıllı bir sözleşmenin üzerinde çalıştığı blok zinciri, merkezi bir yerde saklanmak yerine bloklarda saklanan veri kayıtlarının bir defteridir. Veri blokları, dağıtılmış konumlar arasında dağılmış halde kalır. Tüm veri blokları birbirine bağlanır ve kriptografik doğrulama ile yönetilir.
Tüm dApp'ler standart web tarayıcılarında çalışmaz. Bazıları, söz konusu uygulamayı açmak için yalnızca özelleştirilmiş koda sahip web sitelerinde çalışabilir.
Avantajları:
-DApp'lerin avantajlarının çoğu, programın kullanıcı gizliliğini koruma yeteneği etrafında toplanır. Merkezi olmayan uygulamalarla, kullanıcıların uygulamanın sağladığı işlevi kullanmak için kişisel bilgilerini göndermeleri gerekmez. DApp'ler, merkezi bir otoriteye güvenmeye gerek kalmadan iki anonim taraf arasındaki işlemi tamamlamak için akıllı sözleşmeler kullanır.
-İfade özgürlüğü ile ilgilenen savunucular, dApp'lerin alternatif sosyal medya platformları olarak geliştirilebileceğini belirtiyor. Merkezi olmayan bir sosyal medya platformu sansüre karşı dirençli olacaktır çünkü blok zincirindeki hiçbir katılımcı mesajları silemez veya mesajların gönderilmesini engelleyemez.
-Ethereum, yeni dApp'ler oluşturmak için esnek bir platformdur ve geliştiricilerin çabalarını dijital uygulamalar için yenilikçi kullanımlar bulmaya odaklamaları için gereken altyapıyı sağlar. Bu, bankacılık ve finans, oyun, sosyal medya ve çevrimiçi alışveriş dahil olmak üzere çeşitli sektörlerde dApp'lerin hızlı bir şekilde dağıtılmasını sağlayabilir.
Dezavantajları:
-dApp'lerin kullanımı hala erken aşamalardadır. Bu nedenle deneyseldir ve belirli sorunlarla beraber bilinmeyenlere de açıktır. Özellikle bir uygulamanın önemli hesaplamalar gerektirmesi ve bir ağı aşırı yüklemesi ve ağ tıkanıklığına neden olması durumunda, uygulamaların etkili bir şekilde ölçeklenip ölçeklenemeyeceğine dair sorular var.
-Kullanıcı dostu bir arayüz geliştirme yeteneği başka bir endişe kaynağıdır. Geleneksel merkezi kurumlar tarafından geliştirilen uygulamaların çoğu kullanıcısı, onları uygulamayı kullanmaya ve uygulamayla etkileşime girmeye teşvik eden bir kullanım kolaylığı beklentisine sahiptir. İnsanların dApp'lere geçişini sağlamak, geliştiricilerin zaten popüler ve yerleşik programlara rakip olan bir son kullanıcı deneyimi ve performans düzeyi oluşturmasını gerektirecektir.
-Kod değişiklikleri yapmanın zorluğu, dApp'lerin başka bir sınırlamasıdır. Bir dApp dağıtıldıktan sonra, geliştirmeler yapmak,hataları veya güvenlik risklerini düzeltmek için büyük olasılıkla sürekli değişikliklere ihtiyaç duyacaktır. Ethereum'a göre, blok zincirinde yayınlanan veri ve kodun değiştirilmesi zor olduğu için geliştiricilerin dApp'lerde gerekli güncellemeleri yapması zor olabilir.