Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pemahaman mendalam tentang pengaturcaraan berorientasikan objek PHP: teknik pemfaktoran semula kod untuk pengaturcaraan berorientasikan objek

Pemahaman mendalam tentang pengaturcaraan berorientasikan objek PHP: teknik pemfaktoran semula kod untuk pengaturcaraan berorientasikan objek

WBOY
WBOYasal
2024-06-05 15:54:34395semak imbas

OOP ialah paradigma pengaturcaraan yang penting dalam PHP Ia mengikut prinsip pengkapsulan, pewarisan dan polimorfisme untuk meningkatkan modulariti kod dan kebolehgunaan semula. Teknik pemfaktoran semula kod boleh meningkatkan kualiti kod OOP, termasuk: 1. Ekstrak kaedah: mengekstrak kod pendua ke dalam kaedah 2. Memperkenalkan pembolehubah: menyimpan nilai yang digunakan semula dan mengelakkan pengekodan keras: menyimpan nilai yang tidak berubah kerap. Teknik pemfaktoran semula digunakan untuk kes praktikal (sistem pembelian produk dalam talian), seperti mengekstrak logik untuk mengira jumlah harga pesanan sebagai kaedah, memperkenalkan pembolehubah tempatan untuk menyimpan tatasusunan produk, menentukan pemalar status pesanan, dll., yang meningkatkan kebolehbacaan kod dengan ketara. dan kebolehselenggaraan.

Pemahaman mendalam tentang pengaturcaraan berorientasikan objek PHP: teknik pemfaktoran semula kod untuk pengaturcaraan berorientasikan objek

Pemahaman mendalam tentang pengaturcaraan berorientasikan objek PHP: Teknik pemfaktoran semula kod untuk pengaturcaraan berorientasikan objek

Pengaturcaraan berorientasikan objek (OOP) ialah paradigma pengaturcaraan penting dalam PHP yang mengikuti pengkapsulan, pewarisan dan polimorfisme prinsip. Dengan menyusun data dan kaedah ke dalam objek, kod OOP boleh meningkatkan modulariti, kebolehgunaan semula dan kebolehselenggaraan.

Petua Pemfaktoran Semula Kod

Berikut ialah beberapa petua pemfaktoran semula yang berkesan untuk meningkatkan kualiti kod OOP:

Kaedah pengekstrakan: Ekstrak segmen kod berulang atau panjang ke dalam kaedah berasingan. Ini meningkatkan kebolehbacaan dan kebolehselenggaraan kod.

// Before refactoring
for ($i = 0; $i < count($arr); $i++) {
  echo $arr[$i] . '<br>';
}

// After refactoring
function printArray($arr) {
  for ($i = 0; $i < count($arr); $i++) {
    echo $arr[$i] . '<br>';
  }
}

Perkenalkan pembolehubah: Simpan nilai yang digunakan semula dalam pembolehubah dan elakkan pengekodan keras.

// Before refactoring
$database_host = 'localhost';
$database_name = 'mydb';
$database_user = 'myuser';
$database_password = 'mypassword';

// After refactoring
$database_credentials = [
  'host' => 'localhost',
  'name' => 'mydb',
  'user' => 'myuser',
  'password' => 'mypassword',
];

Gunakan pemalar: Simpan nilai yang jarang berubah, seperti nama jadual pangkalan data atau laluan fail.

define('TABLE_NAME', 'users');

Kes praktikal: Sistem pembelian produk dalam talian

Untuk lebih memahami teknik pemfaktoran semula ini, mari kita pertimbangkan sistem pembelian produk dalam talian yang mudah:

class Product {
  private $name;
  private $price;

  public function __construct($name, $price) {
    $this->name = $name;
    $this->price = $price;
  }

  public function getName() {
    return $this->name;
  }

  public function getPrice() {
    return $this->price;
  }

  public function buyProduct() {
    // Logic to handle product purchase
  }
}

class Order {
  private $products = [];

  public function addProduct(Product $product) {
    $this->products[] = $product;
  }

  public function getTotalPrice() {
    // Logic to calculate total order price
  }

  public function placeOrder() {
    // Logic to handle order placement
  }
}

Menggunakan teknik pemfaktoran semula:

Kaedah Pengekstrakan
  • : logik untuk mengira jumlah harga pesanan ke dalam kaedah yang berasingan.
  • Perkenalkan pembolehubah:
  • Simpan tatasusunan produk dalam pembolehubah setempat untuk mengelakkan . getTotalPrice方法中重复调用$this->products
  • Gunakan pemalar:
  • Pemalar yang mentakrifkan status pesanan (seperti "dipesan", "dihantar") dan elakkan menggunakan rentetan berkod keras.
  • Teknik pemfaktoran semula ini boleh meningkatkan kebolehbacaan kod anda dengan ketara, menjadikannya lebih mudah untuk difahami dan diselenggara. Dengan mematuhi prinsip OOP dan menggunakan teknik pemfaktoran semula ini, anda boleh menulis kod PHP yang mantap dan mampan.

Atas ialah kandungan terperinci Pemahaman mendalam tentang pengaturcaraan berorientasikan objek PHP: teknik pemfaktoran semula kod untuk pengaturcaraan berorientasikan objek. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn