Конструктор PHP и экземпляры созданного класса Драконов

Конструктор PHP и экземпляры созданного класса

От автора: ООП! И Драконы у ног моих сели! Какие Драконы? Экземпляры класса Dragon. Для их создания я использовал конструктор PHP. Спокойно, ни у кого еще крыша не потекла. Просто сегодня у нас на обозрении конструкторы и их «антиподы». Точнее, деструкторы!

ООП в PHP

Да, господа! Наш горячо любимый язык программирования также являет объектно-ориентированным. Хотя этот талант PHP востребован не так сильно, как остальные его возможности. Почему так?

Объектно-ориентированное программирование чаще применяется при создании десктопных и мобильных программ. При этом для используется только одна дисциплина. А в веб-разработке PHP применяется еще с несколькими технологиями. Получается, что повторное использование программных скриптов не сильно и «приветствуется».

Главным преимуществом ООП является возможность наследования. То есть повторного применения кода. С помощью одного класса можно создать множество экземпляров. Кроме этого классы могут наследовать свойства родительских классов. Все это в совокупности значительно расширяет возможности многоразового использования уже готовых решений или классов.

Но не будем сильно зарываться в глубины ООП. Сегодня у нас на повестке дня PHP конструкторы класса. Ими и займемся.

Конструируем!

В ранних версиях языка (до PHP 5.0) конструкторы имели те же имена, что и их классы. Сейчас для объявления конструктора используется другой синтаксис. Например:

<?php
class Dragon{
	public function __construct()
	{
		echo "Я злой и страшный Дракон!";

 }
}
$draco=new Dragon();
?>

Конструктор PHP и экземпляры созданного класса

Чтобы объявить конструктор, нужно после ключевого слова function поставить два нижних подчеркивания и добавить construct:

<?php
	function __construct()
	{
	
        }
?>

Конструкторы – это обычные функции, поэтому они поддерживают идентификаторы доступа. А также в них можно передавать аргументы. С помощью конструкторов удобно предопределять поведение создаваемых экземпляров класса. Например, в предыдущем примере после создания экземпляра мы выводим на экран определенный текст.

Деструктурируем!

Классы в PHP имеют конструкторы и деструкторы. Их можно задавать явно или они создаются автоматически (по умолчанию) при объявлении класса. Конструкторы вызываются при создании объекта, деструкторы – при его удалении и служат для освобождения памяти от ненужных ресурсов. Следующий пример иллюстрирует все выше сказанное:

<?php
class Dragon{
	public function __construct()
	{
		echo "Я злой и страшный Дракон!"."<br />";

 }
 public function __destruct()
	{
		echo "Я улетаю!";

 }
   }

$draco=new Dragon();
// здесь сработает echo конструктора
unset($draco);
// здесь сработает echo деструктора
?>

Конструктор PHP и экземпляры созданного класса

Проще говоря, использовать явное объявление конструкторов можно, чтобы реализовать дополнительные действия при создании объекта. А деструкторы – при его удалении. Также стоит помнить, что в отличие от конструктора деструктор не принимает никаких параметров.

Не в тему!

Тут на днях меня спросили, какой PHP конструктор сайтов лучше использовать. Как разработчик я отвечу, что никакой! И тут полетели в меня шишки :) . Но позвольте! Прежде чем закидывать меня «плодами» хвойных, дайте до конца выразить свои мысли.

Для нас (начинающих программистов) вход на эти сервисы запрещен. Будь моя воля, то я возвел бы это правило в ранг закона. Мы должны учиться создавать свои решения, анализировать код. Спотыкаться на чужих и собственных решениях. Только так проходит становление настоящего профессионала.

Я согласен, что конструктор создания PHP сайтов в некоторых случаях является оптимальным вариантом для быстрого запуска своего ресурса. Особенно, если у вас не хватает средств, чтобы нанять толковых специалистов и заказать у них сайт с уникальным дизайном.

Одно время писал обзоры подобных решений. И вот я, умудренный опытом программист, захожу на один из таких сервисов и просто не понимаю, с чего мне начать, куда бежать и какую кнопку нажимать.

Конечно, можно возразить, что на онлайн-конструкторах всегда полно документации для новичков, различных пособий и даже обучающих роликов. Но повторюсь еще раз: все это не для нас! Мы с вами программисты, и нам нечего делать на таких платформах. Лучше время, которые вы потратите на изучение этих мануалов, уделить изучению еще одной темы на PHP!

Хотя некоторые онлайн-конструкторы все-таки могут помочь разработчику. Например, конструкторы регулярных выражений на PHP. Вот сюда добро пожаловать, поскольку составления regular expressions могут вывести из себя даже самого «бывалого». Так что конструкторы конструкторам рознь :) .

Самые свежие новости IT и веб-разработки на нашем Telegram-канале

Хотите изучить ООП PHP?

Прямо сейчас посмотрите курс по объектно-ориентированному программированию на PHP (ООП PHP)!

Смотреть курс

Метки:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree