Настоящая проблема заключается в семантическом давлении, вызванном использованием спецификации Airbnb в проектах, которые не предназначены для ее использования. Airbnb - это очень функциональная спецификация, и она не очень хорошо работает с кодовыми базами, которые имеют императивный стиль или чрезмерно ООП.

Обычно я вижу кодовые базы, разветвляющие спецификацию Airbnb, а затем добавляющие свои собственные переопределения в спецификацию Airbnb, чтобы обеспечить лучшую совместимость с их собственной кодовой базой. И объективно в этом нет ничего плохого - это очень распространено и часто экономит время.

Но если вы добавляете несколько или даже десятков переопределений к существующей спецификации (например, Airbnb) из-за проблем с совместимостью: сама спецификация не очень подходит для проекта (и его целей).

На этом этапе требуется либо рефакторинг всей кодовой базы, либо создание стандарта, соответствующего его ожиданиям и сильным сторонам. Лично мне больше нравится последнее, но в конечном итоге это вопрос дизайна и перспективы проекта. Если стандарт внедряется на раннем этапе жизненного цикла кодовой базы, то в конечном итоге все это не имеет значения.

Но я почти никогда не видел, чтобы такое происходило в реальной жизни. Надеюсь, мне удалось кое-что прояснить.