TGViewer
Flutter Friendly Flutter Friendly @flutterfriendly · 995 subscribers
Post #274 677
💭Привет, с вами Катя, Flutter Dev Friflex! Сегодня расскажу об аннотациях

Что это?
Аннотации
— это специальные метки (метаданные), которые можно добавлять к классам, методам, переменным и другим элементам кода. Они не изменяют сам код напрямую, но дают дополнительную информацию компилятору, инструментам или фреймворкам.

Пример:

class Person {
  final String name;

  const Person(this.name);
}

@deprecated // помечает метод как устаревший
void oldMethod() {
  print("Этот метод больше не рекомендуется использовать");
}

@override // указывает, что метод переопределяет родительский
String toString() => "Person";


📍Встроенные
@override — помечает метод, который переопределяет родительский
@deprecated — помечает элемент как устаревший
@pragma — специальные инструкции для VM (например, @pragma('vm:entry-point'))

📍Из пакета meta
@immutable — класс неизменяемый (все поля final)
@required — аннотация для обязательных параметров (устарела с введением модификатора required, который теперь указывается прямо в объявлении параметра)
@protected — метод/поле должно использоваться только внутри самого класса или подклассов
@visibleForTesting — элемент предназначен только для тестов
@visibleForOverriding — метод/поле предназначено для переопределения
@mustCallSuper — при переопределении метода нужно обязательно вызвать super
@nonVirtual — метод не может быть предопределен
@sealed — класс нельзя наследовать за пределами своей библиотеки
@doNotStore — нельзя хранить ссылку на объект (например, BuildContext)
@factory — метод/конструктор должен возвращать новый объект каждый раз

📍Для генерации кода (через build_runner)
@JsonSerializable — для генерации JSON-сериализации (json_serializable)
@JsonKey — настройка маппинга конкретного поля в JSON
@HiveType / @HiveField — для сериализации в Hive
@Freezed и связанные (@freezed) — генерация immutable-классов и union types

В прошлом посте Аня рассказывала о собеседованиях, так что давайте проверим ваши знания про аннотации. Чур не подсматривать!🫣
  • ❤ 5
  • 👍 3
  • 🔥 1
  • 👏 1
More from @flutterfriendly
  1. May 14, 2026👀Какой сложный вопрос или тема по Flutter вас сейчас беспокоят? Может, задача не идет, ба…
  2. Apr 17, 2026💭Привет! Это Роза, Flutter-разработчица Friflex! Уверена, многие из вас знакомы с Dart De…
  3. Apr 8, 2026Привет, друзья! Делимся нашей страничкой на Хабре, чтобы всегда оставаться на связи. Там е…
  4. Apr 3, 2026🌸Апрель в календаре и на экране Весна зовет обновлять визуальное: убирать темные темы и в…
  5. Apr 1, 2026Всегда с нетерпением ждем этого дня, чтобы сделать подборку ИТ-мемов Пусть поводов для улы…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →