• ú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
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    TENCOKACISTROMY: no pravé to se po ME vyzaduje
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    ANDY_WARHOL: Vsak taky nikdo netvrdi, ze 100% code coverage je neco, 1) chces 2) zajistuje, ze to je spravne.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    BUTHRAKAUR: jenže ono se nedá říct jednoznacne, ze tento přístup je lepší. já to Vidim i z jinyho pohledu. nutí ME to myslet v atomizovanych casteckach ale já sem pysnej na to ze dokážu nasat celou aplikaci kompletně. už se kolikrát stalo, ze typek co to u nás protlacil, mel sice krasnej kód pokrytej testama AZ na pudu a pak se vyskytovaly podivný chyby a on nemohl přijít proc. protože ztratil přehled. Nevím jestli to popisuju aby bylo jasný jak to myslím. taky na mobilu se mi Pise blbe
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    ANDY_WARHOL: vsak tak to myslim - na prvotnim pochopeni, jak se TDD ma praktikovat, nic slozityho neni. Ale problem ze zacatku (aspon u mne) byl, jak to zacit aktivne pouzivat v praxi a uvedomit si ten prinos/oduvodnit si sam pro sebe tu na prvni hlupej pohled zbytecnou praci navic. To mi chvili trvalo, ale jakmile jsem videl realnej prinos v praxi, tak uz to jelo a vsechny pochyby zmizely v nenavratnu :)
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    BUTHRAKAUR: pochopil sem to celkem rychle ale nevztrebal. už sem dokonce přišel na to proc. ale to je spis psychologie tak to sem asi nebudu tahat.
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    ANDY_WARHOL: to je mozna proto, ze jsi to jeste kompletne nepochopil/nevstrebal - mne to treba trvalo tak 2 roky :) ale ncrunch je super - jen skoda, ze uz je z nej dost drahej komercni tool a mighty moose mi prijde o dost horsi :/
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    ale diky, nekdy o tom pokecame osobne
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    jo, ja tu mam jeste vychytavku ncrunch, ale proste me to sere. nevim co s tim
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    ANDY_WARHOL: Muj postup je nasledujici:

    1) Vytvorim tridu.
    2) Vytvorim metodu/metody, do nich dam "throw new NotImplementedException();"
    3) Vytvorim testovaci tridu + testovaci metodu/metody a do nich dam "Assert.Inconclusive();"
    4) Do testovacich metod napisu zakladni testy, zakonceni nechavam na "Assert.Inconclusive();".
    5) Pustim nove vytvoreny testy.
    6) Zacnu implementovat metody.
    7) Poustim testy.
    8) Opravuju implementaci/testy (podle toho co je blbe). Tohle opakuju dokud nejsem spokojenej.
    9) Jestlize jsem spokojenej i s testama, odstranim z konce testovacich metod i "Assert.Inconclusive();"
    10) Pustim vsechny testy.


    Takhle s tim jsem uplne spokojenej, setri mi to cas, muzu pohodlne debugovat casti systemu, ktery jsou hluboko ve strevech, aniz bych se musel X minut snazit dostat program do cilovyho stavu. Ale HLAVNE to je opakovatelnej test. Takze kdyz pak vymenim nejakou knihovnu za novejsi verzi (nebo prepisu kus kodu, kterej zprostredkovane pouzive kde-co vsechno), tak pustim vsechny testy a mam mnohem vetsi jistotu, ze je vse ok.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    bych koukam potreboval preprogramovat mozek
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    TENCOKACISTROMY: proste mi ten styl prace nejak nevyhovuje. nevim jak to rict, dneska sem si to uvedomil. delam testy az po metode a to je samozrejme opruz, a nejak se nedokazu prinutit to delat opacne jak by to melo byt. proste sem tomu neprisel na chut
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    ANDY_WARHOL: Proc ho nesnasis? My ho tedka poctive jedem na jednom projektu a musim rict, ze nam to opravdu ve vysledku setri cas a pripadny refactoring (nebo upgrade knihoven) delame s mnohem mensim strachem.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    dneska sem si uvedomil. ze nesnasim tdd. je tu nekdo stejne postizeny ?
    NECROMAN
    NECROMAN --- ---
    pro experimentatory
    CTP for Visual Studio Update 2 now available - Visual Studio ALM + Team Foundation Server Blog - Site Home - MSDN Blogs
    http://blogs.msdn.com/b/visualstudioalm/archive/2013/01/30/first-ctp-for-visual-studio-update-2.aspx
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    MICA: Muzes misto WebBrowser pouzit Awesomium. To funguje vyrazne lip. Neni to postaveny kolem molochu IE->ActiveX->.NET wrapper, ale je te C->.NET core na bazi WebKitu.
    MICA
    MICA --- ---
    TENCOKACISTROMY: No ještě to vyzkouším Případně zkusím pogooglovat jak ten moloch přinutit aby nestahoval obrázky (což způsobuje největší zpomalení)
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    MICA: Obavam se, ze ta komponenta WebBrowser neni delana na to, aby bezela v jinym nez v UI threadu. Muzes ji mit samozrejme Visible=false. Ale to tak vsechno co s tim muzes delat.
    MICA
    MICA --- ---
    Potřeboval bych naprogramovat v C# bota, který bude něco provádět na webových stránkách na kterých je hojně používán JavaScript (Takže WebClient není moc vhodný).
    Mám to již odladěné přes komponentu WebBrowser, jen mám problém s tím, že když se stránka načítá, tak se "kouše" celý Form ve kterém ten WebBrowser jede.
    Jak je to možné řešit? Je jediná možnost se rozloučit s možností "koukat na to co bot dělá" a vytvořit a používat WebBrowser v jiném threadu? Nebo to vyřešit samostatným Formem?
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    FREELA: Designove neni dobry mit na vstupu List<T>. Je nejakej duvod, proc nepouzit IEnumerable<T> nebo ICollection<T>?

    Kdyz pouzijes interface, muzes vyuzit schopnosti covarince a contravariance - viz clanek: http://msdn.microsoft.com/en-us/library/dd799517.aspx
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    proste vytvorit interface treba klidne i bez vlastnosti a metod, a pak v ty funcki nemit list object jako typ ale list ten interface, no a kazdemu z tech objektu, zde tedy konkretne product, bych dal ten interface.
    Kliknutím sem můžete změnit nastavení reklam