Geri Dön
Fintech Engineering Handbook: parayla çalışan yazılımlar için desenler
SiTech AI Team3 წთ. საკითხავი

Fintech Engineering Handbook: parayla çalışan yazılımlar için desenler

Voytek Pitula, para sistemlerinin arkasındaki mühendislik desenlerine dair ücretsiz bir el kitabı yayımladı: tutarların temsilinden çift kayıtlı deftere, idempotency, webhook'lar, mutabakat ve erişim kontrollerine kadar.

Para sistemleri için üç ilke

Ödemeler, muhasebe, kontrol ve fiat ve kripto için hazine yönetimi deneyimi olan mühendis Voytek Pitula, Fintech Engineering Handbook'ı yayımladı — sistemin ana konusu para olduğunda kullanılan desenlere dair ücretsiz kaynak. Kitap boyunca üç ilke geçiyor. Uydurulmuş veri yok: idempotency, tekilleştirme ve mutabakat sayesinde para asla yoktan yaratılmaz ya da çoğaltılmaz. Kayıp veri yok: tam hassasiyet, en az bir kez teslim, event sourcing, denetim izi ve değişmezlik. Ve güven yok — ne dış sağlayıcılara, ne iç bileşenlere, ne de dünyaya — bu yüzden webhook'lar doğrulanır, veriler bağımsız kaynaklarla çapraz kontrol edilir ve bozuk varsayımlar yüksek sesle başarısız olur.

Parayı temsil etmek ve kaydetmek

Para hareket etmeden önce temsil edilmelidir. Pitula dört yaklaşımı karşılaştırıyor: neredeyse hiçbir zaman iyi bir fikir olmadığını söylediği kayan noktalı sayılar; zincirlenen hesaplamalar için Java BigDecimal gibi keyfî hassasiyet; basamak sayısı ISO 4217 ile belirlenen ve her zaman iki olmayan alt birim tam sayıları; ve hassasiyet kaybının kabul edilemediği durumlarda rasyonel sayılar. Tutar ayrıca çıplak bir JSON sayısı olarak da serileştirilmemeli — çoğu ayrıştırıcı onu double'a çevirir. Yuvarlama kaçınılmazdır, ama açık olmalı, iş tarafından kararlaştırılmalı, mümkün olduğunca seyrek yapılmalı ve toplamları bozduğunda kayıt altına alınmalıdır.

Parayı kaydetmek bir defter demektir: çift kayıtlı muhasebe, değer zamanı, kayıt zamanı ve takas zamanı ayrımı, denetim izi, event sourcing ve değişmezlik; kayıtları düzenlemek yerine ters kayıtlar ve düzeltmeler — ve değişmezlik ile veri silme arasındaki gerilim.

Akışlar, dış dünya ve kontroller

Bir para akışını yürütmek değişmezlik koşullarına, fon rezervasyonuna (hold-and-release; toplam ve kullanılabilir bakiye ayrımıyla), eksi bakiyelerin açıkça ele alınmasına — ki bunlar temsil edilemez hale getirilemez, çünkü dış dünya izin istemez — yeniden denemeler karşısında idempotency'ye ve tam sürdürülebilirliğe dayanır: akışlar kalıcı durum makineleridir, bağımsız bir sürücü onları devam ettirir ve her adım yeniden çalıştırılmaya güvenli olmalıdır. Entegrasyonlarda Pitula, API'lerin kötü davranacağını varsaymayı, her isteği ve yanıtı saklamayı, kotalara dikkat etmeyi ve webhook'ları gerçek değil ipucu saymayı öneriyor: imzayı ham baytlar üzerinde doğrula, yükü sakla, hızlıca onayla, sonra yetkili durum için API'ye sor. Güvenilir yayın outbox deseni ya da CDC ile yapılır; mutabakat ise aralardan sızanı yakalayan güvenlik ağıdır. Son bölüm görevler ayrılığı ve “dört göz” onayı, düzenli gözden geçirmelerle en az yetki ilkesi ve koddan üretime denetlenebilir izi ele alıyor.

Ekler ve dürüst sınırlar

Ekler üç uçtan uca akışı anlatıyor — 0,5 ETH'lik bir kripto çekimi, ödeme hizmeti sağlayıcısı üzerinden kartla para yatırma ve uygulama içinde 1.000 avronun cashback'li USDC'ye dönüştürülmesi — ve muhasebe, ödemeler, piyasalar, kripto, KYC ile AML üzerine bir okuma listesi veriyor. Pitula, metnin çoğunu kendi eliyle yazdığını, yapay zekâyı düzenleme, yapılandırma ve araştırma için kullandığını; kitabın yaşayan bir belge olduğunu ve geri bildirimin GitHub üzerinden alındığını, ayrıca hukuki ya da finansal tavsiye olmadığını belirtiyor.

SSiTech

SiTech — AI destekli web geliştirme

Hızlı ve modern web siteleri kuruyor, AI'yı gerçek iş akışlarına taşıyoruz. Projeniz veya sorunuz mu var? Yardımcı olmaktan mutluluk duyarız.