Ответ
В Dart для именования классов, типов, миксинов и анноций используется стиль UpperCamelCase (также известный как PascalCase). Каждое слово в названии начинается с заглавной буквы, включая первое, и разделители не используются.
Основные правила и примеры:
// Классы и абстрактные классы
class PaymentService {}
abstract class DataRepository {}
// Миксины
mixin AnimationMixin {}
// Типы-перечисления (enum)
enum AuthStatus { authenticated, unauthenticated, loading }
// Типизированные классы (дженерики)
class Response<T> {}
class Either<L, R> {}
// Аннотации
class Injectable {}
const factory = Injectable();
Особый случай — приватные классы:
Имена приватных классов (видимых только в пределах своей библиотеки) также следуют UpperCamelCase, но начинаются с символа нижнего подчёркивания _.
class _InternalCache {
// Этот класс не виден за пределами этого файла
}
Следование этим соглашениям, описанным в официальном Dart Style Guide, обеспечивает консистентность кода в проектах и упрощает чтение.
Ответ 18+ 🔞
А, ну это про стиль имён в Dart, да? Ёпта, тут всё просто, как три копейки. Слушай, смотри.
Вот представь, ты пишешь код, а там у тебя классы, миксины, перечисления — вся эта хрень. Так вот, чтобы не было бардака, как в коммуналке, придумали чёткие правила. Имя должно выглядеть солидно, по-взрослому, понимаешь? Каждое слово — с большой буквы, и никаких там подчёркиваний или дефисов. Это называется UpperCamelCase, а по-простому — PascalCase.
Короче, как это выглядит на практике:
// Вот так правильно — солидно и строго, как директор завода.
class NetworkRequestHandler {}
abstract class UserSettingsRepository {}
// Миксины — тоже не пасут задних.
mixin DragAndDropBehavior {}
// Перечисления (enum) — все статусы как на параде, ровненько.
enum ConnectionState { connected, disconnected, pending }
// Дженерики (типизированные классы) — тоже подчиняются.
class Box<T> {}
class Result<Data, Error> {}
// Аннотации — да вообще всё, что похоже на тип.
class Deprecated {}
const experimental = Deprecated();
А теперь внимание, хитрая жопа! Есть особый случай — приватные классы. Это те, которые видны только в своём файле, как посиделки в закрытом клубе. Они тоже в UpperCamelCase, но с прицепом в виде нижнего подчёркивания в начале. Словно говорят: «Посторонним вход воспрещён, иди на хуй».
class _SecretConfiguration {
// Этот класс — для внутренних дел, наружу не светим.
}
Вот и вся магия. Соблюдаешь эти правила из официального Dart Style Guide — и код у тебя не выглядит как пиздопроебибна, а читается легко, будто газету листаешь. И коллеги тебя за это не взъебот, а, может, даже похвалят.