Это только я, или аннотация Override в Java на самом деле бесполезна при программировании в приличной IDE?
Да, я понимаю, что аннотация Override препятствует тому, чтобы я случайно не переопределил супер метод, неправильно написав имя метода или испортив параметры метода. Однако здравый смысл подсказывает мне, что в современных средах разработки это вряд ли произойдет по следующим причинам:
- IDE показывает маркер (то есть маленький значок) в левой части редактора, который указывает, является ли метод переопределенным / переопределенным. Поэтому для отображения намерения переопределения не требуется явная аннотация Override.
- Если я собираюсь переименовать метод и вижу такой маркер переопределения, я никогда, никогда не редактирую имя метода напрямую - я инстинктивно обращаюсь к сочетанию клавиш, которое открывает помощник по переименованию в IDE. Аналогично, если я намереваюсь изменить сигнатуру метода и вижу маркер переопределения, я инстинктивно использую помощник по сигнатуре метода IDE вместо того, чтобы делать это вручную (за исключением очень простых случаев). Таким образом, имена и сигнатуры методов почти всегда меняются правильно, поэтому добавление аннотаций Override становится (на мой взгляд) немного больше, чем параноидальная и бесполезная проверка безопасности - то же самое, что распространение «final» повсеместно.
Конечно, если вам нужно написать свой Java-код в Блокноте или чем-то еще, аннотация Override, очевидно, помогает. Но я хочу сказать, что в современной среде IDE повышение безопасности, обеспечиваемое этой аннотацией, не стоит снижения читабельности. Есть мнения?