-
Notifications
You must be signed in to change notification settings - Fork 0
Adapter
ადაპტერ დიზაინ პატერნი გვეხმარება მაშინ, როდესაც გვაქვს ორი შეუთავსებელი კლასი და გვჭირდება დავამყაროთ კომუნიკაცია მათ შორის.
ამ ორი კლასიდან როდესაც ერთ-ერთი ემყარება ისეთ ინტერფეისს, რომელსაც მეორე კლასი არ აიმპლემენტირებს, ამ შემთხვევაში ადაპტერი თამაშობს თარჯიმნის როლს ამ ორ კლასს შორის. პატერნი შეიცავს ერთ კლასს, რომელიც პასუხისმგებელია შეუთავსებელი ან დამოუკიდებელი კლასების ან ინტერფეისების ფუნქციონალის ერთმანეთთან მიბმასა და დაკავშირებაზე. პატერნის გამოყენების ნათელი ცხოვრებისეული მაგალითია Card Reader, რომელიც წარმოადგენს "ადაპტერს" მეხსიერების ბარათსა და ლეპტოპს შორის. მეხსიერების ბარათს ვდებთ Card Reader-ში და შემდგომ ლეპტოპში - წასაკითხად. ამ შემთხვევაში, მეხსიერების ბარათი და ლეპტოპი - წარმოადგენენ შეუთავსებელ და დამოუკიდებელ კლასებს, ხოლო მათი დაკავშირება და "ხიდის გაბმა" Card Reader-ის, ანუ ადაპტერის საქმეა. არსებობს ორი სახის ადაპტერ პატერნი
- ა) პირველს ეწოდება Object Adapter Pattern. ამ ტიპის ადაპტერი შეიცავს იმ კლასის ინსტანსს, რომელთანაც კავშირი უნდა დაამყარებინოს კლიენტის ინტერფეისს.
- ბ)მეორე ტიპის Class Adapter Pattern ინსტანსის შენახვის ნაცვლად, inheritance-ს უკეთებს იმ დასაკავშირებელ კლასს.
Class Adapter Class Diagram
Class Adapter Sequence Diagram
Object Adapter Class Diagram
Object Adapter Sequence Diagram