Если вы заменяете геттеры / сеттеры для оптимизации производительности / памяти, то вы используете неправильный подход. Это почти наверняка не будет причиной того, что ваше приложение работает медленно или использует слишком много памяти.
Основной грех оптимизации состоит в том, чтобы сделать это прежде, чем вы поймете, что вам нужно. Оптимизируйте только тогда, когда у вас есть реальная информация, показывающая, где тратится больше всего времени / памяти, а затем тратите свое время на ее оптимизацию. Мысль, стоящая за этим, заключается в том, что вы получите больше, сэкономив 5% времени на части кода, которая занимает 80% от общего времени выполнения, чем на 20% сэкономленной части кода, которая дает только 5% времени. общее время выполнения. (То же относится и к памяти).
Кроме того, я бы позаботился о разработке приложения, как вы предлагаете, поскольку это будет означать, что некоторые свойства (например, простые свойства) будут доступны напрямую, а другие (более сложные производные свойства или свойства, которые вам не нужны). чтобы показать основные типы) будет иметь геттеры / сеттеры. Таким образом, вы получите смесь стилей доступа, которые будут менее удобны для обслуживания.