PHP OOP: Základy objektového programování - třídy [1]

PHP OOP: Základy objektového programování - třídy [1]

Základní myšlenkou objektově orientovaného programování (OOP) je pohled na program jako na systém objektů = tzn. podobně jako vnímáme náš svět. V tomto článku se podíváme na definici a vytvoření třídy, atributů třídy, autoloader tříd a tři typy viditelnosti.

Hlavní tří body OOP jsou:

  • zapouzdření
  • dědičnost
  • polymorfismus

 

PHP OOP - co je to třída?

Třída (class) je v objektově orientovaném programování základním kamenem aplikace - seskupuje objekty se stejnými vlastnostmi. Třída neobsahuje konkrétní hodnoty - ty má až objekt. Jinak řečeno, jedná o šablonu/vzor objektu definující jaké vlastnosti a metody má každý z objektů této třídy. Objekt vzniklý dle třídy se nazývá instance. Atribut třídy je vlastnost, kterou mají všechny objekty dané třídy.

PHP OOP - jak vytvořit třídu?

Můžeme chtít vytvořit např. třídu Letadla, která bude mít veřejné (public) atributy třídy $oznaceni, $rychlost a $hmotnost - prakticky to znamená vytvoření souboru classes/Letadla.php s tímto obsahem:


class Letadla //třída letadla
{
public $oznaceni; //atribut třídy
public $rychlost; //atribut třídy
public $hmotnost; //atribut třídy
}



Třídu pak stačí pouze ručně includovat v daném PHP souboru.

PHP OOP - autoloader tříd

V budoucnu mohou naše aplikace obsahovat velké množství tříd a includování každé třídy zvlášť by bylo otravné, proto je vhodné použít v záhlaví tzv. autoloader tříd.

Funkce autoloader níže includuje automaticky všechny třídy v adresáři classes/*


function autoloader($class)
{
require("classes/$class.php");
}
spl_autoload_register("autoloader");



PHP OOP - co je viditelnost?

U atributů a metod se definuje ještě tzv. viditelnost (visibility), jsou tři typy:

    • public - k metodám a atributům lze přistupovat ze všech tříd
    • protected - k metodám a atributům může přistupovat jen daná třída a potomci
    • private - k metodám a atributům může přistupovat jen daná třída

 

PHP OOP - co je konstruktor?

Konstruktor __construct() je tzv. magická metoda - začíná dvěma podtržítky. Ze všech magických metod je konstruktor asi nejvíce využívaný. Konstruktor se vždy sám spustí při vytvoření instance třídy a provádí provotní nastavení objektu.

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

Všechny magické metody jsou:

__construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep(), __wakeup(), __serialize(), __unserialize(), __toString(), __invoke(), __set_state(), __clone() a __debugInfo()

Související obsah

serial-php-oop

php

programovani

vyvoj

php-oop

Komentáře

Vaše reakce na PHP OOP: Základy objektového programování - třídy [1]

Reference

Podívejte se na naše reference

Prohlédnout

Aplikace

Podívejte se na naše aplikace

Prohlédnout

Co umíme?

Podívejte se co umíme

Prohlédnout

Co umíme?

Vytváříme sofistikované aplikace pro náročné

Od webových aplikací přes android až po převodové můstky či složité informační systémy.

Podívejte se k nám

Máte ještě čas? Podívejte se na další rubriky

Tento web používá soubory cookie. Dalším procházením tohoto webu vyjadřujete souhlas s jejich používáním.. Více informací zde.