Если я могу добавить свои 0,02 доллара, я предпочитаю использовать PascalCase в качестве значений перечисления в C.
В C они в основном глобальные, и PEER_CONNECTED становится действительно утомительным, в отличие от PeerConnected.
Глоток свежего воздуха.
Буквально, это заставляет меня дышать легче.
В Java можно использовать необработанные имена перечислений, если вы статически импортируете их из другого класса.
import static pkg.EnumClass.*;
Теперь вы можете использовать неквалифицированные имена, которые вы квалифицировали уже по-другому.
В настоящее время я (думаю) о переносе некоторого кода C на Java и в настоящее время «разрываюсь» между выбором соглашения Java (которое является более многословным, более длинным и более уродливым) и моим стилем C.
PeerConnected станет PeerState.CONNECTED, за исключением операторов switch, где он CONNECTED.
Теперь есть много, что можно сказать о последнем соглашении, и оно выглядит красиво, но определенные «идиоматические фразы», такие как if (s == PeerAvailable)
становиться похожими if (s == PeerState.AVAILABLE)
и ностальгическими, это потеря смысла для меня.
Я думаю, что я все еще предпочитаю стиль Java из-за ясности, но мне трудно смотреть на кричащий код.
Теперь я понимаю, что PascalCase уже широко используется в Java, но очень запутанно, что это не так, просто немного неуместно.