История изменений
Исправление proud_anon, (текущая версия) :
Это реалии жизни. Есть опыт преподавания ООП на основе питона. Рождает очень много непонимания у студентов из-за возможности создавать динамически поля у объектов.
Вполне понятная реакция. Глядишь на классы в Python и возникает вопрос: если у нас функции — объекты первого класса, если у нас утиная типизация, то почему нельзя обойтись словарями функций?
Собственно, в Lua так и сделали. Там ни классов, ни объектов, а только таблицы функций, возможность назначать прототипы и правило, что x.y — это то же, что x["y"].
ТС, «обычные книжки по ООП» тут не особо помогут. В Python своё ООП. В том примере, который ты написал, оно ещё более своё. Ну и, наконец, если ты чего-то не понимаешь, то не стоит надеяться на волшебные средства, которые помогли бы тебе это понять за полдня.
Исправление proud_anon, :
Это реалии жизни. Есть опыт преподавания ООП на основе питона. Рождает очень много непонимания у студентов из-за возможности создавать динамически поля у объектов.
Вполне понятная реакция. Глядишь на классы в Python и возникает вопрос: если у нас функции — объекты первого класса, если у нас утиная типизация, то почему нельзя обойтись словарями функций?
Собственно, в Lua так и сделали. Там ни классов, ни объектов, а только таблицы функций, возможность назначать прототипы и правило, что x.y — это то же, что x["y"].
ТС, «обычные книжки по ООП» тут не особо помогут. В Python своё ООП. В том примере, который ты написал, оно ещё более своё.
Исходная версия proud_anon, :
Это реалии жизни. Есть опыт преподавания ООП на основе питона. Рождает очень много непонимания у студентов из-за возможности создавать динамически поля у объектов.
Вполне понятная реакция. Глядишь на классы в Python и возникает вопрос: если у нас функции — объекты первого класса, если у нас утиная типизация, то почему нельзя обойтись словарями функций?
Собственно, в Lua так и сделали. Там ни классов, ни объектов, а только таблицы функций, возможность назначать прототипы и правило, что x.y — это то же, что x[«y»].
ТС, «обычные книжки по ООП» тут не особо помогут. В Python своё ООП. В том примере, который ты написал, оно ещё более своё.