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

Питання щодо вирішення проблем та планування рішення за допомогою розробки програмного забезпечення.

6
Поради щодо поширення об'єктно-орієнтованих практик [закрито]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для обміну стеками програмного забезпечення. Закрито 4 роки тому . Я працюю в середній компанії, яка налічує близько 250 розробників. На жаль, багато з них застрягли в процедурному способі мислення, …

3
Як ви можете сказати, чи слід використовувати композитний візерунок або структуру дерева, або третю реалізацію?
У мене є два типи клієнтів, тип " спостерігач " і " суб'єкт ". Вони обоє пов'язані з ієрархією груп . Спостерігач отримає (календар) дані від груп, з якими він асоціюється, у різних ієрархіях. Ці дані обчислюються, комбінуючи дані з "батьківських" груп групи, яка намагається збирати дані (у кожній групі …

9
Як розділити великі, щільно сполучені класи?
У мене є величезні класи з більш ніж 2-х рядків коду (і зростаючого), які я хотів би, якщо можливо, переробляти, щоб мати ще легкий і чистий дизайн. Причина вона така велика, головним чином, в тому, що ці класи обробляють набір карт, до яких потрібно отримати більшість методів, і методи дуже …

4
Чи слід перейменувати перевантажені методи?
Припустимо інтерфейс, що містить ці методи: Car find(long id); List<Car> find(String model); Чи краще перейменувати їх так? Car findById(long id); List findByModel(String model); Дійсно, будь-який розробник, який використовує цей API, не повинен шукати інтерфейс, щоб знати можливі аргументи початкових find()методів. Отже, моє питання є більш загальним: Яка користь від використання …

4
Чи слід надавати перевагу конвенції щодо програмування?
При розробці класу слід підтримувати послідовність у поведінці щодо звичайної практики програмування? Навести конкретний приклад: Поширена умова така: Якщо класу належить об'єкт (наприклад, він створив його), він відповідає за його очищення, як тільки це буде зроблено. Конкретним прикладом може бути .NET, що якщо ваш клас володіє IDisposableоб'єктом, він повинен розпоряджатися …
14 design  .net 

8
За яких обставин блок-схеми все ще є цінним і корисним інструментом?
Коли я вперше розпочав програмування, я сильно покладався на блок-схеми (та міжміські діаграми принтера). Поки я був у класі COBOL, я не зміг почати писати будь-який код, поки інструктор не підписав мою блок-схему. Тоді мені довелося скласти блок-схему для всього. Сьогодні, через двадцять п’ять років, я вважаю себе лише схемою …

10
Що робити, коли представлений жахливий дизайн?
Наша фірма робить веб-сайти. Ми також розробляємо веб-сайти. Але іноді наш клієнт приносить власний дизайн. Це часто робить власний дизайнер, або це той самий дизайн, який вони використовували для чогось іншого. Однак іноді такі конструкції виглядають жахливо. І я говорю по-справжньому непрофесійно, неврівноважено, нехолодно. Але клієнт дуже хоче цього дизайну. …
14 design 

3
Як встановити MVP для рішення Winforms?
У минулому я використовував MVP і MVC, і я віддаю перевагу MVP, оскільки він набагато краще контролює потік виконання. Я створив свою інфраструктуру (класи сховища / сховища) і без проблем використовую їх при жорсткому кодуванні зразкових даних, тому зараз я переходжу на графічний інтерфейс і готую свій MVP. Розділ А …

5
Чому ми не можемо захопити дизайн програмного забезпечення більш ефективно? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 4 роки тому . Як інженери, ми всі "проектуємо" артефакти (будівлі, програми, схеми, молекули ...). Це діяльність (design-the-verb), …

10
Наскільки ефективно «продати» хороший дизайн на великих зустрічах
Я багато разів був свідком сумної трагедії. Ось що відбувається: Огляд дизайну команди для нового проекту. Я бачу просту конструкцію, яка має досить багато отворів. Я випадково згадую дірки та способи їх уникнути. Попередження ігноруються коментарями типу "що" ніколи не трапляється в реальному житті " Врешті-решт відбудуться речі, які "ніколи …
14 design  team 

4
Дублювання коду без очевидної абстракції
Ви коли-небудь стикалися з випадком дублювання коду, коли, дивлячись на рядки коду, ви не могли прилаштувати до нього тематичну абстракцію, яка правдиво описує її роль у логіці? І що ви зробили, щоб вирішити це? Це дублювання коду, тому в ідеалі нам потрібно зробити рефрактор, наприклад, зробити його власною функцією. Але …

3
Кодове з'єднання вводиться DRY та OOD
Я шукаю вказівки щодо сполучення DRY проти коду. Мені не подобається дублювати код, і мені також не подобається з'єднання коду між непов'язаними модулями. Тож я рефактор дублюючого коду, якщо виявляю ідентичний дублікат коду через рік після введення дублювання. Однак у мене все частіше виникають ситуації, коли реальний світ набагато непередбачуваніший, …
14 design  dry  coupling 

3
Яка хороша конструкція для забезпечення зворотної сумісності файлів між різними версіями програмного забезпечення?
Яка хороша конструкція для забезпечення зворотної сумісності типу файлів між різними версіями програмного забезпечення? Наприклад, як Microsoft отримує слова 2007, 2010 та 2013 тощо ... для всіх відкритих файлів docx, але різні видання можуть зберігати більше / менше даних і зберігати дані дещо різними способами, все до одного типу файлів, …

3
Чи повинен DAO бути однотонним чи ні?
Я розробляю API RESTful, і я думаю, що зручно використовувати DAO для своїх ресурсів, оскільки, хоча я планую використовувати лише пам'ять для їх зберігання, я не хочу закривати двері тому, хто використовує мою бібліотеку, якщо вони вирішили використовувати реалізація бази даних для DAO. Моє запитання - чи повинен DAO бути …

7
Чи порушує заводський зразок відкритий / закритий принцип?
Чому цей ShapeFactory використовує умовні висловлювання, щоб визначити, який об'єкт інстанціювати. Чи не потрібно нам змінювати ShapeFactory, якщо ми хочемо додати інші класи в майбутньому? Чому це не порушує принципу відкритого закритого типу?

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