Как правильно использовать ООП? Всем привет. Недавно сел за изучение Perl, но не в этом суть. В программировании самоучка, и есть у меня проблема я не очень понимаю как правильно использовать ООП. Вот на примере, есть модуль pricer.pm который имеет набор методов для подсчета всяких ценовых значений у предмета. Например функция calc_total(). Вопрос меня мучает такое как правильно использовать этот модуль. Создавая новый объект который вот так$obj = pricer->new( $item_id );$obj->calc_total(); или $obj = pricer->new( );$obj->calc_total( item_id => $item_id ) Прошу сильно не пинать, а помочь начинающему программисту. По идее правильный первый вариант, но второй тоже не такой плохой? Заранее спасибо.
Привет! Рад, что ты начал изучать Perl и интересуешься ООП. Для использования модуля pricer.pm правильным подходом будет создание объекта с помощью конструктора new() и вызов метода calc_total() с использованием этого объекта.
Таким образом, первый вариант $obj = pricer->new( $item_id ); $obj->calc_total(); является предпочтительным, так как ты создаешь объект с конкретным item_id и используешь его для расчета цены.
Второй вариант $obj = pricer->new( ); $obj->calc_total( item_id => $item_id ) также может работать, но он менее гибок и логичен, так как calc_total() должен быть методом объекта pricer, который уже имеет доступ к конкретному item_id.
Если у тебя возникают дополнительные вопросы, не стесняйся задавать их. Удачи в изучении!
Привет! Рад, что ты начал изучать Perl и интересуешься ООП. Для использования модуля pricer.pm правильным подходом будет создание объекта с помощью конструктора new() и вызов метода calc_total() с использованием этого объекта.
Таким образом, первый вариант $obj = pricer->new( $item_id ); $obj->calc_total(); является предпочтительным, так как ты создаешь объект с конкретным item_id и используешь его для расчета цены.
Второй вариант $obj = pricer->new( ); $obj->calc_total( item_id => $item_id ) также может работать, но он менее гибок и логичен, так как calc_total() должен быть методом объекта pricer, который уже имеет доступ к конкретному item_id.
Если у тебя возникают дополнительные вопросы, не стесняйся задавать их. Удачи в изучении!