Запитання з тегом «design-patterns»

Шаблон дизайну є загальним для багаторазового вирішення часто зустрічається проблеми в розробці програмного забезпечення.


8
Коли не доцільно використовувати схему введення залежності?
З часу навчання (і люблячого) автоматизованого тестування я опинився, використовуючи схему введення залежності майже в кожному проекті. Чи завжди доречно використовувати цю схему під час роботи з автоматизованим тестуванням? Чи існували ситуації, які вам слід уникати використання ін'єкційних залежностей?

8
Критика та недоліки ін'єкції залежності
Ін'єкційна залежність (DI) - добре відома та модна модель. Більшість інженерів знають його переваги, як-от: Можливість / простота ізоляції при тестуванні одиниць Явно визначають залежності класу Сприяння гарному дизайну (наприклад, принцип єдиної відповідальності (SRP)) Увімкнення швидкого переключення реалізацій ( DbLoggerзамість ConsoleLoggerнаприклад) Я вважаю, що існує загальна думка про галузь, що …

10
Чи справді дизайнерські зразки справді важливі?
Я читав «Кодери на роботі» і стикався з тим, що деякі з опитаних у книзі професіоналів не так захоплені дизайнерськими моделями. Я думаю, що для цього є дві основні причини: Шаблони дизайну змушують нас мислити в їх термінах. Іншими словами, винайти щось нове (можливо, краще) майже неможливо. Шаблони дизайну не …

8
Чи існують непотрібні шаблони дизайну в динамічних мовах, як Python?
Я почав читати книгу зразків дизайну GoF. Деякі зразки здаються дуже схожими лише з незначними концептуальними відмінностями. Чи вважаєте ви, що з багатьох моделей деякі непотрібні в такій динамічній мові, як Python (наприклад, тому, що вони заміщені динамічною ознакою)?

2
Що таке “Вільний монад + перекладач”?
Я бачив людей, що розмовляють про Вільну Монаду з Інтерпретатором , особливо в контексті доступу до даних. Яка ця закономірність? Коли я можу захотіти ним скористатися? Як це працює, і як би я його реалізував? Я розумію (з повідомлень , таких як це ) , що мова йде про відокремлюючи …

22
Чи важкий OOP, тому що це не природно?
Часто можна почути, що ООП природно відповідає тому, як люди думають про світ. Але я категорично не погоджуюся з цим твердженням: ми (або, принаймні, я) концептуалізуємо світ з точки зору взаємозв'язків між речами, з якими ми стикаємось, але в центрі уваги ООП розробляються окремі класи та їхні ієрархії. Зауважте, що …

2
Чи є якісь принципи ОО, які практично застосовні для Javascript?
Javascript - це об'єктно-орієнтована мова, заснована на прототипі, але вона може стати класною на різних способах: Написання функцій, які слід використовувати як класи самостійно Використовуйте вишукану систему класів у рамках (наприклад, mootools Class.Class ) Створіть це з Coffeescript На початку я прагну писати код на основі класу в Javascript і …

14
Що повинно мати перевагу: YAGNI чи хороший дизайн?
У який момент YAGNI повинен мати перевагу перед хорошою практикою кодування та навпаки? Я працюю над проектом на роботі і хочу повільно впроваджувати хороші стандарти коду для своїх колег (на даний момент їх немає, і все просто на кшталт взломаних разом без рими чи причини), але після створення серії занять …

6
Де всі схеми дизайну функціонального програмування? [зачинено]
Література з програмування OO рясна моделями дизайну. Більшість книг з об’єктно-орієнтованого програмування присвячують главу чи другу розробці моделей, таких як фабрики та декоратори. Отже, які еквівалентні зразки функціональних мов і чому ще ніхто не написав про них книгу? Чи є щось особливе у функціональних мовах, що заперечує потребу в моделях …

5
Який шаблон дизайну "Виправити все"?
У цій статті про Стівена Фіггінса на linuxdevcenter.com від 2003 року , BitTorrent Брема Коена описаний як використання шаблону дизайну "Виправити все". Менш поширеним підходом, який обох робить BitTorrent важче зрозуміти, але гідний вивчення, є використання Коеном ідентифікації. Процес ідентичний, коли застосовувати його не раз не викликає подальших змін. Коен …

7
Чому я повинен використовувати шаблон MVC?
Здається, кожен, хто робить веб-додатки, сьогодні хоче використовувати MVC для всього. Однак мені важко переконати себе у використанні цього шаблону. Я розумію, що загальна ідея полягає в тому, щоб відокремити резервну логіку від інтерфейсу, який представляє програму. Взагалі, здається, що погляди завжди певною мірою залежать від контролера, що закінчується залежно …

10
Шаблони дизайну, які не є OOP? [зачинено]
Я чув лише, що термін "модель дизайну" використовується для об'єктно-орієнтованого коду, а шаблони GoF включають лише схеми дизайну OOP, але шаблони дизайну - це елегантні рішення для часто виникаючих проблем з програмуванням, правда? Ніщо там не говорить про те, що вони повинні бути обмежені OOP, чи не так? Я хотів …

12
"Все - це карта", чи правильно я це роблю?
Я спостерігав, як Стюарт Сьєрра говорив " Думаючи дані ", і взяв одну з ідей, як принцип дизайну в цій грі, яку я створюю. Різниця в тому, що він працює в Clojure, а я працюю в JavaScript. Я бачу деякі основні відмінності між нашими мовами в тому, що: Clojure - …

7
Наскільки важливо зробити рівень обслуговування?
Я почав створювати додаток у 3 шари (DAL, BL, UI) [він в основному обробляє CRM, деякі звіти про продажі та інвентар]. Колега сказав мені, що я повинен перейти до схеми службового шару, що розробники прийшли до схеми обслуговування зі свого досвіду, і це кращий підхід до проектування більшості програм. Він …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.