Her Solana programı aynı durumu okur ve yazar; böylece bir swap, bir kredi geri ödemesi ve bir oracle güncellemesi tek bir atomik işlemde çalışabilir. Çalışan bir Anchor uygulamasıyla başlayın, canlı likiditeyi entegre edin ve üretim standartlarında yayına alın.
Programlar, tek bir işlem içinde Cross Program Invocation'lar aracılığıyla birbirini çağırır. Herhangi bir adım başarısız olursa işlemin tamamı geri alınır; böylece çok protokollü bir strateji asla yarım kalarak sonuçlanmaz.
Her işlem, okuyacağı ve yazacağı hesapları baştan bildirir. Çalışma zamanı, aynı yazılabilir hesaplara dokunmayan işlemleri paralel yürütür; böylece yoğun bir piyasa, ilgisiz piyasaları yavaşlatmaz.
Rekabetin yüksek olduğu bir hesaba yazan işlemler, o hesabın blok içindeki payı için yarışır. Öncelik ücretlerini ağ genelindeki ortalamalara göre değil, yazdığınız hesaplara göre belirleyin.
Mainnet slot süreleri aşamalı olarak kısaltılıyor ve Alpenglow mevcut oylama ve nihailik protokolünün yerini alacak. Teklif geçerlilik süresini, zaman aşımlarını ve tasfiye pencerelerini ayarlamadan önce ikisini de takip edin.
Yeni bir protokol için varsayılan yol: program için Anchor, testler için LiteSVM ve Surfpool, istemciler için Codama ve uygulama için Kit.
01Programı yazın
Anchor veya Pinocchio
Anchor, çoğu program için önerilen framework'tür; hesap doğrulama, IDL oluşturma ve CPI yardımcıları yerleşik olarak gelir. Her compute unit'in önemli olduğu sık çalışan yollarda, bağımlılığı olmayan bir kütüphane olan Pinocchio'yu tercih edin.
LiteSVM veya Mollusk ile hızlı, süreç içi testler çalıştırın. Ardından entegrasyon testlerini, mainnet hesaplarını talep üzerine yükleyen yerel bir ağ olan Surfpool üzerinde çalıştırın; böylece gerçek havuzlara ve oracle'lara karşı test edebilirsiniz.
Programınızın IDL'sinden türlendirilmiş TypeScript ve Rust istemcileri oluşturun; böylece instruction oluşturucular ve hesap çözücüler her dağıtımla uyumlu kalır.
Bu protokoller, programları ve API'leri için geliştirici dokümanları yayımlar. Kullanıcı fonlarını bir protokol üzerinden yönlendirmeden önce her protokolün dokümanlarını ve denetim raporlarını okuyun.
Swap ve yönlendirme
Bir aggregator API'si ile swap'ları Solana likiditesi üzerinden yönlendirin veya kendi işleminizin içinde bir swap oluşturmak için ham instruction'lar isteyin.
Protokolünüzün ele alması gereken yerleşik davranışlara sahip varlıklar ihraç edin: transfer hook'ları, faiz getiren bakiyeler, ölçeklenmiş arayüz tutarları ve gizli transferler.
DeFi trafiği, kullanıcıların işlemlerinin onaylanmasına en çok ihtiyaç duyduğu anda, yani oynaklık dönemlerinde zirve yapar. Bunları mainnet'ten önce istemcinize ekleyin.
1
Compute limitlerini ve öncelik ücretlerini belirleyin
Compute unit'leri ölçmek için simülasyon yapın, sıkı bir limit belirleyin ve öncelik ücretlerini yazdığınız hesaplardaki son ücretlere göre fiyatlandırın.
v1 işlemler boyut sınırını yükseltir; adres arama tabloları uzun hesap listelerini sıkıştırır. İkisinin de karmaşık rotalar için bir ödünleşimi vardır.
Stake ağırlıklı QoS, stake edilmiş validator'lar tarafından iletilen işlemler için lider kapasitesi ayırır. Bunu destekleyen bir RPC sağlayıcısı seçin.
Blockhash süresinin dolmasını takip edin, işlem onaylanana veya süresi dolana kadar yeniden yayınlayın ve mantığınızın ihtiyaç duyduğu taahhüt düzeyinde onaylayın.
Bir DeFi programı, ilk dağıtımından itibaren kullanıcı fonlarını tutabilir. Programı kimin değiştirebileceğini kontrol edin, nelerin dağıtıldığını kanıtlayın ve programın ne yaptığını izleyin.
Yetkileri bir multisig arkasına alın
Program yükseltme ve yönetici yetkilerini, değişiklikler için zaman kilidi olan bir Squads multisig'inde tutun.
Mainnet'ten önce bağımsız denetimler yaptırın ve bir hata ödül programı yürütün. Solana Vakfı, ekosistem ekipleri için STRIDE güvenlik değerlendirmelerini ve ücretsiz araçları finanse eder.