Мое предложение, иди на самый простой! Прямой доступ к переменным экземпляра.
Вы можете утверждать, что если вы измените внутреннее представление ваших данных, вы хотели бы получить доступ к данным таким же образом, не заботясь о внутреннем представлении. Но эй ! если у вас есть get_foo и set_foo, семантически, это означает, что вы меняете переменную. Так что просто сделай так:)
PS: мне там нравится рубиновый подход :) 1005 *