Zubchick
Фев. 23, 2010 14:23:32
Здравствуйте! Не большой я фанат ООП программирования, поэтому у меня затык:
Есть у меня класс - кубик Рубика, есть несколько независимых глобальных функций типа поворотов матриц, перестановки столбцов-строк и т.п. Методы кубика используют эти фукнкции. Больше их никто не использует, да и не надо бы. Так вот вопрос, как правильно сделать: оставить эти функци глобальными или сделать статическими для кубика? Или может еще чего :)
PooH
Фев. 23, 2010 15:26:11
А нету никакого универсального правильно все зависит от архитектора и его настроения ;)
bazooka
Фев. 23, 2010 17:19:43
про правильность там ниче ненаписано
Kogrom
Фев. 23, 2010 17:23:44
Zubchick
Методы кубика используют эти фукнкции. Больше их никто не использует, да и не надо бы.
Если никто не должен их использовать, то запрятать в кубик. Не ясно только, почему они должны быть статическими.
Если их кто-то другой будет использовать, то можно эти функции упаковать в модуль. Но рассуждать теоретически смысла мало - лучше код смотреть.
sypper-pit
Фев. 23, 2010 17:24:09
а чем это собственно от принципов “this”
sypper-pit
Фев. 23, 2010 17:29:11
Zubchick
Фев. 23, 2010 18:23:49
да мне не надо решать, у меня алгоритм шифрования :)
Не ясно только, почему они должны быть статическими.
функции самодостаточные, работают просто с любыми матрицами :) Если мы делаем их методами, то зачем им передавать экземпляр класса?
Ferroman
Фев. 23, 2010 20:22:02
Логично было бы сделать их статическими методами, и, прикрыть _, если больше никому не надо из использовать. Если их использование влияет на из содержание.
Если функции слишком общие, и потенциально не будут меняться вместе с классом, который их использует, то, думаю, стоит оставить отдельно. Авось ещё где пригодятся :)