По вашему сообщению я полагаю, что вы, вероятно, используете классы в качестве хранилища функций без реальной реализации между ними. (Я могу ошибаться, извините, если я просто делаю поспешные выводы)
Классы чрезвычайно полезны и являются основой ООП.
Используя крайне оскорбительную аналогию:
Представьте себе что-то вроде PaperSheet.
PaperSheet имеет такие свойства, как размер, цвет, форма, материал.
Вы можете делать что-то с листом бумаги, например, что-то написать, сложить в оригами (= P) и т. Д.
Итак, используя язык программирования:
Папский лист - это класс
Размер, Цвет, Форма, Материал - переменные, свойства класса PaperSheet
Write_Something_In_It, Origami_It - функции этого класса
Чтобы выполнить Write_Something_In_It, вам просто нужно предоставить текст, но для выполнения Origami_It вам нужно будет предоставить больше инструкций, поскольку создание Лебедя отличается от создания Жабы.
ТАК, кодирование это будет примерно так:
<?
class PaperSheet {
var $size;
var $color;
var $material;
var $shape;
function Write_Something_In_It($text) {
/// Some Code
}
function Origami_It($OrigamiShape) {
if ( $OrigamiShape < $this->$shape ) {
echo "You can do the origami";
} else {
echo "You can't do the origami";
}
}
}
?>
Итак, класс PaperSheet определяет, что такое лист бумаги и что вы можете с ним делать. А поскольку в вашем офисе много одинакового листа бумаги, каждый раз, когда вы берете лист бумаги из стопки, вы «создаете» новый объект класса PaperSheet.
Вы даже можете создать 100 объектов PaperSheet (конечно, с разными именами) и сохранить их в шкафу (массиве).
Теперь переменные, которые вы видите выше, должны иметь смысл только в контексте PaperSheet и должны использоваться только в контексте класса PaperSheet.
Smae выполняет функции.
Если у вас есть другие классы, например Table, которые также имеют размер и цвет, то не имеет смысла, если они имеют размер листа A4.
И вы не должны иметь возможность оригами за столом (хотя, если бы вы могли, это было бы здорово).
Таким образом, в OOPL классы чрезвычайно полезны, поскольку они не только переносят связывающий код, поскольку они предоставляют более интуитивно понятный способ его использования.
Надеюсь, это поможет