![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
не путайте статический класс и синглетон, да первый много где может его заменить, но когда нам нужно реализовать IStorageManager, причем у реализации должен быть лишь один объект(например это TapeStorageManager), то тут нужен именно синглетон. Цитата:
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|||
![]() |
![]() |
![]() |
#12 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
![]()
При чём здесь фрагментация? Если у вас миллион маленьких структур, то да, заведомо быстрее сразу объявить весь массив. А если несколько тяжёлых объектов, то пускай рантайм сам решает, что лучше - лишний раз собрать мусор или расширить кучу.
|
![]() |
![]() |
![]() |
#13 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
+ сборщик удалит мусор не сразу, и мы в итоге получим или фриз на сборку или OutOfMemory быстрее чем если бы оставили объект. напомню что это про нехватку памяти и принцип создал-разрушил для переиспользумых объектов(а речь все же о синглетоне, он поидее должен). Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#14 | ||
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
![]() Цитата:
А OutOfMemory мы, скорее всего, получим только в вашем варианте. Если ни в одном потоке впереди по ходу выполнения не встречается ссылка на объект, он подлежит сборке; не в первом поколении, так во втором. Области досягаемости определяются джиттером, на скорость это практически не влияет. Цитата:
![]() Последний раз редактировалось ds.Dante; 18.03.2016 в 16:05. |
||
![]() |
![]() |
![]() |
#15 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
вообще я хотел именно показать что когда ресурсов уже мало лучше как можно меньше терять объекты создавая новые, вместо переиспользования. а то потом потом вижу код вида Код:
напомню что там был контекст недостатка памяти. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#16 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
![]() |
![]() |
![]() |
![]() |
#17 | |
ios developer
Старожил
Регистрация: 16.11.2007
Сообщений: 2,885
|
![]() Цитата:
Делайте что хотите, но чтобы через полчаса в лесу было светло, сухо и медведь!
|
|
![]() |
![]() |
![]() |
#18 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
![]()
crazy horse, типичный юзкейc, имхо, другой: интерфейс связи с сервером реализован обычным HTTP и тестовой заглушкой. В конструктор клиента в рабочем коде передаём первый, в большинстве юнит-тестов - второй.
Последний раз редактировалось ds.Dante; 22.03.2016 в 13:59. |
![]() |
![]() |
![]() |
#19 |
ios developer
Старожил
Регистрация: 16.11.2007
Сообщений: 2,885
|
![]()
Типичный, но мне хотелось вытащить на свет божий именно рантайм. Понятно, что и с юниттестами оно все по другому. Тем более, что нужная инфраструктура давно уже генерится рубёвым скриптом одновременно и в тестах и в коде.
Делайте что хотите, но чтобы через полчаса в лесу было светло, сухо и медведь!
|
![]() |
![]() |
![]() |
#20 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,089
|
![]()
антипаттерном является отношение к паттернам, как к серебряным пулям. Паттерны - примеры и не более того.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Что такое отладчик с чем его едят и как его использовать | Dimka-novitsek | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 20.03.2014 17:59 |
Класс-контейнер? Что это такое и с чем его «едят»? | 4atty | Общие вопросы C/C++ | 1 | 12.03.2013 00:43 |
Что такое Flash и с чем его едят... | coolartemka | JavaScript, Ajax | 1 | 18.05.2011 02:40 |
<< >> & ^ | с чем это едят и что это такое? | pufystyj | Общие вопросы C/C++ | 4 | 30.03.2011 13:59 |