C++ design problem
28 отговора
1110 прегледа
Re: C++ design problem
Айде и тоя...
Това не е от Джава... друго е...
Не знам що като гледам Джава код навсякъде виждам Factory & Facade класове. За какво са - еба ли. То и ентерпрайз бийновете за кво са никой не знае, ама важното е да има обем. На кода. И на времето.
Като при изкуствените цици.
Ценители на това винаги ще се намерят.
--
Sometimes the sole purpose of your life is to serve as a warning to others.
Това не е от Джава... друго е...
Не знам що като гледам Джава код навсякъде виждам Factory & Facade класове. За какво са - еба ли. То и ентерпрайз бийновете за кво са никой не знае, ама важното е да има обем. На кода. И на времето.
Като при изкуствените цици.
Ценители на това винаги ще се намерят.
--
Sometimes the sole purpose of your life is to serve as a warning to others.
Re: C++ design problem
Да почна с флейма, че сигурно в 90% от случаите в езици като Джава, Ц# или Ц++, когато се налага да се прилага фактори патърна... просто не се случват в по-динамичните езици, като Джаваскрипт например
.
Re: C++ design problem
едно примерно обяснение - щото factory-то е първия pattern в Design Patterns, и повечето Язваджийчета не стигат по-далеч от там? 
Сигнатура!
Сигнатура!
Re: C++ design problem
Аде пак тоя дето пише глупости само и само лаф да става.
И тоя и оня ще ти кажат че не всичко което не го разбираш непременно е глупост. Просто размърдай си мозъка и помисли, може пък да не си прав.
И тоя и оня ще ти кажат че не всичко което не го разбираш непременно е глупост. Просто размърдай си мозъка и помисли, може пък да не си прав.
Re: C++ design problem
Мани факторито. Сингълтъна е първия патърн в книгата и това е причинило доста повече вреди
.
Re: C++ design problem
0-вият е симпълтън патърн-a :)
усвоява се от хора които даже не четат книги :)
усвоява се от хора които даже не четат книги :)
Re: C++ design problem
Както са казали хората надолу - фабрика ще трябва.
Аз бих направил горе-долу следното:
1. Уточнявам кои са параметрите, определящи какъв точно обект се създава.
2. Дефинирам ObjId - по този ключ ще търся обектите (обикновено int върши идеална работа).
3. Дефинирам метод CreateX на фабриката с параметрите от т. 1. с голям и много грозен switch.
4. За съхраняване на обектите използвам подходящ map.
5. Пиша метод, който на базата на ObjId връща AbstractX* или ме замеря с някакъв ексепшън (може да дефинираш operator[] (ObjId), което превръща фабриката в контейнер на обекти от различен тип).
Аз бих направил горе-долу следното:
1. Уточнявам кои са параметрите, определящи какъв точно обект се създава.
2. Дефинирам ObjId - по този ключ ще търся обектите (обикновено int върши идеална работа).
3. Дефинирам метод CreateX на фабриката с параметрите от т. 1. с голям и много грозен switch.
4. За съхраняване на обектите използвам подходящ map.
5. Пиша метод, който на базата на ObjId връща AbstractX* или ме замеря с някакъв ексепшън (може да дефинираш operator[] (ObjId), което превръща фабриката в контейнер на обекти от различен тип).
Има
От един клас са, но не са един и същ instance. И, освен това, имат общи приятелски методи 
Понякога седя и си мисля, а понякога само си седя ...
Понякога седя и си мисля, а понякога само си седя ...