Python Adaptor pattern -


say have following class

class multiplepeopleinbook(object):     def __init__(self, names, ages, book_title):         self._names = names         self._ages = ages         self._book_title = book_title      @property     def names(self):         return self._names      @property     def ages(self):         return ages      @property     def book_title(self):         return book_title 

now need have class, 1 represents book 1 person in it.

class singlepersoninbook(object):     def __init__(self, multiple_person_object):         self._person = multiple_person_object      @property     def name(self):         return self._person.names[0]      @property     def age(self):         return self._person.ages[0] 

so, create multiplepeopleinbook object this:

mpib = multiplepeopleinbook(['bob', 'foo'], [12,24],'foo book') 

and singlepersoninbook following:

spib = singlepersoninbook(multiplepeopleinbook(['bar'], [122], 'bar book') 

questions: setting correctly?

how book_title spib? need have method in singlepersoninbook adapter? if so, point of making adapter?

can write init method spib this:

def __init__(self, name, age, book_title):     self._person = multiplepeopleinbook([name],[age],boo_title) 

this way, create spib object this:

spib = singlepersoninbook('bar', 122, 'bar book') 

this looks cleaner me

how book_title spib? need have method in singlepersoninbook adapter? if so, point of making adapter?

yes, do. making adapter pointless in example. better solution make abstraction people in book 2 implementations (single , multi). basic question - need ?

can write init method spib this:

def __init__(self, name, age, book_title):     self._person = multiplepeopleinbook([name],[age],boo_title) 

this way, create spib object this:

spib = singlepersoninbook('bar', 122, 'bar book') 

this looks cleaner me

you can, simple abstraction better in case.


Comments

Popular posts from this blog

basic authentication with http post params android -

vb.net - Virtual Keyboard commands -

How to get multiresult with multicondition in Sql Server -