Во время недавней встречи с C # и WPF мне понравились свойства C #:
public double length_inches
{
get { return length_metres * 39.0; }
set { length_metres = value/39.0; }
}
Заметив, конечно, что length_metres может измениться с поля на свойство, и код не должен заботиться. WPF также может с радостью связывать элементы пользовательского интерфейса со свойствами объекта.
Когда я впервые узнал о классах и объектах, я предположил, что есть способ сделать это, потому что это казалось таким очевидным! Смысл сокрытия сложности внутри класса заключается в том, что вам больше не нужно заботиться о том, что хранится. Но потребовалось до сих пор, чтобы увидеть это.
Забавно, я впервые увидел, что это сделано в VB.Net. Это передний край чистоты ОО.
Вопрос в том, могу ли я воссоздать свойства на других языках, которые я использую чаще, например на javascript, python, php? В javascript, если я установлю переменную на замыкание, не получу ли я снова замыкание, а не результат?