Вопросы с тегом «design»

Вопросы о решении проблем и планировании решения посредством разработки программного обеспечения.

2
лучшие практики работы фабрики Python
Предположим, у меня есть файл, foo.pyсодержащий класс Foo: class Foo(object): def __init__(self, data): ... Теперь я хочу добавить функцию, которая Fooопределенным образом создает объект из необработанных исходных данных. Должен ли я поместить его как статический метод в Foo или как другую отдельную функцию? class Foo(object): def __init__(self, data): ... # …
30 design  python 

8
Сначала передний конец или сначала задний. Из двух, что является хорошей практикой проектирования системы?
У меня сейчас есть клиент, требующий от меня разработки системы зачисления в школу. Теперь я впервые сталкиваюсь с подобными проблемами. Большая часть прошлого программного обеспечения, которое я создал, не настолько сложна. Я знаю, что большинство из вас создали сложные программы, я просто хочу, чтобы вы посоветовались по этому поводу. Должен …

6
Понимание «программирования для интерфейса»
Я часто сталкивался с понятием «программирование для интерфейса вместо реализации», и я думаю, что понимаю, что это значит. Но я хочу убедиться, что я понимаю, что это преимущества и возможные реализации. «Программирование на интерфейсе» означает, что, когда это возможно, следует ссылаться на более абстрактный уровень класса (интерфейс, абстрактный класс или …

6
Можете ли вы реализовать «объектно-ориентированное» программирование без ключевого слова класса?
Скажем, мы хотим предоставить абстракцию «счета» в банке. Вот один из подходов, использующий functionобъект в Python: def account(): """Return a dispatch dictionary representing a bank account. >>> a = account() >>> a['deposit'](100) 100 >>> a['withdraw'](90) 10 >>> a['withdraw'](90) 'Insufficient funds' >>> a['balance'] 10 """ def withdraw(amount): if amount > dispatch['balance']: …

7
В чем разница между «сокрытием данных» и «инкапсуляцией»?
Я читаю «Параллелизм Java на практике», и там говорится: «К счастью, те же объектно-ориентированные методы, которые помогают вам писать хорошо организованные, поддерживаемые классы, такие как инкапсуляция и скрытие данных, могут также помочь вам создать поточно-ориентированный классы «. Проблема № 1 - я никогда не слышал о сокрытии данных и не …

12
В чем проблемы разработчика с полезными сообщениями об ошибках? [закрыто]
Закрыто . Этот вопрос нуждается в деталях или ясности . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Добавьте детали и проясните проблему, отредактировав этот пост . Закрыто 5 лет назад . Меня по-прежнему поражает, что в наши дни продукты, которые годами используются под ленточным движением, созданные командами …

12
Насколько велика для класса?
Я давно работаю разработчиком (мне 49 лет), но я довольно новичок в объектно-ориентированной разработке. Я читал об ОО со времен Эйфеля Бертранда Мейера, но мало занимался программированием. Дело в том, что каждая книга по ОО-дизайну начинается с примера лодки, автомобиля или какого-либо обычного объекта, который мы часто используем, и они …

3
Репозитории DDD в приложении или доменном сервисе
В настоящее время я изучаю DDD, и у меня возникли некоторые вопросы относительно того, как управлять репозиториями с DDD. На самом деле, я встретил две возможности: Первый Первый способ управления службами, которые я прочитал, состоит в том, чтобы внедрить репозиторий и модель домена в службу приложений. Таким образом, в одном …

5
Является ли хорошей практикой использование объектов-сущностей в качестве объектов передачи данных?
Мне интересно, потому что, если это так, почему Entity Framework не предлагает логику для создания нового объекта с такими же свойствами для передачи данных между слоями? Я использую объекты сущностей, которые я генерирую с помощью структуры сущностей.

6
Есть ли шаблон дизайна, который устраняет необходимость проверять флаги?
Я собираюсь сохранить некоторую полезную нагрузку строки в базе данных. У меня есть две глобальные конфигурации: шифрование компрессия Они могут быть включены или отключены с помощью конфигурации таким образом, что либо только один из них включен, либо включены, либо оба отключены. Моя текущая реализация такова: if (encryptionEnable && !compressEnable) { …

2
Есть ли названный анти-паттерн для исторически выросшего программного обеспечения? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 5 лет назад . Существует ли антипаттерн, описывающий исторически сложившуюся программную систему, в которой несколько разработчиков просто добавили …

6
Использование реляционной базы данных против объектов JSON для данных событий / действий
Я работаю над проектом, в котором я пытаюсь решить, использовать ли стандартную реляционную базу данных SQL или объекты JSON для хранения данных о событии или деятельности. Проект будет хранить данные о нескольких типах событий, поэтому я решил просто описать один тип событий для этого вопроса. Событие с живой музыкой (полностью …
28 design  sql  json 

5
Дизайн в одной команде, кодирование в другой
Я буду участвовать в проекте, где весь проект программного обеспечения сделан местной командой, и эти проекты отправлены оффшорной команде для кодирования. Это первый раз, когда я сталкиваюсь с проектом с такими характеристиками, и для меня это кажется странным: менеджеры ожидают, что мы создадим очень подробные проектные документы, поэтому у оффшорной …

10
Простое и сложное (но эффективное по производительности) решение - какое выбрать и когда?
Я программировал пару лет и часто оказывался перед дилеммой. Есть два решения - один простой, то есть простой подход, легче понять и поддерживать. Это предполагает некоторую избыточность, некоторую дополнительную работу (дополнительный ввод-вывод, дополнительную обработку) и, следовательно, не является наиболее оптимальным решением. но другой использует сложный подход, трудный для реализации, часто …

6
Объектно-ориентированная «нормализация»
В программировании баз данных есть метод под названием «нормализация», который вы делаете с данными, которые хотите сохранить. Кто-нибудь пытался применить эту концепцию к объектному дизайну? Как ты? Как это получилось? Редактировать: чтобы расширить / уточнить, нормализация базы данных - это больше, чем набор принципов для уменьшения избыточности. На самом деле …
28 design 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.