ب ا ر گ ذ ا ر ی
آموزشی

تزریق وابستگی Get_It در فلاتر

Get_It یک کتابخانه محبوب برای تزریق وابستگی (Dependency Injection) در فریمورک فلاتر است. با استفاده از Get_It، می‌توانید وابستگی‌ها را به صورت متمرکز و قابل تغییر در برنامه فلاتر خود تزریق کنید. برای استفاده از Get_It، مراحل زیر را دنبال کنید: نصب Get_It: ابتدا باید کتابخانه Get_It را به پروژه فلاتر خود اضافه کنید. برای این کار، مطمئن شوید که رده‌بندی get_it در فایل pubspec.yaml پروژه شما درج شده است و سپس با استفاده از ابزار Flutter Packages Get یا دستورات فلاتر در خط فرمان، کتابخانه را نصب کنید. تعریف وابستگی‌ها: در فایل dart یا dart/flutter قسمت بالایی فایل، یک instance از کلاس GetIt را تعریف کنید. می‌توانید از این کلاس برای ثبت وابستگی‌ها و به دست آوردن آن‌ها استفاده کنید. برای مثال: import 'package:get_it/get_it.dart'; GetIt getIt = GetIt.instance; void setupLocator() { // ثبت وابستگی‌ها getIt.registerSingleton<MyService>(MyService()); getIt.registerFactory(() => AnotherService()); } فراخوانی تابع setupLocator: برای ثبت وابستگی‌ها در Get_It، باید تابع setupLocator را در ابتدای برنامه فلاتر خود صدا بزنید. بهتر است این کار را در تابع main فایل main.dart انجام دهید. برای مثال: void main() { setupLocator(); runApp(MyApp()); } دریافت وابستگی‌ها: حالا می‌توانید در هر قسمتی از برنامه خود وابستگی‌ها را دریافت کنید. برای این کار، از متغیر getIt استفاده کنید و به متد get<T> آن وابستگی مورد نظر را به عنوان نوع generic بدهید. برای مثال: MyService myService = getIt.get<MyService>(); این کد از getIt متد get را فراخوانی می‌کند و instance از MyService را برمی‌گرداند. با استفاده از Get_It، می‌توانید وابستگی‌ها را در سراسر برنامه فلاتر خود تزریق کنید و به آن‌ها دسترسی داشته باشید. این الگوی تزریق وابستگی قابلیت‌هایی مانند تزریق مفعولی (Named Injection) و تزریق خودکار (Automatic Injection) را نیز پشتیبانی می‌کند.