Bu bölüm, Algorand blok zincirinde uygulamalar geliştirmek isteyen geliştiriciler için bir başlangıç kılavuzudur. Algorand’da bir uygulama oluşturmanın ne anlama geldiğini ve nasıl hızlı bir şekilde başlayacağınızı öğrenmek için buradan başlayın.
Algorand üzerine inşa etmek ne anlama geliyor?
Algorand üzerinde bir uygulama oluşturmak, uygulamanızın doğrudan veya dolaylı olarak Algorand blok zincirinden okuduğu veya ona yazdığı anlamına gelir. Algorand blok zincirine yazmak, daha sonra bir blok içinde onaylanacak bir işlem yapmakla eş anlamlıdır. Blok zincirinden okumak, önceki bloklarda onaylanan işlemleri geri okumak anlamına gelir.
Aşağıda, Algorand geliştirme ortamını oluşturan bileşenlerin bazı terimleri ve ilişkileri hakkında kısa bir başlangıç bulunmaktadır. Aşağıdaki Şekil 1. bu bileşenleri ve bunların birbirine nasıl uyduğunu göstermektedir.

Algorand blok zinciri, blokların geçmişini ve içindeki işlemleri doğrulamaya dayalı olarak her biri yerel durumlarını koruyan dağıtılmış bir düğüm sistemidir . Durum verileri, arka plan programı içinde uygulanan ve genellikle düğüm yazılımı olarak adlandırılan mutabakat protokolü tarafından tutulur . Bir geliştirici olarak bu, büyük olasılıkla uygulamalarınız için temel katmandır.algod
Bir uygulama, Algorand blok zincirine bir algod istemcisi aracılığıyla bağlanır . Algod istemcisi, etkileşim kurmayı planladığınız ağa bağlı bir Algorand düğümünden geçerli bir algod REST uç nokta IP adresi ve algod belirteci gerektirir.
Mevcut araçlar
Yazılım Geliştirme Kitleri (SDK)
Algorand , uygulama geliştirmek için resmi olarak dört SDK’yı destekler: Javascript , Java , Python ve Go . Ek olarak, Topluluğun Sağladığı SDK’lar geliştirme erişimini genişletir.
Komut Satırı Arayüzü (CLI) Araçları¶
Algorand Algorand düğüm yazılımı ile paketlenmiş üç komut satırı yarar sağlar: goal
, kmd
ve algokey
.
goal
bir düğümü çalıştırmak için birincil araçtır ve ayrıca anahtarları yönetmek, işlemleri imzalamak ve göndermek, varlıklar oluşturmak ve SDK’larda bulunan birçok aynı veya benzer işlevi gerçekleştirmek için işlevler içerir. Bir uygulama oluşturmaları gerekmese de, düğümleri çalıştıran geliştiriciler, goal
test ve doğrulama sırasında tamamlayıcı bir araç olarak bir miktar akıcılık elde etmeyi yararlı bulabilir . özel ağları kullanarak daha gelişmiş test ortamları kurmak goal
için gereklidir.
kmd
Algorand Key Management arka plan algokey
programı için CLI’dir ve Algorand hesapları oluşturmak ve işlemleri imzalamak için bağımsız bir yardımcı programdır. Genellikle güvenli anahtar imzalama için hafif bir çevrimdışı istemci olarak kullanılır. Bu iki araç başlamak için gerekli değildir, bu nedenle kullanımlarının ayrıntıları başka bir yerde açıklanmıştır.
Her ikisi için de kullanılabilir REST API’leri de vardır algod ve KMD dir.
Dizin oluşturucu
Algorand , Algorand blok zincirinden işlenmiş blokları okuyan ve aranabilir ve dizine eklenmiş işlemlerin ve hesapların yerel bir veritabanını tutan bağımsız bir daemon algoritması ve indeksleyici sağlar. Uygulama geliştiricilerin hesaplar, işlemler, varlıklar vb. Üzerinde zengin ve verimli sorgular gerçekleştirmesini sağlayan bir REST API mevcuttur.
Bir ağ seçmek
Herhangi bir protokol sürümünü kullanarak özel ağlar oluşturmak için işlevsellikle eşleştirilmiş üç genel Algorand Ağı vardır .
MainNet , Algorand’ın yerel para birimi olan Algo da dahil olmak üzere gerçek değerli varlıklara sahip birincil Algorand Ağıdır. TestNet, MainNet’i protokol (yani yazılım) sürümü açısından yansıtır, ancak bir musluk aracılığıyla erişilebilen test Algos’a ve farklı bir oluşum bloğuna sahiptir, bu da hesapların durumunun ve fonların dağıtımının farklı olduğu anlamına gelir. BetaNet , ilk test için yeni protokol düzeyindeki özelliklerin yayınlanacağı yerdir. Bu nedenle, kalite ve özellikler nihai olmayabilir ve protokol yükseltmeleri ve ağ yeniden başlatmaları yaygındır.
Tavsiye edilen kullanım
Uygulamanız MainNet’te mevcut olan özelliklere bağlıysa, TestNet’i genel test ağınız olarak kullanın. Uygulamanız yalnızca BetaNet’te bulunan özelliklere bağlıysa, BetaNet’i genel test ağınız olarak kullanın. Her durumda, geliştirme ortamınızda daha fazla denetim ve izolasyon için gerektiğinde özel ağları kullanın. Ağ Referansı bölümündeki ağların her birinde özellik kullanılabilirliği hakkında daha fazla bilgi edinin . Bu belgelerdeki 🔷 ile işaretlenen bölümler, yalnızca BetaNet’te kullanılabilen bir özelliği belirtir.
Hangi ağ ile başlayacağınızdan emin değilseniz, TestNet, gerçek varlıkları riske atmadan canlı özelliklere karşı geliştirme yapmanıza izin verdiği için genellikle iyi bir seçenektir. Ağları daha sonra değiştirmek önemsiz olacaktır.
Yan Yana Ağ Karşılaştırması

