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

Enum (также перечисление) - это тип данных, состоящий из набора именованных значений, называемых элементами, членами или перечислителями типа. Имена перечислителей обычно являются идентификаторами, которые действуют в языке как константы и часто предопределены с подразумеваемым порядком.

8
Зачем вам хранить перечисление в БД?
Я видел ряд вопросов, таких как этот , спрашивающих совета о том, как хранить перечисления в БД. Но мне интересно, зачем ты это делаешь. Итак, допустим, что у меня есть сущность Personс genderполем и Genderперечислением. Тогда в моей личной таблице есть пол столбца. Помимо очевидной причины обеспечения правильности, я не …
69 database  enum 

7
Использование перечисляемых областей для битовых флагов в C ++
enum X : int(С #) или enum class X : int(C ++ , 11) представляет собой тип , который имеет скрытое внутреннее поле , intкоторый может содержать любое значение. Кроме того, Xв перечислении определен ряд предопределенных констант . Можно привести перечисление к его целочисленному значению и наоборот. Это все верно …

3
Является ли расточительным создание новой таблицы базы данных вместо использования типа данных enum?
Предположим, у меня есть 4 вида услуг, которые я предлагаю (они вряд ли будут часто меняться): тестирование дизайн программирование Другие Предположим, у меня есть 60-80 реальных услуг, каждая из которых подпадает под одну из вышеуказанных категорий. Например, «сервис» может быть «Тестовая программа с использованием техники A» и имеет тип «Тестирование». …

5
Зачем нам нужны перечисления в динамически типизированных языках?
Я читал некоторый код здесь и увидел, что enum используется для хранения имен тегов html. Почему мы когда-либо должны это делать? Какую выгоду я получу от этой стратегии? Я знаю, насколько полезны перечисления в скомпилированных или статически типизированных языках, но когда я вижу перечисления в динамически типизированных языках, мне становится …

3
Как представить (перечислить) типы в публичном API
Я работаю над простым API-интерфейсом, который хочу использовать для собственного клиента и который будет открыт для публики в будущем. У меня есть объекты «Предмет», которые могут иметь разные «типы». Тип является C "typedef enum", на данный момент у меня есть: typedef enum { ItemTypeBool, ItemTypeNumber, ItemTypeDate, } ItemType; (Я могу …

5
Создают ли перечисления хрупкие интерфейсы?
Рассмотрим пример ниже. Любое изменение в перечислении ColorChoice влияет на все подклассы IWindowColor. Имеют ли перечисления тенденцию вызывать хрупкие интерфейсы? Есть ли что-то лучше, чем enum для большей полиморфной гибкости? enum class ColorChoice { Blue = 0, Red = 1 }; class IWindowColor { public: ColorChoice getColor() const=0; void setColor( …

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

9
Следует ли проверять значения перечисления с помощью модульных тестов?
Если у вас есть только перечисление со значениями (нет методов, которые можно было бы сделать в Java), и это перечисление является частью бизнес-определения системы, следует ли писать для него модульные тесты? Я думал, что они должны быть написаны, даже если они могут показаться простыми и избыточными. Я считаю, что то, …

3
Каковы недостатки реализации синглтона с перечислением Java?
Традиционно синглтон обычно реализуется как public class Foo1 { private static final Foo1 INSTANCE = new Foo1(); public static Foo1 getInstance(){ return INSTANCE; } private Foo1(){} public void doo(){ ... } } С помощью перечисления Java мы можем реализовать синглтон как public enum Foo2 { INSTANCE; public void doo(){ ... …
14 java  singleton  enum 

5
оператор switch - обработка случая по умолчанию, когда он не может быть достигнут
Если я использую оператор switch для обработки значений из перечисления (принадлежащего моему классу) и у меня есть регистр для каждого возможного значения - стоит ли добавлять код для обработки случая «по умолчанию»? enum MyEnum { MyFoo, MyBar, MyBat } MyEnum myEnum = GetMyEnum(); switch (myEnum) { case MyFoo: DoFoo(); break; …

5
Можно ли пойти против названий all-caps для перечислений, чтобы упростить их представление String?
Несколько раз я видел, как люди используют заглавные или даже строчные имена для перечисления констант, например: enum Color { red, yellow, green; } Это делает работу с их строковой формой простой и легкой, например, если вы хотите throw new IllegalStateException("Light should not be " + color + "."). Это кажется …
14 java  conventions  enum 

4
Не правильно ли использовать флаги для «группировки» перечислений?
Насколько я понимаю, [Flag]перечисления обычно используются для вещей, которые можно комбинировать, когда отдельные значения не являются взаимоисключающими . Например: [Flags] public enum SomeAttributes { Foo = 1 << 0, Bar = 1 << 1, Baz = 1 << 2, } Если какое - либо SomeAttributesзначение может быть комбинацией Foo, Barи …
12 c#  .net  readability  enum 

8
Плохо ли включать все перечисления в один файл и использовать его в нескольких классах?
Я начинающий разработчик игр, я работаю над случайными инди-играми, и какое-то время я занимался чем-то, что поначалу казалось плохой практикой, но я действительно хочу получить ответ от некоторых опытных программистов здесь. Допустим, у меня есть файл с именем, в enumList.hкотором я объявляю все перечисления, которые хочу использовать в своей игре: …

7
Является ли хорошей практикой иметь специальное значение «ALL» в перечислении
Я разрабатываю новый сервис в среде микросервисов. Это REST сервис. Для простоты предположим, что путь: / historyBooks И метод POST для этого пути создает новую книгу истории. Давайте предположим, что книга по истории охватывает одну или несколько эпох в истории. Для краткости предположим, что у нас есть только следующие эпохи …
11 rest  api  json  enum 

1
Enum с большим количеством логических свойств
В настоящее время я работаю над веб-приложением, в котором нам часто нужно настроить логику сервера на основе страницы, которая будет возвращена пользователю. Каждой странице присваивается четырехбуквенный код страницы, и эти коды страниц в настоящее время перечислены в классе как статические строки: public class PageCodes { public static final String FOFP …
11 java  design  enum 

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