Um tópico bastante interessante (porém curto) na orientação a objetos no Python são as properties. Elas são responsáveis por encapsular o acesso à variáveis das nossas classes, fazendo assim um design de classes mais completo, onde você pode ter algum processamento interno e só expor o que é adequado nas API's públicas de suas classes. Então vamos lá entender o que são elas e como usá-las. »
No desenvolvimento de software, nós desenvolvedores sempre presamos por construir sistema que sejam o mais fiel possível ao pedido do cliente ( por mais que haja mudanças no decorrer do tempo ) , mas além de tudo presamos por outros fatores que acontecem no decorrer ou após o desenvolvimento. »