• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    KOJAProgramovani 40+
    SULTHAN
    SULTHAN --- ---
    JARDABEREZA: test coverage si můžeš vygenerovat úplně v každém jazyce. Pokud testuješ něco většího, tak to není unit test.
    JARDABEREZA
    JARDABEREZA --- ---
    Mě hodně baví dělat test driven development, když píšu binární parsery souborových formátů. Tam je to bez testů sebevražda :-D Navíc souborové formáty jsou velmi dobře popsané. Takže rovnou během psaní vidím řádky, které mi právě psaný kód rozbíjí :-D U jiného softwaru je to otázka...
    JARDABEREZA
    JARDABEREZA --- ---
    SULTHAN: U JavaScript/TypeScript si můžeš vygenerovat test coverage. A místo testu pro tu jednu funkci si může napsat něco většího, kde to bude zahrnuté taky a díky test coverage budeš vědět, že to taky testuješ.
    SATAI
    SATAI --- ---
    SULTHAN: Tak ono zase 100% uz je ten kontraproduktivni extremismus. Ale zkusenost rika, ze co se blbe testuje byva blby kod.
    SULTHAN
    SULTHAN --- ---
    KOLCON: Tak já rozhodně nejsem proti automatizaci testů, jen úplně nesouhlasím s tím, že unit testy jsou vždy ta nejlepší úroveň, kde něco testovat. A i já jsem si prošel obdobím, kdy jsem se snažil mít kód pokrytý z 100%, včetně případů, které v podstatně nemohly nikdy nastat.
    KOLCON
    KOLCON --- ---
    SULTHAN: Třeba Allen Holub říká, že se má testovat, jestli ten kód dělá to, co chce uživatel, a ne každá picovina....
    SATAI
    SATAI --- ---
    SULTHAN:

    - spíše není pravda
    - není pravda (pokud nemáš nějaký obzvláště dementní jazyk, ale to není problém unit testu)
    - když máš křivou hubu, err, framework...
    SULTHAN
    SULTHAN --- ---
    SATAI: Tak zrovna ty unit testy jak kde a jak na co.

    - některé unit testy jsou vyloženě zbytečné. Když mám funkci na 1-3 řádky tak unit testovat jí je často ztráta času. Nemluvě o tom, že často ani nejde unit testovat jinak než tak, že se přesně zduplikuje její kód.
    - pro unit testy potřebuješ většinou mockovat. A mockování je ve spoustě jazyků neřešitelný problém. Respektive je to řešitelné tak, že se všechny závislosti (včetně například konstruktoru pro Datum apod) abstrahují do interface. Zpravidla to architekturu zkomplikuje. Někdy až tak, že se stane totálně nepřehlednou (viz test-induced design damage).
    - pokud je kód nějak hodně propojený s nějakým frameworkem, tak většionu nelze úplně oddělit náš kód od toho frameworku. Typický příklad je například jakýkoliv UI kód s nějakým UI frameworkem. Ten UI kód zpravidla nelze oddělit od UI frameworku tak, abys mohl unit testovat výstupy. Důsledek - Frontend se velmi špatně unit testuje.
    SUCHRE
    SUCHRE --- ---
    Tady ani nejde o kritiku nejakeho smeru nebo modniho vystrelku, ale jak tak pozoruju, trendum propadaji typove porad ti sami lide.

    Pragmaticky clovek se soustredi na to, aby reseni bylo funkcni, dobre se udrzovalo, popr. rozvijelo, nevyziralo dostupne zdroje a bylo v co nejvetsi mire efektivni. Pak je zbytek, co se neustale neco snazi zmenit, at uz se to tyka pouzite technologie, metodiky, programovaciho jazyka, atp.

    Zatimco diky prvnim by v odvetvi panovala nuda, diky druhym se musime porad neco ucit, neblbneme a diky nutnosti porad neco nekam migrovat je i dost prace pro lidi, co jsou v oboru dlouho a mileradi si to nechaji dobre zaplatit.
    TECHNOBI
    TECHNOBI --- ---
    ANSI barvičky

    MARASAN
    MARASAN --- ---
    Co na tech seznamech zaujalo mne, ze prakticky nic z toho se neuci na fakultě, naopak vsechno, co mne na fakultě naučili, je pořád platný a užitečný. Scary.

    SATAI: ja bych rekl, ze treba i patterns - hlavne ve forme antipatterns, jsou uzitecny.
    KLEINZACH
    KLEINZACH --- ---
    MLEKAR_STEIN: ou je, na to sem uplne zapomnel! a ruku v ruce s objektovym programovanim z toho vznikla CORBA a tam nekde jsme kolektivne usoudili, ze to asi staci, ze sme nekde museli sejit z cesty ;)

    SATAI: jj, jenom se to nesmi prehanet, to je vse
    SATAI
    SATAI --- ---
    KLEINZACH: pritom tak pulka tech veci (zejmena ty unittesty) dava porad velmi dobry smysl a nedelat je je strilet se do nohy
    MLEKAR_STEIN
    MLEKAR_STEIN --- ---
    ADRAGON: okolo roku 2k muselo být všechno klient server.
    dokonce na to byl i srandovní "Hello world" jako c - s
    MARASAN
    MARASAN --- ---
    mi teda objektovy nesedi vubec a produkuju funkcionalni. ovlivneny to je hodne asi tim,ze pouzivam kompletni kvalitni OS Erlang/OTP. :-D
    SATAI
    SATAI --- ---
    KOLCON: loser!
    KOLCON
    KOLCON --- ---
    JANFROG: Zlatý objekty, z funkcionalniho programování se mi vaří mozek a debugovat to po někom bych taky nechtěl…
    JANFROG
    JANFROG --- ---
    KLEINZACH: Byla? Ja mel za to ze jeste nepominula...no jo, asidelam full-remote moc dlouho a ztracim kontakt se svetem (a jeho trendy).

    Me osobne na tom funkcionalnim trendu bavilo (bavi) ze obvykle proponent zacinal hanopisem na OOP a pak oslim mustkem presel na na funkcionalni, a oho, solidni matematicka teorie lambda kalkulu atd atp. Tak jsem si vzdycky vzpomel na skvely email Vaslly Bykova o dualite objektu a funkci vyssich radu a dal jel OOP :-)
    DEEFHA
    DEEFHA --- ---
    KLEINZACH: Jj, od toho jsou vlny, aby se vracely :⁠-⁠)
    Kliknutím sem můžete změnit nastavení reklam