abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 6
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 45
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    25.4. 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 3
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 878 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: PHP OOP dedicnost vs polymorfismus?

    28.9.2020 13:22 Fanda
    PHP OOP dedicnost vs polymorfismus?
    Přečteno: 621×
    Zdravim

    Teprve se vsechno ucim chapat, takze dotaz bude zrejme stejne zmateny jako titulek...

    Dejme tomu, ze mam tridy FyzickaOsoba a PravnickaOsoba, ale chtel bych k nim pristupovat stejnym zpusobem. Tj. jako k tride Osoba a nerozlisovat mezi nimi dokud vylozene nemusim

    Jak to udelat spravne?

    Pomoci interfejsu nebo abstraktni tridy nebo si vystacim s pouhym "extends"...?

    Diky

    Řešení dotazu:


    Odpovědi

    28.9.2020 14:27 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Pokud má každá uvnitř fungovat jinak, tak je nejlepší definovat společné rozhraní a napsat k němu dvě třídy FyzickaOsoba a PravnickaOsoba.

    Pokud však potřebuješ společné některé vlastnosti a hlavně metody, může být namístě definovat společného rodiče Osoba. Je však dobré se vyhnout protected atributům, jinak z toho snadno vznikne guláš. Je lepší, když jsou všechny private.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.9.2020 14:46 Fanda
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Diky

    No chtel bych, aby se chovaly vicemene stejne, budou se lisit jen v nekolika atributech a metodach

    Jenomze kdyz budu mit tridu Osoba, ktera bude mit dejme tomu atributy/metody:
    • kontaktni_adresa
    • kontaktni_telefon
    • kontaktni_email
    a z ni podedim tridy PravnickaOsoba a FyzickaOsoba... budu chtit, aby Smlouvu ode me mela jenom >Osoba< a budu chtit, aby budto mela Osoba->dic nebo mela Osoba->rodne_cislo... Proste Smlouvu muze mit jak fyzicka tak i pravnicka osoba a ja to nechci resit (dokud nemusim)

    Zkratka mi hlava nebere jak to udelat :(

    Gréta avatar 28.9.2020 16:22 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?

    nóó vošklivý řešení je tam mit bool jestli je fyzická nebo právnická nebo univerzální string/nějakou svou třídu 'identifikátor'. noa hezký řešení asi takle. phpkář dušan to potom dyštak snad jakoby vopravý/rožšíří nějak :D :D :D :D ;D ;D

    todleto řešení je postavený na funcki get_class hele

    noa jako další možný hezký řešení by asi jako šlo mit ve třídě osoba abstraktní metodu 'identifikuj_se' kterou by si ty děcký voběkty nějak všecky řešily po svým. jak dělat abstraktní třídy/medoty návod třeba tady hele :O ;D

    
    // abstraktní třída osoba
    // tamto 'abstraktní' znamená jakoby jenom to že nejde vyrobit instance tý samotný třídy
    // slovíčko abstract nastrkávej až si budeš uplně jistej tim svým oběkovým návrhem rači 
    class Osoba 
    {  
        private $adresa;
        private $telefon;
        private $mail;
        
        // konstruktor
        function __construct($adresa, $telefon, $mail) {
            $this->adresa = $adresa;
            $this->telefon = $telefon;
            $this->mail = $mail;
        }
        
        // gettry/settry
        
        function set_adresa($adresa) {
            $this->adresa = $adresa;
        }
        function get_adresa() {
            return $this->adresa;
        }
        function set_telefon($telefon) {
            $this->telefon = $telefon;
        }
        function get_telefon() {
            return $this->telefon;
        }
        function set_mail($mail) {
            $this->mail = $mail;
        }
        function get_mail() {
            return $this->mail;
        }
    }
    
    
    class PravnickaOsoba extends Osoba
    {
        private $dic;
        
        function __construct($adresa, $telefon, $mail, $dic){
            //volání konstrukoru rodiče
            parent::__construct($adresa, $telefon, $mail);
            $this->dic = $dic;
        }
        
        function set_dic($dic) {
            $this->dic = $dic;
        }
        function get_dic() {
            return $this->dic;
        }
    }
    
    class FyzickaOsoba extends Osoba
    {
        private $rodneCislo;
        
        function __construct($adresa, $telefon, $mail, $rodneCislo){
            parent::__construct($adresa, $telefon, $mail);
            $this->rodneCislo = $rodneCislo;
        }
        
        function set_rodneCislo($rodneCislo) {
            $this->rodneCislo = $rodneCislo;
        }
        function get_rodneCislo() {
            return $this->rodneCislo;
        }
        
    }
    
    // funkce co dělá že vypiše osobu
    // asi by bylo hežčí udělat to jako statickou funkci tý třídy osoba nebo 
    // eště lepšejc jako nějakou abstraktní metodu 'vypiš' se ve třídě 'Osoba' a děti by si to nějak už zařídili posvým :D ;D
    function vypisOsobu($osoba)
    {
        echo $osoba->get_adresa();
        echo '<br>';
        echo $osoba->get_mail();
        echo '<br>';
        echo $osoba->get_telefon();
        echo '<br>';
    
        //funkce get_class dělá že vrací string s názvem třídy
        // nevim jak moc se muže rtti v php prodražit a jestli by nebylo lepčí
        // řešení mit na to nějakej enum nebo co voni v php maj pokavaď bys
        // měl víc než pár tříd :O :O
        if(get_class($osoba) === 'PravnickaOsoba')
        {
            echo $osoba->get_dic();
        }
        else
        {
            echo $osoba->get_rodneCislo();
        }
        echo '<br>';
    }
    
    // a teďo si to vyskoušíme na pepkoj a jednom takovým podnikateli politickým hádejte hádejte :O :D :D ;D
    $osoba1 = new FyzickaOsoba('pepek novak, pospoloprty', 123456789, 'pepek@seznam.biz','pepkovo rodny cislo');
    
    $osoba2 = new PravnickaOsoba('capak', 257171111, 'posta@vlada.cz', 'CZ46900411');
    
    vypisOsobu($osoba1);
    echo '<br>';
    vypisOsobu($osoba2);
    
    echo '<br><h1>hotovo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!</h1>';
    ?> 
    
    
    
    Gréta avatar 1.10.2020 14:15 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?

    to co sem fanda psal nebyl spam!!!!!!! :O :O :O :O :O :O :D :D :D :D :D :D

    mi jako jenom taktně naznačoval že mi houby rozumí :D :D ;D ;D

    2.10.2020 10:08 Ján Dráb | skóre: 4 | Banská Bystrica
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Nejako si pozabudol na existenciu __set() a __get(), ked už píšeš nejaký kód :)
    Everything has room for improvement.
    2.10.2020 11:05 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Celý ten kód je jak z minulého století, takže magické metody bych v něm ani nehledal.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Gréta avatar 2.10.2020 13:44 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?

    tttssssssssssssssssssssssssss náhodou je tam kouzelná metoda __construct :D :D ;D ;D

    2.10.2020 14:04 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Máš plus body za to, že jsi tam ani jednou nepoužila slovo "protected". V PHP ho nesnáším.

    Ovšem když už tam máš __construct(), k čemu jsou pak ty gettery a settery?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Gréta avatar 2.10.2020 16:17 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?

    slovíčko protected nesnáší každej kdo ho jakoby musel aspoň jednou někde nějak vobcházet nóó takže ho taky nemam moc ráda :D :D ;D ;D

    noa k čemu sou ty gettry/settry???? nóó teďko už vim že takle psaný celkem k ničemu v php :D

    2.10.2020 17:37 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Rozmyzlam, ze mozno kvoli tomu,ze PHP ma premenne silne polymorne, tak cez set/get vies filtrovat ze da spravny typ. Ak das nevhodny objekt (nie je instanciou tej triedy ktoru potrebujes), tak vychodis chybu/warning.
    debian.plus@protonmail.com
    2.10.2020 18:20 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Faktem je, že obvykle nedostávám ani noticky, i když je mám zapnuté.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Gréta avatar 3.10.2020 14:49 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?

    toldeto se už +- řikalo hele vlákno :D ;D kit tam řikal víc důvodů proč si myslí že to v php neni zase tak důležitý mit tam typy

    3.10.2020 15:18 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Typy nejsou důležité. Nejsou ani samospasitelné, protože není problém napsat program typově správně, ale ve výsledku zcela blbě.

    Práce v typově slabém jazyce však vyžaduje jiný přístup, než práce v typově silném. Pokud je u nábytku místo výšky uvedeno "na objednávku", tak to ničemu nemusí vadit. Pokud tam však má být počet kusů, tak je namístě v konstruktoru ošetřit, že na vstupu má být kladný int, který nebude větší, než určitý limit, případně ještě omezený stavem skladu. Všimněte si, že na tohle většina programovacích jazyků ani typ nemá, ale databáze ho mají. Proč to nesvěřit databázi, když to umí?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    2.10.2020 11:57 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    debian.plus@protonmail.com
    Gréta avatar 2.10.2020 13:43 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?

    to sem teda jako nepozabudla sem to totiž jako vůůůůbec nikdy neslyšela že v php takovej rovnák na vohejbák existuje :D :D ;D ;D

    btw jak efektivně v takovým gettru/settru vynutíš datovej typ anižbys ho buť při každým voláním nastavoval nebo v tý __set měl třeba nějakej switch/case a podle ména cpal typy?? :O :O třeba tenleten příklad hele přectav si žeti tam někdo skusí do tý tvý proměný height narvat string :O ;D

    2.10.2020 13:58 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    A čemu to vadí? Pokud je to specifikace nábytku v katalogu, tak tam může nacpat i měrnou jednotku. Jistě, je dost případů, kdy potřebuješ int a ten si ošetříš dle potřeby. Ovšem to ti třeba MySQL udělá také a navíc bez starostí.

    V PHP se o typy moc starat nemusíš, pokud nechceš. V Javascriptu na typy dlabou úplně a nikomu to nevadí.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Gréta avatar 2.10.2020 16:26 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?

    se řiká že prej se nikdy nesmí veřit uživateloj nóó tak mi připadá takový jakože logický hlídat si ty typy kromě před databází taky hnedka navstupu. typy se taky hoděj protože proměnou de blbě pomenovat a pak nemusí bejt jasný co obsahuje. navíc na pozadí všecky ty proměný maj nějakej typ a nemit nad tim možnost kontroly mi připadá takový divný :D

    V Javascriptu na typy dlabou úplně a nikomu to nevadí.

    nóó asi nevadí ale s vyjímkou lidí co si vyrobili typescript :O :D :D ;D

    2.10.2020 17:16 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Databáze si to dokáže ošéfovat sama, vstupy není třeba hlídat. Dělal jsem na appce, kde se vstupní data kontrolovala celkem 4×, z toho 3× zbytečně a pak to teprve šlo do databáze. Šéf to nařídil... A stejně to bylo blbě. Kdyby místo 4 povrchních kontrol byla jedna důkladná, tak s tím nebyly potíže.

    Data na vstupu zásadně nekontroluji, to dělá až business vrstva, která nejen kontroluje jejich formální správnost, ale dokáže vyhodnotit i případnou kolizi s jinými daty a takový vstup odmítnout.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.9.2020 16:30 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Proč bych měl do třídy Osoba dávat kontaktní adresy? Udělej si na to další třídu.

    Proč tam chceš rodné číslo u fyzické osoby? Myslíš si, že ti ho ta fyzická osoba dá?

    Tyhle věci navrhuji vždy směrem od databáze, tedy nejprve datovou strukturu a k tomu v PHP udělám vazbu s uživatelem. Nakonec zjistíš, že ti stačí jediná třída Osoba, ke které přidáš tabulku a třídu Kontakt, případně další tabulku a třídu Smlouva.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    28.9.2020 17:47 Fanda
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    No beru to tak, ze osoba muze mit nepreberne telefonnich cisel, emailu a adres, takze to resim vztahem has_and_belongs_to_many

    Ale vzdycky muze mit (pro me) jen jednu kontaktni adresu, telefon a email. Tak proc nemit v tabulce "osoby" odkazy na vsechny tyhle has_one vazby?

    28.9.2020 19:23 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Také nemusí mít žádnou adresu.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Gréta avatar 1.10.2020 14:25 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?

    'takže todleto si kupujeme na firmu noa támhleto si kupuju jenom na sebe. mail telefoní číslo a dodací adresu použijte v obou případech stejnou přece to nebudete posílat ve dou balících a mi si to už nějak poznáme nóó a kdyby byly problémky tak volejte na jedno z těhletěch dejme tomu pěti čísel mě asi nezastihnete ale von to věčinou vždycky někdo veme a převezme balík. noa kdyby přeci ne tak nechte balik u pani sousedky vomáčkový ve vedlejším baráku my sme tak domluvený že ji pak po někom pošlu peníze' :D :D ;D ;D

    1.10.2020 20:09 Fanda
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Ty poslys, Greto, kdyz uz jsi takovy vtipny, chytry a velkouzasnolepy... Vysvetli mi jeste k cemu jsou Interfaces

    Interface prece znamena rozhrani, ne? A da se to nejak pouzit proti cizi knihovne?

    Kdyz budu chtit pouzit nejakou "vendor" knihovnu, tak je pro me prece lepsi si mezi svoji aplikaci a tu knihovnu dat rozhrani, ne? Kde si nadefinuju vlastni metody a moje aplikace bude volat jenom tyhle vlastni metody

    Takze kdyz se autor te cizi knihovny rozhodne vsechno prekopat, nebo kdyz se rozhodnu tuhle knihovnu nahradit jinou, tak mi staci prepsat jenom to rozhrani, kdyz zachovam nazvy metod a parametry, a na zbytek aplikace nemusim sahnout. Je tak?

    Ale k tomu mi prece staci vytvorit si vlastni zdedenou tridu, ne? Neco jako:

    class DatumCas extends DateTimeImmutable

    Ja myslel, ze na to je prave to "Interfaces", ale zatim co koukam na priklady, tak kazdy dela Interface jenom vuci vlastnim tridam

    Nebo mi neco unika?

    A sarkasmem klidne nesetri, jenom ho prosim neaplikuj tolik, ze ti neni rozumet

    Diik ;)
    1.10.2020 21:00 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    To jsi zhruba popsal návrhový vzor Adaptér. Je velmi užitečný a používám ho docela často. Dědičnost zde obvykle nemá využití - zejména proto, že tvůrci takových knihoven s oblibou své třídy označují jako "final".

    Samotné rozhraní funguje trochu jinak. Je to jen seznam metod s parametry a konstant, které mají obě strany používat. Není přítomna žádná implementace. Tvůrce knihovny by takové rozhraní měl vytvořit a ty bys ho měl implementovat podle svých potřeb.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    1.10.2020 21:31 Fanda
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Tedy mam tomu rozumet tak, ze kdyz tvurce knihovny vytvori Interface, tak by tento nemel menit, jakkoli bude aktualizovat svoji knihovnu?

    A ja si mam ke svym tridam vytvaret a dodrzovat vlastni Interfacy proto, abych nemusel vsechno prepisovat, kdyz se mi zamane neco v tech tridach zmenit?

    Je-li tak, asi se mi zacina casit v makovici...

    Tisicere Diky!
    1.10.2020 21:55 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Ano, to rozhraní by měnit neměl, alespoň ne v minoritních verzích.

    Ano, je rozumné si vytvářet vlastní rozhraní, abys kdykoli mohl zaměnit třídy, které to rozhraní implementují. Mám například třídy Author a Book, které mají stejné rozhraní a díky tomu mohu s jejich instancemi pracovat jednotně. Navíc můžu kdykoli přidat třeba třídu Article se stejným rozhraním a na zbytku aplikace nemusím nic měnit. Velmi to tu aplikaci zjednoduší.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    1.10.2020 22:24 Fanda
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Tyy jo, ta uleva... tusim se tomu rika "AHA efekt" a je to tak prijemny!

    Ty bys mel, Kite, psat tutorialy!

    Jeste jednou diky vsem a dobrou noc

    1.10.2020 22:58 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Vysvetli mi jeste k cemu jsou Interfaces 
    Vo svete PHP nie je oficialne nic take. Ale vo svete Java, trieda moze dedit iba z jedneho rodica. Ak chces viac (co napr. v C++ ide), tak musis pouzivat v Jave rozhranie (a je to nieco ine ako trieda, aj ked dost blizko).
    debian.plus@protonmail.com
    1.10.2020 23:39 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Trochu jsi zaspal dobu. V PHP je interface i dědičnost. Jen tam není (vcelku zbytečná) dědičnost od více rodičů. Některým ta vícenásobná dědičnost chybí až tak, že ji nahrazují (více či méně úspěšně) pomocí trait.

    Interfaces v žádném případě nenahrazují vícenásobnou dědičnost. Mají zcela jiný účel.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    2.10.2020 11:59 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    PHP neviem, kedze PHP pouzivam ako procedurove/strukturove. Ok, mas pravdu. V PHP je nativne aj rozhranie.
    debian.plus@protonmail.com
    2.10.2020 12:41 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Jenom škoda, že hned ten první příklad je celý blbě. Správně je pouze syntakticky a občas může i fungovat. Vůbec však nerespektuje současné konvence.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    2.10.2020 14:16 Fanda
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Kdybys mel cas a chut, alespon v hrubych obrysech, uvest jak by ten prvni priklad mel vypadat, vubec bych se nezlobil

    Panbu ti to ;)
    2.10.2020 14:31 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: PHP OOP dedicnost vs polymorfismus?
    Zkusím jim to tam opravit, snad ten patch projde.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.