- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Объясните пожалуйста для чего, когда, зачем, а главное в чем их плюсы?
Теорию я читал: "Статические элементы принадлежат не объекту, а классу".
Пример со счетчиком объектов (статическое свойство) я тоже видел. Но всераво не понимаю как реально и когда надо их применять и в чем их польза.
Вот например нашел код:
Зачем сделали статическими метод и свойство.
Как я понимаю при такой записи, если я подключился к одной базе и считал из нее данные, а потом подключился к другой базе и считал оттуда, то если мне потребуются после этого взять чтото еще из первой базы, то придется конектиться опять ˜— $linkId статичный, а значит он перезаписался.
Так в чем тогда польза?
в данном примере нет выбора базы
в данном примере показан коннект к серверу - и вот на этом сервере ты можешь выбирать разные базы
и в self::$linkId хранится ресурс коннекта к серверу
DeveloperRu добавил 04.04.2010 в 15:50
resource mysql_connect ( [string server [, string username [, string password
статические методы хороши там, где не требуют информации от объекта, выступают в роли "именнованного хранилища функций"
в данном примере нет выбора базы
в данном примере показан коннект к серверу - и вот на этом сервере ты можешь выбирать разные базы
и в self::$linkId хранится ресурс коннекта к серверу
DeveloperRu добавил 04.04.2010 в 15:50
resource mysql_connect ( [string server [, string username [, string password
Сори ошибся. Хотел сказать, что конект к серверу. Что хранит self::$linkId я понимаю по этому и мне интересно чем такой подход (объявление статичным свойство и методы) лучше, правильней, логичней. Ведь как я уже выше написал при конекте еще к одному серверу и последующем обращение к первому идентификатор соединения перезапишется и конектится придется по новой (или я непонимаю сути). Чем же тогда это выгодно?
статические методы хороши там, где не требуют информации от объекта, выступают в роли "именнованного хранилища функций"
Именовонное хранилище функций — кто как я понимаю для того, чтобы можно было создавать и делить функции по области действия (так сказать) и у каждой будет свой префикс DB::name() app::name(). Хм... возможно это удобно. Но вот например встречал классы в которых часть методов статичные а часть нет (так же и свойства), вот по какому признаку решают делать тот или иной метод статичным?
где не требуют информации от объекта,
покажу на примере :)
DB::query($sql) - требует объекта? да, потому что есть $link
DB::escape($string) - требует? нет, потому что работает только со строкой. както так, на тупом примере)
По-моему это просто извратная реализация синглтона или хз... У класса всего 1 свойство и 1 метод, если это весь код. И оба статичные. Значит, сколько инстанций не клепай, выглядеть они будут одинаково.