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

Шаблон дизайну є загальним для багаторазового вирішення часто зустрічається проблеми в розробці програмного забезпечення. Використовуйте цей тег для питань, коли у вас виникають проблеми з реалізацією моделей дизайну. Не використовуйте цей тег у питаннях відповідності тексту тексту. Під час використання цього тегу для впровадження важких питань - позначте мову коду, на якій написано реалізацію.

12
Концептуально, як перетворення працює в грі?
Мені було цікаво, як повтор може бути реалізований у грі. Спочатку я думав, що буде лише командний список кожного гравця / ай дії, який було зроблено в грі, і він потім «переграє» гру та дозволить двигунові відображати як завжди. Тим НЕ менше, я подивився на повторах в FPS / RTS …

8
Найкращий спосіб побудувати плагін-систему з Java
Як би ви реалізували плагін-систему для свого додатка Java? Чи можлива наявність простої у використанні (для розробника) системи, яка досягає наступного: Користувачі поміщають свої плагіни у підкаталог програми Плагін може забезпечити екран конфігурації Якщо ви використовуєте рамку, чи сумісна ліцензія з комерційними розробками?

13
Як реалізувати шаблон Builder в Котліні?
Привіт, я новачок у світі Котліна. Мені подобається те, що я бачу до цих пір, і почав думати про перетворення деяких наших бібліотек, які ми використовуємо в нашому додатку, з Java на Котлін. У цих бібліотеках повно Pojos із сетерами, геттерами та класами Builder. Тепер я погуглив, щоб знайти, який …


14
Чи є елегантний спосіб змусити кожен метод у класі починати з певного блоку коду?
У мене є клас, де кожен метод починається однаково: class Foo { public void bar() { if (!fooIsEnabled) return; //... } public void baz() { if (!fooIsEnabled) return; //... } public void bat() { if (!fooIsEnabled) return; //... } } Чи є приємний спосіб вимагати (і, сподіваюся, не писати кожного …

10
Шаблони дизайну: Анотація Фабрика проти заводський метод
Примітка. Питання - в кінці публікації. Я прочитав інші потоки stackoverflow щодо методу абстрактного заводу проти фабрики . Я розумію наміри кожного зразків. Однак я не чіткий щодо визначення. Фабричний метод визначає інтерфейс для створення об'єкта, але дозволяє підкласам вирішувати, який із них використовувати. Фабричний метод дозволяє класам відкладати екземпляри …

6
Як реалізувати потік активності в соціальній мережі
Я розвиваю власну соціальну мережу, і в Інтернеті не знайшов прикладів реалізації потоку дій користувачів ... Наприклад, як фільтрувати дії для кожного користувача? Як зберігати події дії? Яку модель даних та об'єктну модель можна використовувати для потоку дій та для самих дій?

6
Чи можливо створити статичні класи в PHP (наприклад, у C #)?
Я хочу створити статичний клас у PHP, щоб він поводився так, як це робиться в C #, так Конструктор автоматично викликається при першому виклику до класу Ніяких екземплярів не потрібно Щось такого роду ... static class Hello { private static $greeting = 'Hello'; private __construct() { $greeting .= ' There!'; …

11
Чи є регістр використання для одиночних клавіш з доступом до бази даних в PHP?
Я отримую доступ до своєї бази даних MySQL через PDO. Я налаштовував доступ до бази даних, і першою моєю спробою було використання наступного: Перше, що я подумав global: $db = new PDO('mysql:host=127.0.0.1;dbname=toto', 'root', 'pwd'); function some_function() { global $db; $db->query('...'); } Це вважається поганою практикою. Після невеликого пошуку я закінчив …

11
Шаблон Builder в ефективній Java
Нещодавно я почав читати «Ефективна Java» Джошуа Блоха. Думаю, що модель «Будівельник» [Пункт 2 у книзі] виявилася дуже цікавою. Я намагався реалізувати це у своєму проекті, але були помилки компіляції. Далі, по суті, те, що я намагався зробити: Клас з декількома атрибутами та його клас конструктора: public class NutritionalFacts { …

7
Чи є ServiceLocator антитілом?
Нещодавно я прочитав статтю Марка Семана про антидіапазон службового пошуку. Автор вказує на дві основні причини, по яких ServiceLocator є антидіаграмою: Проблема використання API (з якою я прекрасно вживаюсь) Коли клас використовує сервіс-локатор, дуже важко помітити його залежності, оскільки, в більшості випадків, клас має лише один конструктор PARAMETERLESS. На відміну …

4
MVC (Laravel), де додати логіку
Скажімо, щоразу, коли я роблю операцію CRUD або змінюю відносини певним чином, я також хочу зробити щось інше. Наприклад, щоразу, коли хтось публікує публікацію, я також хочу щось зберегти в таблиці для аналізу. Можливо, не найкращий приклад, але в цілому є багато цього "згрупованого" функціоналу. Зазвичай я бачу такий тип …

3
Шаблон дизайну спостерігача проти «слухачів»
Мені здається, що модель дизайну Observer, описана в GOF, насправді те саме, що слухачі, знайдені в різних наборах інструментів. Чи є різниця між поняттями, чи слухачі та спостерігачі справді одне й те саме. (Я не шукаю конкретної реалізації комп'ютерної мови, я просто хочу зрозуміти різницю (якщо така є) з точки …

10
База даних значень атрибутів суб'єкта господарювання порівняно із суворою реляційною моделлю електронної комерції
Можна з упевненістю сказати, що модель бази даних EAV / CR погана. Це сказав: Питання: Яку модель, техніку чи зразок бази даних слід використовувати для роботи з "класами" атрибутів, що описують продукти електронної комерції, які можна змінити під час виконання? У гарній базі даних електронної комерції ви будете зберігати класи …

8
Відмінності між проксі і декоративними малюнками
Чи можете ви дати хороше пояснення, в чому різниця між проксі та декоратором ? Основна відмінність, яку я бачу, полягає в тому, що коли ми припускаємо, що Proxy використовує композицію, а Decorator використовує агрегацію, то, здається, зрозуміло, що за допомогою декількох (один або більше) декораторів ви можете змінювати / додавати …

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