![]() |
|
||||||||||
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Вобщем, я так понял, никто не считает проблемой наличие никому не нужных данных или данных, доступных всем, кому они не нужны. "Разумно" - не то слово, которое приходит мне на ум, ну да ладно. "Лишь бы работало!" - так ведь? Я сбоку постою, не люблю демонстрации.
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Глобальная доступность константы Math.PI не очень смущает?
|
|
|||||
|
Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
|
А зачем всему приложению знать в какой социальной сети оно находится? Имхо, должна знать только обертка(iFrame например) приложения, которая и сообщает только лишь необходимые данные о соц. сети. Например возможено ли создание своих альбомов с картинками или нет.
|
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Цитата:
Разные валюты, разные размеры фото, разный функционал. Но все равно, мы приходим к единственному аргументу: "ApplicationConfig.socialNetwork - плохо, потому что общедоступно". Других аргументов я что-то не вижу. ![]() Но я его, собственно, и задумал как общедоступный, чтобы он всегда был под рукой. Последний раз редактировалось mikhailk; 13.08.2011 в 22:17. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
mikhailk, Вам тоже стоит вступить в клуб "я читаю название топика, прежде чем участвовать в споре". И все же отвечу - нет, не смущает меня константа Math.PI, зашитая в плеере еще со времен МХ наверное, когда об ООП в ActionScript только мечтали. Ее использование не создает сильной связности. Если я когда-нибудь допишу свою графическую библиотеку, использующую класс Math направо и налево, и Вы ее скачаете, Вам не придется бегать по всему интернету в поисках этого класса. Но я не смогу воспользоваться вашим классом, которому для работы кровь из носу нужен другой класс – ApplicationConfig, а не простые настройки инициализации.
Приведите аргумент какой-нибудь, а то я уже не понимаю с чем спорю. "ApplicationConfig.socialNetwork - хорошо, потому что общедоступно". Это всё? А есть какое-нибудь объяснение, почему "общедоступно – это хорошо"? Так сказать, по сути спора?
__________________
Reality.getBounds(this); Последний раз редактировалось Wolsh; 13.08.2011 в 23:15. |
|
|||||
|
Цитата:
Мое мнение по теме. Если есть возможность (разумная) избавиться от глобальности - к этому нужно стремиться. Как уже было сказано выше, многое при этом решается еще на этапе проектирования. Как уже было сказано выше, публичные переменные доступны всем, бери - не хочу, делай что хочешь. Другое дело геттеры/сеттеры, даже скорее только геттеры - показать покажу, а испортить не дам. Это инкапсуляция, это ООП. Если же нужно что-то супер-глобальное, почему бы не использовать статику? Но это уже другая тема.
__________________
Ну все, теперь Забава м-о-я. Гы-гы, а корабль мой! |
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Вобщем-то, спора никакого нет.
Я так сделал для собственного удобства. Наличие статического класса ApplicationConfig и публичной переменной socialNetwork позволяет мне при необходимости сделать быструю доводку интерфейса под конкретную сеть, в т.ч., в тех классах, которые изначально не планировались к настройке под сеть, т.е. параметры соцсети в них изначально не передаются, а значит надо их тащить туда дополнительно. Где-то через конструкторы, где-то через дополнительные методы. Соответственно, мой аргумент прост как 5 копеек: удобство за счет незначительного послабления в части строгости ООП. Добавлено через 3 минуты Цитата:
Если бы над проектом работала группа программистов, я бы реализовал через сеттер/геттер. В момент загрузки клиента вычислялся бы параметр сети, который потом де-факто становился бы константой. |
|
|||||
|
Я говорил не о программистах. Скорее о человеческом факторе. Но когда работаешь один, действительно, многие проблемы кажутся... Кажется что их нет. Проект при этом может быть успешным и различные доработки нисколько не напрягают (в контексте темы) единственного кодера.
__________________
Ну все, теперь Забава м-о-я. Гы-гы, а корабль мой! |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Ладно, немного сбавим градусы.
Мне просто интересно, в практическом смысле, вот Вы создали скажем класс, способный выводить сообщение юзера с его фотографией, датой и прочим. И Вам не жалко сделать его инвалидом, хватающимся за некий левый ApplicationConfig с набором стилей? Ведь это не позволяет Вам использовать этот классик повторно в другом проекте as is. Как Вы с этим живете?
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 03:30. |
|
|
« Предыдущая тема | Следующая тема » |
|
|