Junior — Middle
Proqram təminatı sistemlərinin dizaynı kontekstində Adapter nümunəsinin konseptini necə izah edərsiniz?
sobes.tech Süni İntellekt
AI-dan cavab
Adapter nümunəsi, bir sinfin interfeysini müştərinin gözlədiyi interfeysə çevirmək üçün istifadə olunur. Bu, mövcud kodu dəyişdirmədən uyğunsuz interfeyslərlə işləməyə imkan verir.
Flutter kontekstində, məsələn, əgər xarici sinifiniz və onun metodu sizin interfeyslə uyğun deyilsə, çağırışları "tərcümə edən" adapter yarada bilərsiniz.
Nümunə:
// Fərqli interfeysə malik xarici sinif
class OldApi {
String fetchData() => 'Köhnə API-dən məlumatlar';
}
// Bizim interfeysimiz
abstract class DataSource {
String getData();
}
// Adapter
class ApiAdapter implements DataSource {
final OldApi oldApi;
ApiAdapter(this.oldApi);
@override
String getData() {
return oldApi.fetchData();
}
}
void main() {
OldApi oldApi = OldApi();
DataSource adapter = ApiAdapter(oldApi);
print(adapter.getData()); // Nəticə: Köhnə API-dən məlumatlar
}
Beləliklə, Adapter nümunəsi uyğunsuz komponentləri inteqrasiya etməyə kömək edir və memarlığı təmiz saxlayır.