Да, это плохая практика, потому что она нарушает инкапсуляцию деталей реализации вашего класса. Объявление @property
является общедоступным оператором API («мой класс предоставляет свойство типа, например float
), а не оператором реализации (« мой класс имеет float
переменную экземпляра »). Клиенты API вашего класса не должны знать подробности его реализации, чтобы вам было запрещено изменять эти детали без нарушения клиентского кода.