Ana içeriğe geç

Pyteal

Algorand tarafından geliştirilen Teal dilinin Python üzerinde erişilmesini sağlayan bir kütüphanedir. Sadece Python dili içerisinde erişilebilir. Amacı Algorand zincirinde çalışacak verimli ve etkili akıllı kontrat yazmayı kolay bir şekilde gerçekleştirmektir.

📄️ Pyteal ile Pyhon Üzerinde Akıllı Kontratlar Geliştirme

Pyteal, Algorand Akıllı Kontratları yazmak için geliştirilen TEAL dilini Python üzerinde yazmamızı sağlayan bir kütüphanedir.TEAL diline daha yakından bakacak olursak Algorand Akıllı Kontratlarını yazmamızı sağlayan Stack tabanlı yeni bir kodlama dilidir. Açılımı "Transaction Execution Approval Language (TEAL)" yani Türkçeye çevirisi "İşlem Yürütme Onay Dili" şeklindedir. Bu dil non-Turing Complete bir dildir yani Tamamlanmamış bir Turing dilidir. Bunun anlamı içerisinde branch forwards'a yani dallanmaya izin verirken döngülere yani recursive logic'e izin vermez. Bu nedenle güvenliği ve performansı maksimum düzeyde tutar.Yinede, Teal temelinde bir birleştirici dil. Pyteal ile geliştiriciler sadece Python kullanarak tam işlevli bir akıllı kontrat oluşturabilir, bu kodları kolayca Teal diline çevirebilir.

📄️ Docker Kurulumu

Docker, uygulamalarınızı hızla derlemenizi, test etmenizi ve dağıtmanızı sağlayan bir yazılım platformudur. Docker, yazılımları kitaplıklar, sistem araçları, kod ve çalışma zamanı dahil olmak üzere yazılımların çalışması için gerekli her şeyi içeren konteyner adlı standartlaştırılmış birimler halinde paketler. Docker'ı kullanarak her ortama hızla uygulama dağıtıp uygulamaları ölçeklendirebilir ve kodunuzun çalışacağından emin olabilirsiniz.

📄️ Pyteal Araçlarının Kullanılması

Hadi ilk Pyteal kodumuzu yazarak başlayalım. Bu işlem için "counter" klasörü içerisine girilir ve içerisindeki tüm dosyalar silinerek "step\_01.py" adında bir dosya oluşturulur. Her Algorand Akıllı kontratı temel olarak 2 parça Teal kodu içermektedir. Bunlar onayla anlamına gelen "approvel" ve temizle anlamına gelen "clear" dosyaları olmaktadır. Bu dosyalar Python üzerinde fonksiyon olarak gösterilir ancak çalıştırıldıklarında ".teal" uzantılı dosyalar olmaktadırlar.