abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:00 | IT novinky

    Programovací jazyk JavaScript (Wikipedie) dnes slaví 30 let od svého oficiálního představení 4. prosince 1995.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnosti CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.

    Ladislav Hagara | Komentářů: 2
    dnes 02:44 | Komunita

    Bylo rozhodnuto, že nejnovější Linux 6.18 je jádrem s prodlouženou upstream podporou (LTS). Ta je aktuálně plánována do prosince 2027. LTS jader je aktuálně šest: 5.10, 5.15, 6.1, 6.6, 6.12 a 6.18.

    Ladislav Hagara | Komentářů: 0
    dnes 02:22 | Nová verze

    Byla vydána nová stabilní verze 3.23.0, tj. první z nové řady 3.23, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 6
    včera 18:11 | Nová verze

    Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 16
    včera 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 01:55 | Nová verze

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    2.12. 19:33 | Nová verze

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 0
    2.12. 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední 2.12. 18:34
    Rozcestník

    Dotaz: Upřesnění class v php

    30.4.2012 13:31 Dušan S.
    Upřesnění class v php
    Přečteno: 256×
    Ahoj, chtěl bych se zeptat, jestli je tohle správný zápis v php.
    $menu = new menu();
    $menu = $menu->menuTop();
    a taky bych potřeboval poradit, jak ošetřit to, že když vytvořím objekt třeba new foo() ale v jiné třídě potřebuji taky zavolat foo() ale nevím jestli již ten objekt neexistuje, jestli jsem ho nevolal dříve. Díky za pomoc...

    Řešení dotazu:


    Odpovědi

    30.4.2012 13:46 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Upřesnění class v php
    Správný je, ale je divný, první řádek vytvoří instanci třídy menu a přiřadí ji do proměnné, druhý řádek zavolá metodu té instance a její výsledek uloží do stejné proměnné - tedy ji přepíše a odkaz na instanci již není.
    new Foo() vytvoří instanci třídy Foo a instancí si můžete vytvořit kolik chcete, jestli chcete mít jen jednu instanci, definujte si třídu jako Singleton.
    Případně můžete použít statické proměnné a fce.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    30.4.2012 22:15 Dušan S.
    Rozbalit Rozbalit vše Re: Upřesnění class v php
    Děkuji za objasnění
    Josef Kufner avatar 30.4.2012 23:31 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Upřesnění class v php
    Singleton nebrat, je to stejná prasárna jako globální proměnné.

    Jen výjimečně je opravdu potřeba zajistit, že nebude existovat druhá instance. V drtivé většině případů to je jen lenost/neschopnost programátora, předávat si potřebný objekt napříč programem.
    Hello world ! Segmentation fault (core dumped)
    1.5.2012 10:20 l4m4
    Rozbalit Rozbalit vše Re: Upřesnění class v php
    Říkáš-li A, měl bys ale říci i B a podle stejné logiky zavrhnout i veškeré statické členy tříd. Já neříkám tak ani tak, ale zkrátka zapotřebí být konzistentní.
    1.5.2012 10:20 l4m4
    Rozbalit Rozbalit vše Re: Upřesnění class v php
    s/zapotřebí/je zapotřebí/
    Josef Kufner avatar 2.5.2012 11:10 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Upřesnění class v php
    Jo, statické členy jsou to samé, ale aspoň jsou omezeny na prostor té dané třídy. Navíc satické metody jsou užitečné/nutné, pokud potřebuješ např. factory metodu (i konstruktor lze chápat jako statickou metodu) nebo pro různé pomocné nástroje, které nemají/nepotřebují vazbu na konkrétní instanci. Statické členské proměnné pak můžou být užitečné v podobě různých konstant.

    Singleton je ale jen objektový obal na globální proměnnou. Navíc maskuje, kde se vlastně používá -- objekt vrácený metodou getInstance lze přiřadit čemukoliv, takže není na první pohled zřejmé, s čím máš tu čest. U globální proměnné máš aspoň stejný symbol všude (sice pak může nastat problém s kolizema, ale většinou je její název dostatečně unikátní).

    Jak ke globálním proměnným, tak k singletonu i statickým členům by měl být vždy hodně dobrý důvod. Tím, že se singleton dostal mezi "hezké" návrhové vzory, se používá i tam, kde k tomu důvod není a spousta lidí si neuvědomuje, že "jedna instance ⇒ singleton" je blbost.
    Hello world ! Segmentation fault (core dumped)
    1.5.2012 17:01 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Upřesnění class v php
    Hm, tak to je slovo do pranice…
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

    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.