প্রকল্প সম্পর্কে

The Composable Architecture (TCA) হলো একটি Swift লাইব্রেরি, যা অ্যাপ্লিকেশন তৈরি করতে একটি সুসংগঠিত ও ধারাবাহিক পদ্ধতি প্রদান করে। এটি SwiftUI এবং UIKit সমর্থন করে এবং iOS, macOS, iPadOS, visionOS, tvOS এবং watchOS-এ ব্যবহার করা যায়। একটি ফিচার চারটি প্রধান ধারণার চারপাশে সংগঠিত হয়: State ফিচারটি রেন্ডার ও চালানোর জন্য প্রয়োজনীয় ডেটা ধারণ করে; Action ব্যবহারকারীর ইনপুট, ইভেন্ট, নোটিফিকেশন এবং ইফেক্টের প্রতিক্রিয়া উপস্থাপন করে; Reducer বর্ণনা করে state কীভাবে পরিবর্তিত হয় এবং কোন ইফেক্টগুলো কার্যকর করা উচিত; এবং Store রানটাইম পরিচালনা করে, action গ্রহণ করে এবং UI-এর কাছে state observation প্রকাশ করে। লাইব্রেরিটি ডেভেলপারদের বড় ফিচারকে ছোট, পুনঃব্যবহারযোগ্য অংশে ভাগ করে আবার একত্রে কম্পোজ করতে সহায়তা করার জন্য ডিজাইন করা হয়েছে। এটি API অনুরোধের মতো বাইরের কাজ পরিচালনার জন্য একটি Effect মডেল প্রদান করে, সাথে একটি ডিপেন্ডেন্সি-ম্যানেজমেন্ট সিস্টেম, যা অ্যাপ্লিকেশনে লাইভ ইমপ্লিমেন্টেশন এবং টেস্টে ওভাররাইড বা মক করা ইমপ্লিমেন্টেশন সরবরাহ করতে পারে। একটি TestStore টেস্টকে action পাঠাতে, ধাপে ধাপে state পরিবর্তন যাচাই করতে এবং ইফেক্ট থেকে প্রাপ্ত action যাচাই করতে দেয়। রিপোজিটরিতে ডকুমেন্টেশন এবং উদাহরণ প্রকল্প রয়েছে, যেগুলো getting started, effects, navigation, reusable components, search, speech recognition, todos, voice memos এবং আরও অনেক কিছু কভার করে। এতে dependencies, testing, navigation, shared state, performance, concurrency এবং bindings নিয়ে আর্টিকেলও রয়েছে। ইনস্টলেশন Xcode-এ Swift Package Manager-এর মাধ্যমে সমর্থিত, সাথে একটি shared framework বা Swift package থেকে একাধিক target-এ লাইব্রেরি শেয়ার করার নির্দেশনা রয়েছে।