LESSON 1:
RUBY OBJECT MODEL
DYNAMIC RUBY
Абстракция, описывающая
обособленную группу объектов,
обладающими общими
свойствами.
Экземпляр класса, некоторая
конечная реализация данной
абстракции.
CLASS OBJECT
MEME AS EXAMPLE OF CLASS-OBJECT CONCEPT
Воруй
Абстрактный мем
Конкретный мем
Убивай
В Ruby каждый класс
является так же и объектом.
Объектом специального
класса Class.
RUBY CLASS HIERARCHY
CLASS AS AN OBJECT
CLASS AS OBJECT
CLASS VARIABLES
VS
CLASS INSTANCE VARIABLES
CLASS VARIABLES VS CLASS INSTANCE VARIABLES
CLASS VARIABLES VS CLASS INSTANCE VARIABLES [UPDATED]
CLASS METHODS
VS
CLASS INSTANCE METHODS
CLASS METHODS VS CLASS INSTANCE METHODS
SINGLETON METHODS
AND SINGLETON CLASSES
Singleton method это метод,
который определен
исключительно для одного
конкретного объекта.
SINGLETON METHODS
Так вот, т.н. class methods
любого класса это и есть
singleton methods
конкретного экземпляра
класса Class.
SINGLETON METHODS
M
etaclass for Foo
instance of Class class
Foo
class as an
instance
of Class class
:another_foo
instance
#my_object_method
Metaclass for :foo
instance of Foo class
Metaclass for :another_foo
instance of Foo class
:foo instance
#my_special_object_method
::my_class_method
RUBY OBJECT MODEL
REFERENCES
▸ http://www.devalot.com/articles/2008/09/ruby-singleton
▸ http://stackoverflow.com/a/10560958
▸ https://habrahabr.ru/post/143990/
THANK YOU!
Alex Mikitenko
nonkor@gmail.com
https://github.com/nonkor
TO BE CONTINUED…

Dynamic Ruby. Lesson #1: Object model