В объектно-ориентированных программах объекты посылают сообщения другим объектам. Объектно-ориентированный код показывает… классы, наследующие другие классы. Ой. Кажется, что в ООП между исходным кодом и исполняемой программой нет никакой связи. В процедурных программах процедуры вызывают другие процедуры. Процедурный код показывает… процедуры, вызывающие другие процедуры. Все хорошо и просто, так ведь?
Нет, не хорошо. Разницы в общем-то никакой нет. В одном случае ты видишь процедуры, а в другом методы. Но выполнение программы - это поток данных. И этот поток ты не видишь ни в процедурном, ни в ооп коде. А чтобы увидеть данные, тебе нужно сидеть в дебаггере. Никакого преимущества процедурный стиль тут не дает
Как мы все понимаем, методы в хороших объектно-ориентированных программах должны быть короткими и изящными. Множество маленьких методов удобнее для разработки, понимания, повторного использования и так далее. Так в чем же проблема? Одна из причин, почему мы тратим столько времени, в том, что нам приходится листать код туда-сюда… через множество маленьких методов
Мм. А процедуры по 500 строк что ли пишутся? Как этот пункт вообще к ооп относится?
Геймплейное видео специально записывалось максимально невнятным? Где хоть что-то из описанного в статье: профессии и прокачка, взаимодействие с другими игроками, какие-нибудь геймплейные механики?
Интересно, что если метод, то Get (или какой-нибудь Calculate) пишется, а вот если свойство (синтаксически это метод без параметров и без скобочек) — то нет. Как если бы от физического воплощения (свойство или метод) одного и того же понятия мы бы по разному говорили о нём между собой
Ну да, это потому что в случае свойства действие (гет или сет) уже передается синтаксисом и дублировать его словесно не надо. order.Discount = 5 — свойство слева от присваивания, поэтому сет.
К тому же у метода множество различных возможных вариантов действия, а у свойства только два, поэтому нет неоднозначности, в отличие от метода
Что-то из поста непонятно, какие же фичи для ИИ там есть. В посте только реворды указаны. Или по сути Malmo только API для Майнкрафта предлагает? Как альтернативу этому API?
Так тут просто синтаксис очень отличающийся от си-подобных языков, поэтому и ничего не понятно. При чем тут математика?
Так статья - хрень собачья
Нет, не хорошо. Разницы в общем-то никакой нет. В одном случае ты видишь процедуры, а в другом методы. Но выполнение программы - это поток данных. И этот поток ты не видишь ни в процедурном, ни в ооп коде. А чтобы увидеть данные, тебе нужно сидеть в дебаггере. Никакого преимущества процедурный стиль тут не дает
Мм. А процедуры по 500 строк что ли пишутся? Как этот пункт вообще к ооп относится?
Ну да, это потому что в случае свойства действие (гет или сет) уже передается синтаксисом и дублировать его словесно не надо. order.Discount = 5 — свойство слева от присваивания, поэтому сет.
К тому же у метода множество различных возможных вариантов действия, а у свойства только два, поэтому нет неоднозначности, в отличие от метода