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

5
Как смоделировать циклическую ссылку между неизменяемыми объектами в C #?
В следующем примере кода у нас есть класс для неизменяемых объектов, который представляет комнату. Север, Юг, Восток и Запад представляют выходы в другие комнаты. public sealed class Room { public Room(string name, Room northExit, Room southExit, Room eastExit, Room westExit) { this.Name = name; this.North = northExit; this.South = southExit; …

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

8
Как решить, должен ли тип объекта данных быть неизменным?
Мне нравится неизменный «шаблон» из-за его сильных сторон, и в прошлом я находил его полезным для разработки систем с неизменными типами данных (некоторые, большинство или даже все). Часто, когда я это делаю, я пишу меньше ошибок, и отладка становится намного проще. Однако мои сверстники в целом уклоняются от неизменности. Они …

8
Неизменные объекты и DDD идут вместе?
Рассмотрим систему, которая использует DDD (также: любую систему, которая использует ORM). Смысл любой системы реалистично, почти в каждом случае использования, состоит в том, чтобы манипулировать этими объектами домена. В противном случае нет никакого реального эффекта или цели. Изменение неизменяемого объекта приведет к тому, что он сохранит новую запись после того, …

4
Есть ли конкретная стратегия проектирования, которая может быть применена для решения большинства проблем курицы и яйца при использовании неизменяемых объектов?
Исходя из опыта ООП (Java), я изучаю Scala самостоятельно. Несмотря на то, что я легко вижу преимущества индивидуального использования неизменяемых объектов, мне трудно понять, как можно создать такое целое приложение. Я приведу пример: Скажем, у меня есть объекты, которые представляют «материалы» и их свойства (я разрабатываю игру, поэтому у меня …

7
В какой момент неизменные классы становятся бременем?
При разработке классов для хранения вашей модели данных, которые я прочитал, может быть полезно создавать неизменяемые объекты, но в какой момент бремя списков параметров конструктора и глубоких копий становится слишком большим, и вы должны отказаться от неизменного ограничения? Например, вот неизменяемый класс для представления именованной вещи (я использую синтаксис C …

2
Как я должен отметить, что класс является неизменным в Java?
Недавно я наткнулся на то, насколько полезны неизменяемые объекты и что, например, если вы передаете элементы конструктору и ваш класс должен быть неизменным, вы должны скопировать эти элементы, если они сами не являются неизменяемыми. Это требует много проверок или знаний о моем проекте, потому что если у меня есть public …

4
Разве функциональная парадигма не слишком расходится с базовым оборудованием, чтобы быть в целом эффективной?
Вдохновленный вопросом от SO: /programming/6623391/how-to-gain-control-of-a-5gb-heap-in-haskell Это может быть долгий спор о многочисленных преимуществах и недостатках FP, но сейчас я бы хотел сузить сферу до основной эффективности FP на современном оборудовании. Тезис: Функциональная парадигма подразумевает неизменность и отсутствие состояния (?), Но аппаратные средства, на которых мы выполняем функциональные программы, являются конечными …

1
Почему добавление к списку в Scala имеет O (n) сложность по времени?
Я только что прочитал, что время выполнения операции добавления для List(: +) растет линейно с размером List. Присоединение к a Listкажется довольно обычной операцией. Почему идиоматический способ сделать это состоит в том, чтобы предварительно добавить компоненты, а затем перевернуть список? Это также не может быть ошибкой проекта, поскольку реализация может …

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

4
При программировании в функциональном стиле, есть ли у вас единое состояние приложения, которое вы вплетаете в логику приложения?
Как мне построить систему, которая имеет все следующее : Использование чистых функций с неизменяемыми объектами. Передайте в функцию только те данные, которые ей нужны, не более (то есть, нет большого объекта состояния приложения) Избегайте слишком большого количества аргументов для функций. Избегайте необходимости создавать новые объекты только с целью упаковки и …

3
Можно ли эффективно представить мутацию объекта-графа с неизменяемыми состояниями?
Я практикую использование неизменного объекта в C ++. Моя личная цель - представить общий граф объектов (в куче) с помощью последовательности неизменяемых графов. Построить сам многовариантный граф не так уж сложно. Проблема в производительности. Для брутфорс-версий требуется полная копия графика, а это было неприемлемо. Я пытался поделиться неизменными узлами. Но …

4
Являются ли неизменяемые / не имеющие состояния синглтоны плохими?
В последнее время произошла какая-то революция против синглетонов, но что с ними не так, если они не имеют гражданства? Я знаю разговоры о чрезмерном использовании и все ... это относится ко всему, а не только к одиночкам.

4
Функциональное программирование - неизменность
Я пытаюсь понять, как работать с неизменяемыми данными в FP (особенно в F #, но с другими FP тоже все в порядке) и сломать старую привычку полного состояния мышления (стиль ООП). Часть выбранного ответа на вопрос здесь повторила свой поиск любых написать окна вокруг проблем, которые решаются с помощью сохраняющего …

6
Каковы недостатки неизменяемых типов?
Я вижу себя использующим все больше и больше неизменяемых типов, когда не ожидается, что экземпляры класса будут изменены . Это требует больше работы (см. Пример ниже), но упрощает использование типов в многопоточной среде. В то же время я редко вижу неизменяемые типы в других приложениях, даже если изменчивость никому не …
12 c#  immutability 

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