Andriy Buday / публикации

СТАТЬЯ Дизайн Патерн - ФАБРИЧНИЙ МЕТОД (Factory Method)

Уявіть, що ваша аплікація є дуже складною і так склалося, що ви використовуєте два логінг провайдери - один Log4Net та інший Enterprise.Logging. Ваш колега догадався помістити вибір провайдера прямо у конфіг файл. Так як ви всю логіку логування абстрагуєте за інтерфейсом ILogger, то вам б також хотілося приховати специфіку створення конкретного провайдера та винести її в окремий клас. Фабричний Метод Як на мене то цей дизайн патерн є одним із найбільш відомих і найпростіших. Я переконаний, що бі...

СТАТЬЯ Дизайн Патерн - БУДІВЕЛЬНИК (Builder)

Уявіть, що ви володієте магазином (гаражом) по продажу ноутбуків в якому можна вибирати конфігурацію прямо біля каси (як піццу в піццерії). Вам слід створити систему, що дозволить легко будувати будь-яку конфігурацію ноутбука для будь-якого покупця. Як ви можете це зробити легко? БУДІВЕЛЬНИК Будівельник (Builder) це породжувальний дизайн патерн, що дозволяє створити повний Продукт (Product) шляхом додавання певних частин, таких як процесор, пам'ять, жорсткий диск, батарея і т.д. В кінці кінців в...

СТАТЬЯ Дизайн Патерн - ВІДВІДУВАЧ (Visitor)

Уявімо собі, що ви нарешті спромоглися створити свою власну компанію, і оскільки вона пристойного розміру, ви вирішили орендувати для неї цілу будівлю. Оскільки у нас держава дуже хороша і дбає про підприємства, щоб у них усе відповідало вимогам, постійно висилаються всякі перевірки. Причому правила, по яких перевіряють ваше підприємство, постійно міняються. Найближчим часом вам слід буде прийнятати багато відвідувачів (visitors), таких як електрик (electrician), сантехнік (plumber), податківець...

СТАТЬЯ Дизайн Патерн - ХРАНИТЕЛЬ (Memento)

Якщо ви коли небуть бавилися в стрілялки, то дуже вірогідно, що ви знайомі із значенням хот-кеїв F5 та F9. I навіть якщо ви таки не мали шансу в житті погратися в "шпільки", ідея швидкого збереження поточного стану і відновлення до нього ідеологічно є знайомою (навіть якщо це було Ctrl+Z у програмі Word). Натискаючи F5 ви зберігаєте поточне місце знаходження і рівні життя/броні та, можливо, ще якусь інформацію, наприклад, скільки монстрів було вже вбито на даній позиції (напевно для того, щоб не...

СТАТЬЯ Дизайн Патерн - ІТЕРАТОР (Iterator)

Уявіть, що ви розробник статегічної воєнної гри. Армія має складну структуру: вона складається із героя і трьох груп. Коли Король видає указ і ресурси щоб полікувати всіх воїнів (Герой також є воїном) Ви хочете проітерувати по всіх солдатах і викликати метод treat() на кожному інстансі. Як це можна зробити легко і без вникання в структуру Арімії? ІТЕРАТОР Ітератор це патерн який дозволяє доступатися почергово до елементів будь-якої колекції без вникання в суть її імплементації. Таким чином в зас...

СТАТЬЯ Дизайн патерн - ПРОТОТИП (Prototype)

Чи ви коли небуть процювали із Outlook або ж якимось іншим календарем, що дозволяє копіювати календарні зустрічі із одного дня на інший? Для прикладу уявімо собі, що ваш друг назначив маленьку вечірку із пивом на п'ятницю, 22 жовтня, також він виділив час під вечірку із 7-мої вечора до 3-тьої ночі, поставив високий приорітет, а ще він зазначив, що вечірка в п'ятницю має бути всім до душі, оскільки то останній робочий день. Оскільки ви були запрошені, вечірка пройшна надзвичайно добре. Під кінець...

<1>

Ищите нас в интернетах!

Andriy Buday

Инфо

Сайт:
Twitter:
Количество публикаций: 6

I'm Developer and I'm using magic RoadMap that will lead me to Success. I have a lot of stuff in my mind that I want to accomplish, those things are definitely parts of the Map, but just need to clue them all together and move to next point efficiently and quickly - I'm not immortal :( and everyone of us, so why the *** stay lying down and wait for manna from heaven. :)

Want to know more? Go and check out my blog: http://andriybuday.com/

Комментарии

Свежие вакансии