PHP ООП ЗАДАЧИ

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

В этом разделе мы рассмотрим несколько задач, связанных с ООП на PHP. Вот некоторые из них:

1. Создание класса и объекта: Одной из основных задач ООП является создание классов и объектов. Класс представляет определенный тип данных, а объект - экземпляр этого класса. Например, можно создать класс "Человек", который будет содержать свойства, такие как "Имя", "Фамилия" и "Возраст", а затем создать объект "Человек", содержащий конкретную информацию о человеке.

class Person {
    public $name;
    public $surname;
    public $age;
}

$person = new Person();
$person->name = "John";
$person->surname = "Doe";
$person->age = 30;

2. Наследование: Еще одной важной задачей ООП является наследование. Наследование позволяет определять новые классы на основе существующих, наследуя их свойства и методы. Например, можно создать класс "Студент", который будет наследовать свойства и методы из класса "Человек".

class Student extends Person {
    public $student_id;
}

$student = new Student();
$student->name = "Mary";
$student->surname = "Smith";
$student->age = 20;
$student->student_id = 1001;

3. Инкапсуляция: Инкапсуляция - это механизм, который позволяет скрыть данные и методы класса от других объектов, обеспечивая их защиту и контроль доступа. Например, можно создать класс "Банковский счет", в котором данные о счете будут скрыты от других объектов, а доступ к ним будет осуществляться только через определенные методы класса.

class BankAccount {
    private $account_number;
    private $balance;

    public function get_balance() {
        return $this->balance;
    }

    public function deposit($amount) {
        $this->balance += $amount;
    }

    public function withdraw($amount) {
        if ($this->balance >= $amount) {
            $this->balance -= $amount;
        }
    }
}

$account = new BankAccount();
$account->deposit(1000);
$account->withdraw(200);
echo $account->get_balance();

4. Полиморфизм: Полиморфизм - это возможность использования разных классов или объектов с одинаковым интерфейсом. Например, если у нас есть классы "Круг" и "Прямоугольник", с одинаковым методом "get_area()", который возвращает площадь фигуры, мы можем использовать эти классы вместе в функции, которая ожидает объекты с методом "get_area()".

interface Shape {
    public function get_area();
}

class Circle implements Shape {
    private $radius;

    public function __construct($radius) {
        $this->radius = $radius;
    }

    public function get_area() {
        return pi() * $this->radius * $this->radius;
    }
}

class Rectangle implements Shape {
    private $width;
    private $height;

    public function __construct($width, $height) {
        $this->width = $width;
        $this->height = $height;
    }

    public function get_area() {
        return $this->width * $this->height;
    }
}

function print_area(Shape $shape) {
    echo $shape->get_area();
}

$circle = new Circle(5);
$rectangle = new Rectangle(10, 5);

print_area($circle);
print_area($rectangle);

5. Абстрактные классы и интерфейсы: Абстрактные классы и интерфейсы позволяют определять общий интерфейс для группы связанных классов. Абстрактный класс - это класс, который не может быть создан напрямую, а только на основе его производных классов. Интерфейс - это набор методов, которые должны быть реализованы классом.

interface Logger {
    public function log($message);
}

class FileLogger implements Logger {
    public function log($message) {
        file_put_contents('log.txt', $message, FILE_APPEND);
    }
}

class DatabaseLogger implements Logger {
    public function log($message) {
        $pdo = new PDO('mysql:host=localhost;dbname=logs', 'username', 'password');
        $stmt = $pdo->prepare("INSERT INTO logs (message) VALUES (?)");
        $stmt->execute([$message]);
    }
}

11: First exercise in OOP PHP - OOP PHP Exercise - Object Oriented PHP Tutorial - PHP Tutorial

Руководство по ООП на PHP

Основы ООП в PHP. Решение практических задач. Трепачёв Д.П. ruphp.com

ООП на PHP за 2 часа. Курс по PHP. Объектно ориентированное программирование на PHP

Learn Object Oriented PHP - 2 hour Object Oriented Programming Lesson For Beginners - PHP OOP

14: Abstract Classes in OOP PHP - Abstract Explained - Object Oriented PHP Tutorial - PHP Tutorial

Орел и решка на PHP. Практика ООП для начинающих

Задача на PHP ООП калькулятор площади круга

Открытое собеседование PHP Point #1 / Валентин Удальцов vs Патрик Фельдеш

1: Introduction To OOP PHP - Object Oriented PHP Tutorial For Beginners - PHP Tutorial - mmtuts

Реклама
Новое
Реклама