# Delphinum (25.08.2016 / 17:32)Я бы поспорил. Это ведь придётся везде за собой FileStorage таскать даже там, где он не нужен. И почему файл не может знать о хэше? Не вижу в этом ничего страшного. Единственное, что не нравится, так это имена методов. Вместо generatehash() я бы написал getMd5Hash(), а вместо data() -- asArray() или toArray().
Koenig, generatehash? Я бы вынес его в интерфейс или в FileStorage (или и то и другое). Файл это файл )