Gleb Bondarchuk: Разве если напрямую реализовать от интерфейса новый класс, интерфейс не потребует реализовать все методы, и даже вычисление точности, описанные в нём?
1. Вы сказали, что абстрактный класс наследуется от интерфейса. Зачем тогда вообще интерфейс, если в верхушку иерархии можно поставить сразу абстрактный класс?
2. Реализаторы должны будут наследоваться от абстрактного класса, который уже реализовал метод вычисления точности?
Если задача решается через интерфейсы, и реализаторы интерфейсов нуждаются в уже реализованных "кем-то" методах, то этот "кто-то" может создать к интерфейсам отдельный класс, который и будет реализовывать эти методы.
Это как вариант. В таком случае абстрактный класс выступает на смену этого отдельного класса, и даёт больше удобства?
27cmАлексей Уколов Проблема в том, что не факт, что пользователь обязательно будет когда-либо вообще брать фрукты, и чтобы создать строчку под только что первый раз взятый фрукт, нужно проверить отдельным запросом, не создана ли эта строчка уже.
В данном способе не будет работать REPLACE. Тогда придётся создавать строку с каждым видом фрукта при регистрации пользователя. А если он не будет собирать фрукты вообще?
По поводу "из-за чего". А разве логирование каждого момента не есть стремление к информативности? Когда у вас есть доступ к состоянию приложения, не обязательно игрового, в любой момент времени его существования.
У моего антивируса (Avast) есть модуль - SecureLine VPN, причем все модули антивируса сами ставятся. Возможно он мешает. Но я его отключал, как и антивирус. К тому же, я даже с антивирусовким VPN ранее подключался к 22 порту.