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 13:33 | Nová verze

    Svobodný kancelářský balík ONLYOFFICE (Wikipedie) byl vydán ve verzi 9.0. Jak online Docs, tak i offline Desktop Editors. Přehled novinek také na YouTube.

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

    Byla vydána nová verze 5.2.0 programu na úpravu digitálních fotografií darktable (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    dnes 00:55 | Zajímavý software

    XLibre Xserver je fork X.Org Serveru. Enrico Weigelt včera oznámil vydání verze 25.0 se slovy "tento fork je nezbytným, protože je výslovným přáním většiny současné skupiny X.Org (IBM / Red Hat) opustit projekt, nechat ho navždy shnít a blokovat jakékoli podstatné příspěvky, natož nové funkce".

    Ladislav Hagara | Komentářů: 15
    dnes 00:22 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    včera 17:33 | Bezpečnostní upozornění

    Experti na kybernetickou bezpečnost potvrdili (en) největší dosud zaznamenaný únik dat. Hackeři při něm odkryli skoro 16 miliard přihlašovacích údajů z celého světa včetně účtů společností Google, Apple, Facebook, dalších sociálních sítí nebo některých serverů státní správy.

    Ladislav Hagara | Komentářů: 2
    20.6. 19:55 | IT novinky

    Společnost Meta ve spolupráci se společností Oakley oznámila řadu chytrých brýlí Oakley. První Oakley Meta HSTN si lze předobjednat za 499 dolarů.

    Ladislav Hagara | Komentářů: 0
    20.6. 16:11 | IT novinky

    Ministerstvo průmyslu a obchodu (MPO) vyjádřilo podporu předložení projektu AI Gigafactory CZ, který do veřejné konzultace Evropské komise zaslala společnost České Radiokomunikace (CRA) v rámci iniciativy Project AIGF CZ. Jde o významný krok k rozvoji výpočetní infrastruktury pro umělou inteligenci (AI), která je prioritou resortu. Projekt je v souladu s cíli Národní strategie umělé inteligence ČR 2030 a je již součástí návrhu

    … více »
    Ladislav Hagara | Komentářů: 13
    20.6. 13:11 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 154 (pdf). S podtitulem Automatizace domácnosti.

    Ladislav Hagara | Komentářů: 0
    20.6. 12:22 | IT novinky

    Americký prezident Donald Trump podepsal exekutivní příkaz, který prodlužuje lhůtu pro prodej amerických aktiv aplikace TikTok vlastněné čínskou společností ByteDance do amerických rukou o dalších 90 dnů. Americký Kongres loni v dubnu kvůli bezpečnostním obavám přijal zákon, podle kterého měl vstoupit v platnost zákaz sítě TikTok v USA v případě, že se prodej neuskuteční do 19. ledna. Trump však v lednu lhůtu pro prodej prodloužil o 75 dnů. V dubnu pak přikročil k prodloužení o dalších 75 dnů, lhůta tak měla vypršet dnešním dnem.

    Ladislav Hagara | Komentářů: 4
    20.6. 12:11 | IT novinky

    Microsoft hodlá zrušit další tisíce pracovních míst, a to především v obchodních odděleních. Předchozí kolo propouštění se uskutečnilo v květnu a dotklo se 6000 zaměstnanců. Vedení firmy již dříve upozornilo, že vzhledem k rozsáhlým investicím do umělé inteligence (AI) se bude snažit omezovat výdaje v jiných oblastech.

    Ladislav Hagara | Komentářů: 5
    Jaký je váš oblíbený skriptovací jazyk?
     (57%)
     (29%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 291 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: JavaScript namespace

    19.8.2009 12:47 Sten Fil | skóre: 4
    JavaScript namespace
    Přečteno: 584×

    Ahoj, nenapada vas proc se v JS zavedli "namespace" s teckou

    frameworkXY.ui.Form

    proc neni

    frameworkXX_ui_Form

    S tou teckou mi to pripada matouci, kdyz pres tecku se pristupuje k atributum objektu.

    Stejne nemuzu v prg. pouzit

    using frameworkXY.ui;

    abych mohl psat jen

    var xx = new Form ();

    vzdy musim psat

    var xx = new framework.ui.Form ();

     

    Diky za nazory.

     

    Odpovědi

    Tarmaq avatar 19.8.2009 16:42 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: JavaScript namespace
    treba proto, ze _ muze byt soucasti nazvu?
    jinak misto using ti snad nic nebrani zkratit si to s:
    var ui = framework.ui;
    var xx = new ui.Form();
    
    Don't panic!
    8.9.2009 11:14 Sten Fil | skóre: 4
    Rozbalit Rozbalit vše Re: JavaScript namespace

    To by slo, ale z C# vim, ze v realu se mi to nehodilo. Bylo to matouci.

    Takze bud mam using celeho namespace a nebo pisu plnou kvalifikaci.

     

    8.9.2009 09:13 Mazarik
    Rozbalit Rozbalit vše Re: JavaScript namespace

    Pretoze to nie su namespacy ako ich pozname z inych jazykov, ale vlastnosti/atributy objektu.

    8.9.2009 11:12 Sten Fil | skóre: 4
    Rozbalit Rozbalit vše Re: JavaScript namespace

    Presne to mam na mysli. Proc nazvou objekt, tridu, metodu

    xx.bubla.Neco

    misto

    xx_bubla_Neco

    a tecky by zustali pro pristup k atributum.

    xx_bubla_Neco.Metoda1 ();

    Kdyz chcou pouzit ty tecky tak s tim maji spousty komplikaci, jelikoz se jedna o objekt v objektu objektu atd.

    Nechapu proc si to komplikuji.

    ???

    8.9.2009 11:26 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: JavaScript namespace
    Kdyz chcou pouzit ty tecky tak s tim maji spousty komplikaci, jelikoz se jedna o objekt v objektu objektu atd.
    A o jaké přesně komplikace jde? Já jen že mne žádná nenapadá. Jmenný prostor je prostě objekt, na tom není nic divného.
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    8.9.2009 11:45 Sten Fil | skóre: 4
    Rozbalit Rozbalit vše Re: JavaScript namespace

    soubor AAA/UI/Button.js

    function AAA_UI_Button ()
    {
    }
    AAA_UI_Button.prototype.Metoda1 = function ()
    {
    };
    AAA_UI_Button.prototype.Metoda2 = function ()
    {
    };

    soubor AAA/UI/Label.js

    function AAA_UI_Label ()
    {
    }
    AAA_UI_Label.prototype.Metoda1 = function ()
    {
    };
    AAA_UI_Label.prototype.Metoda2 = function ()
    {
    };

    pouziti:

    var btn1 = new AAA_UI_Button ();

    var lbl1 = new AAA_UI_Label ();

    btn1.Metoda1 ();

    lbl1.Metoda2 ();

    S trochou nadsazky mam dva soubory a v kazdem jednu tridu.

    Coz mi pripada jasne. Zkuste to prepsat do teckove notace?

     

    8.9.2009 13:06 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: JavaScript namespace
    var AAA = { }
    AAA.UI = { }
    AAA.UI.Label = function() { }
    AAA.UI.Label.prototype.Metoda1 = function() { }
    
    var btn1 = new AAA.UI.Label()
    btn1.Metoda1()
    Nebo tak nějak, nejsem v objektovém modelu JavaScriptu úplně zběhlý, abych psal kód po paměti. Podle mě hledáte problém, kde není.

    Drobný dotaz: které řešení víc zasviní globální jmenný prostor? :-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    8.9.2009 13:50 Sten Fil | skóre: 4
    Rozbalit Rozbalit vše Re: JavaScript namespace

    Problem nehledam, jen mne tak napadlo se zeptat co si o tom mysli ostatni.

    Rozhodne diky za vas nazor.

    Co se tyce "zasvineni globalniho jmenneho prostoru".

    To je nejaky problem, ze tam na jedne urovni bude

    AAA_UI_Button

    AAA_UI_Label

    Kvuli rychlosti nebo kvuli cemu by to melo vadit?

    8.9.2009 14:11 Mazarik
    Rozbalit Rozbalit vše Re: JavaScript namespace

    Problem to nie je, ale zasvini sa tym globalny menny priestor. Potom v debugery vidite velke mnozstvo objektov zacinajucich na AAA_UI. Nic nebrani tomu, aby ste to tak pouzivali, ale vacsine ludi to vyhovuje s bodkovou notaciou, ako mozete vidiet v najznamejsich knizniciach. Ak je to s bodkovou notaciou, tak sa da velmi dobre vyuzivat this.

    8.9.2009 19:23 Michal
    Rozbalit Rozbalit vše Re: JavaScript namespace

    On je problém hlavně v tom, že javascript je úplně odlišný od jazyků jako je Java, C/C++, Php. Bohužel všichni se snaží používat postupy z těchto jazyků i v Javascriptu a to je chyba. Dám příklad jak pracovat OOP v Javascriptu. Jde o to co nejvíce využít toho, že javascript ma closures.

    var ui = {};
    //neco jako trida v javascriptu
    var ui.Button = function (name) {
     return {
      getName : function () {
       return name;
      };
     }
    };
    var objectButton = ui.Button('nazev');
    objectButton.getName();

    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.