منصوبے کے بارے میں

The Composable Architecture (TCA) ایک Swift لائبریری ہے جو ایپلیکیشنز کو منظم اور مستقل انداز میں بنانے کے لیے استعمال ہوتی ہے۔ یہ SwiftUI اور UIKit کو سپورٹ کرتی ہے اور iOS، macOS، iPadOS، visionOS، tvOS اور watchOS پر استعمال کی جا سکتی ہے۔ ایک فیچر چار بنیادی تصورات کے گرد منظم ہوتا ہے: State وہ ڈیٹا رکھتی ہے جو فیچر کو رینڈر اور چلانے کے لیے درکار ہوتا ہے؛ Action صارف کے ان پٹ، ایونٹس، نوٹیفیکیشنز اور ایفیکٹ جوابات کی نمائندگی کرتا ہے؛ Reducer بیان کرتا ہے کہ اسٹیٹ کیسے بدلتی ہے اور کون سے ایفیکٹس چلنے چاہئیں؛ اور Store رن ٹائم کو چلاتا ہے، ایکشنز وصول کرتا ہے اور UI کو اسٹیٹ کے مشاہدات فراہم کرتا ہے۔ یہ لائبریری ڈویلپرز کی مدد کے لیے بنائی گئی ہے تاکہ وہ بڑے فیچرز کو چھوٹے، دوبارہ استعمال کے قابل حصوں میں تقسیم کر سکیں اور پھر انہیں دوبارہ جوڑ سکیں۔ یہ باہر کے کام، جیسے API درخواستوں، کو سنبھالنے کے لیے Effect ماڈل فراہم کرتی ہے، ساتھ ہی ایک ڈیپنڈنسی مینجمنٹ سسٹم بھی دیتی ہے جو ایپلیکیشن میں لائیو امپلیمنٹیشنز اور ٹیسٹس میں اوور رائیڈ یا موک امپلیمنٹیشنز فراہم کر سکتا ہے۔ ایک TestStore ٹیسٹس کو ایکشنز بھیجنے، اسٹیٹ کی تبدیلیوں کو مرحلہ وار جانچنے، اور ایفیکٹس سے موصول ہونے والے ایکشنز کی تصدیق کرنے کی اجازت دیتا ہے۔ اس ریپوزٹری میں دستاویزات اور مثال کے پروجیکٹس شامل ہیں جو شروعات، ایفیکٹس، نیویگیشن، دوبارہ استعمال کے قابل اجزاء، سرچ، اسپیچ ریکگنیشن، ٹوڈوز، وائس میموز اور مزید کا احاطہ کرتے ہیں۔ اس میں ڈیپنڈنسیز، ٹیسٹنگ، نیویگیشن، مشترکہ اسٹیٹ، کارکردگی، کنکرنسی اور بائنڈنگز پر مضامین بھی شامل ہیں۔ انسٹالیشن Xcode میں Swift Package Manager کے ذریعے سپورٹ کی جاتی ہے، ساتھ ہی کسی مشترکہ فریم ورک یا Swift پیکیج سے لائبریری کو متعدد ٹارگٹس میں شیئر کرنے کی رہنمائی بھی دی گئی ہے۔