Nasıl bir algod adresi ve jeton elde edebilirim?¶
Bir algod REST uç nokta IP adresi ve erişim belirteci almanın , hedeflerinizin ne olduğuna bağlı olarak her birinin kendi artıları ve eksileri olan üç önerilen yolu vardır. Aşağıda her birinin açıklaması ve ardından yan yana karşılaştırma verilmiştir.
1. Üçüncü taraf bir hizmet kullanın
Bu yöntem, yalnızca SDK’ları veya algod RESTful arabirimini kullanmayı planlıyorsanız ve olabildiğince hızlı bağlanmak istiyorsanız önerilir.
Üçüncü taraf bir hizmet, bir düğümü çalıştırır ve bu düğüme kendi API anahtarları aracılığıyla erişim sağlar. Kayıt sırasında, hizmet size bir algod adresi ve algod jetonunuzun yerini alacak bir API anahtarı sağlar.
Topluluk Projeleri sayfasındaki bilinen API hizmetlerinin listesine bakın.
2. Docker Sandbox’ı kullanın
Bu yöntem de dahil olmak üzere tüm geliştirici araçlarına erişim gerekiyorsa şunlar önerilir goal
, kmd
ve algokey
fakat düğüm için gün bekleyemem derseniz;
Sandbox kurulum talimatları için bu Github bağlantısını ziyaret edin.
Bir anlık görüntüden önyükleme, sağlıklı bir ağı sürdürmek için zorunlu olan bir prosedür olan blok zincirinin tüm geçmişini kriptografik olarak doğrulayan normal düğüm yakalama prosedürünü atlar. Bu nedenle, bu yöntem, yakalama bekleme sürelerini önlemek ve hızlı bir şekilde başlamak için yalnızca erken aşama uygulama geliştirme bağlamında önerilir. Gerektiğini asla üretimde bir düğüm çalıştırmak veya uzlaşma katılmak için kullanılabilir. Uygulamanızı üretimde başlatmadan önce, uygulamanızı tam olarak yakalanan bir düğüme taşıdığınızdan emin olun.
3. Kendi düğümünüzü çalıştırın
Bu yöntem de dahil olmak üzere tüm geliştirici araçlarına erişim gerekiyorsa önerilir goal
, kmd
ve algokey
, ve kurulum için üretime hazır bir ortam istiyorum. Bu, MainNet’te bir uygulama başlatmadan önce 2. seçeneğin takip edilmesi önerilir . Bu yöntem, düğümünüzün ve yapılandırmasının tam kontrolünü size verir.
Bir düğüm kurmak ve çalıştırmak için belgeleri okuyun.
Kurulumdan sonra, REST uç noktanızın IP adresini burada bulun :
$ cat $ALGORAND_DATA/algod.net
ve burada algod jetonunuz (uygulamanız tarafından kimlik doğrulaması için gereklidir algod
):
$ cat $ALGORAND_DATA/algod.token
Yan Yana Karşılaştırma

Tercih ettiğiniz SDK’yı yükleyin
Tercih ettiğiniz SDK’yı , SDK referans belgelerindeki kurulum talimatlarını uygulayarak yükleyin .
Diğer Kurulum İpuçları
Diğer kurulum yollarını kullanıyorsanız goal
, ALGORAND_DATA
her goal
komut için belirtme ihtiyacını ortadan kaldırmak için ortam değişkenini ayarlamanız önerilir . Ayrıca yerleştirmeniz önerilir goal
, kmd
ve algokey
senin yürütülebilir yol içindeki. Bu belgelerdeki örnekler, bunların her ikisini de yaptığınızı varsayacaktır.
Yani şu şekilde kullanacaksın:
$ goal node status
ya da onun yerine:
$ goal node status -d <your-node-directory>