Size: a a a

2020 July 17

Э

Эдем in RubyRush
Denis
Вангую, видимо речь о геттерах и сеттерах
Только это и понятно из вопроса
источник

DM

Dmitriy Tensei Malys... in RubyRush
7 строка это attr_reader метод для чтения @name
11 строка это attr_writer метод чтобы обновлять @name

15 строка это метод конструктора, при создании объекта ты туда передаешь str и он присваивается в @ name
источник

DM

Dmitriy Tensei Malys... in RubyRush
parent = Parent.new('petor')
parent.name => 'petor'
parent.name=('valera')
parent.name => 'valera'
источник

Э

Эдем in RubyRush
Знак равенства пропустил
источник

DM

Dmitriy Tensei Malys... in RubyRush
Эдем
Знак равенства пропустил
извините
источник

Э

Эдем in RubyRush
Парное программирование — сила 😁
источник

В

Владислав in RubyRush
Dmitriy Tensei Malyshev
parent = Parent.new('petor')
parent.name => 'petor'
parent.name=('valera')
parent.name => 'valera'
Это да, так и работает программа. Но не понимаю зачем устанавливать переменную в одном методе без значения, чтобы в другом ее переписать, сразу почему не записать?
источник

DM

Dmitriy Tensei Malys... in RubyRush
@mechnicov твой выход
источник

А

Александр in RubyRush
Владислав
Это да, так и работает программа. Но не понимаю зачем устанавливать переменную в одном методе без значения, чтобы в другом ее переписать, сразу почему не записать?
мы не "устанавливаем переменную без значения", мы читаем из нее то значение, которое в ней есть
источник

DM

Dmitriy Tensei Malys... in RubyRush
тут возможно стоит быстро про @ инстанс-переменные узнать
источник

В

Владислав in RubyRush
Dmitriy Tensei Malyshev
тут возможно стоит быстро про @ инстанс-переменные узнать
Это переменная которая внутри класса "бегает"
источник

Э

Эдем in RubyRush
Владислав
Это да, так и работает программа. Но не понимаю зачем устанавливать переменную в одном методе без значения, чтобы в другом ее переписать, сразу почему не записать?
> зачем устанавливать переменную в одном методе без значения

Тут лучше пример написать, что это такое. Не уверен, что об одном говорить будем
источник

DM

Dmitriy Tensei Malys... in RubyRush
@name доступна везде внутри объекта, мы читаем из нее первым методом(7 строка), и записываем 2ым(11 строка), initialize нужен чтобы задать ее когда создаем экземпляр класса. Так мы общаемся с объектом.
источник

Э

Эдем in RubyRush
Владислав
Это переменная которая внутри класса "бегает"
Внутри экземпляра класса
источник

EE

Ekaterina Egorova in RubyRush
Владислав
Добрый день, ребят объясните пожалуйста, где я неправильно понимаю логику работы методов присваивания. ( Х.Х = 1ая х -это номер ветви(паралельное выполнение) 2-ая х -это номер шага)

Зачем создавать метод name,если он все равно возвращает пустоту, почему нельзя сразу вызвать метод с присваиванием? Прочитал :https://qastack.ru/programming/4370960/what-is-attr-accessor-in-ruby но вопросы остались.
у вас написано "возвращает nil" но это не так оно может возвращать nil а может возвращать name - если при вызове .new (то есть при вызвое initialize) вы туда что то передадите
источник

В

Владислав in RubyRush
Давайте с начала. Метод инициалайз с параметром name - к какому из методов name внутри класса он(инитиализ) обратится, чтобы получить значение?
источник

EE

Ekaterina Egorova in RubyRush
ни к какому
источник

EE

Ekaterina Egorova in RubyRush
он присвоит что вы туда передали
источник

EE

Ekaterina Egorova in RubyRush
но просто так вы эти данные не получите
источник

EE

Ekaterina Egorova in RubyRush
нужны геттеры
источник