• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    MICTECH: A s tou classou pak co? Ja nechci aby tu classu pouzival nekdo jiny, takze ji budu muset dat zase private. Nic tim nevyresim.

    MORMEGIL: Cili kvuli tomu abych neporusil pravidlo "zakaz testovani private" tak porusim pravidla pro definovani scope ty metody z private na internal? Tu metodu nema nic jinyho z ty assembly pouzivat, ani ji nema videt, tak by nemela byt internal.

    Imho by mel mit prednost spravnej navrh a automaticky testovani by si melo najit zpusoby jak se s tim vyrovnat (coz uz ma).
    MORMEGIL
    MORMEGIL --- ---
    TENCOKACISTROMY: No vždyť to píšu: „z privátních metod udělat internal“.
    MICTECH
    MICTECH --- ---
    TENCOKACISTROMY: Chapu co myslis.

    Nicmene tebou popisovany pripad bych ja osobne spis resil tim, ze ty "mensi" methody bych vytahnul do separatni class a tu bych testoval.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    MICTECH: Predstav si pripad, kdy mas dlouhou metodu - ta je public. Ale protoze neni dobry mit dlouhy metody, tak ji "rozkouzkujes" na mensi metody, ktery neco delaj a jsou jen pro tu public metodu. Ten "kousek" je ale pomerne komplikovanej. Hodi se ti tedy otestovat tenhle kousek, nicmene nechces aby dotycna metoda byla public/protected protoze videt by nesmi. Co s tim udelas?

    Imho pravidlo "testovani privatnich metod" je dobry zakladni voditko, ale rozhodne bych to nezaradil do kategorie "nikdy neporusovat".
    NECROMAN
    NECROMAN --- ---
    prave jsem naportoval asi 500kB Silverlight kodu do WinRT pro budouci Windows 8 appku. Zatim to nefunguje, ale uz se to da zkompilovat.
    Jinak zajimave zjisteni - v Silverlightu jsou property definovane v XAMLu by default internal, ale ve WinRT jsou definovane jako private, takze pokud k nim chce prostupovat nejaky cizi kod, tak je treba pouzit x:FieldModifier="internal"
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    MORMEGIL: Akorat ze to funguje jen na "itnernal" ne na "private", ne?
    MICTECH
    MICTECH --- ---
    KLON: Pokud pouzivas MS Test, tak jak pise
    MORMEGIL

    Nicmene, delat testy privatnich method je naprosto zbytecne. Testy jako takove jsou urcene pro testovani public rozhrani trid, apod.

    Pokud pises novou aplikaci, tak potreba testovani privatnich method ukazuje na spatny navrh uz od zacatku, takze doporucuji se zamyslet, treba jestli by dana methoda nemela byt public.

    Pokud se jedna o nejakou legacy aplikaci, tak spise doporucuji napsat kvalitni testy na public methody, pripadne wrapper pro tu privatni a teprve pote se zabyvat refactoringem.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    KLON: Pravy tlacitko ve VS -> create unit tests ... A ono ti to samo zaridi wrapper, ktery ty privatni metody "vytahne" verejne.
    MORMEGIL
    MORMEGIL --- ---
    KLON: Umístit testy dovnitř stejné třídy, nebo z privátních metod udělat internal (a pokud máte testy v jiné assembly, InternalsVisibleTo).
    SLUPKA
    SLUPKA --- ---
    KLON: můžeš je pro testy zviditelnit... nedat je public, ale atributem je označit, aby byly v testech viditelné...
    KLON
    KLON --- ---
    Jak se dají testovat privátní metody? Jedna mořnost je přes reflexi. Jinak mě napádá testovat jen public metody a tím i privátní z nich volané. Nějaká další možnost?
    CRANK
    CRANK --- ---
    CRANK: Ale pravda, nejsem si jistej, jestli tam mají ten mezikrok s konverzí do AVI :-D
    CRANK
    CRANK --- ---
    TENCOKACISTROMY:
    MICTECH:

    Offnyx kámoš má firmu a dělají takové ty velké televize do nákupáků apod. s animovanejma reklmamama. Infrastruktura a distrubuce jede na ERLANGu a samotný animace dělají snad ve flexu? (takže flash?)

    Nějak to určitě půjdu, zkusím se poptat v pondělí.
    MICTECH
    MICTECH --- ---
    LOOCAS: Spatne jsem polozil otazku.

    Kdo a v cem bude ty animace vytvaret?
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    TENCOKACISTROMY: Rekl bych, ze potrebujes neco na zpusob tohodle: http://www.fab-online.com/eng/subtitling/broadcast/subtmpg.htm
    Urcite bude existovat neco, co bude umet zapracovavat toho vic nez jen text.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    LOOCAS: V tom pripade potrebujes opravdu generovat to video. Urcite budou nejaky serverovy nastroje na streaming videa, ktery budou umet online zapracovavat titulky a nejaky dalsi vizualy. Timhle smerem bych se vydal hledat.
    LOOCAS
    LOOCAS --- ---
    TENCOKACISTROMY: Výsledek je animovaná předpověď aktuálního počasí, bohužel ve statickym formátu, jako AVI/MPG. :)
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    LOOCAS: Tak Silverlight a Flash neni dobra volba - to jsou nastroje pro klientskou stranu, ne pro serverovou.

    Neni mi uplne jasny, jak vlastne ten vysledek ma vypadat, tak se blbe radi :/
    LOOCAS
    LOOCAS --- ---
    MICTECH: Ne, mě je jedno v čem se to bude dělat, ale chci, aby nás neomezovala platforma v těch animačních schopnostech.

    Jinak jestli to bude v Assembleru, Silverlightu, nebo přímo ve flashi je mi fuk. :)

    Výsledek je ten, že z tý animace každou hodinu potřebuju dostat aktuální AVI/MPG, nebo aspoň sekvenci obrázků.
    SAJAGI
    SAJAGI --- ---
    MIRROR: Já to potřebuju v runtimu, ne staticky.
    MIRROR
    MIRROR --- ---
    SAJAGI: co doxygen? (strela do tmy)
    Kliknutím sem můžete změnit nastavení reklam