Závislostní typy rubrika: Programování: Jiné
Jen ze zvědavosti, použili jste někdy závislostní typy? Něco jako v tomto článku.
Nepoužil. Já jsem spíš praktik, takže raději jsem si radši parsoval zdroják a odvozoval co je v jednotlivých proměnných a kontroloval jestli to nekoliduje. Aspoň předpokládám, že k takové kontrole mají tyto typy sloužit.
Ono hodně hodně záleží na typu aplikace. Dovedu si představit, že v nějaké kompaktní aplikaci (.exe) se to přes nějaké "lepší typy" dá dělat. Ale já většinou píšu něco co si vytáhne data z db, pak je nějak zpracuje, pak je třeba protáhne HTML formulářem (třeba editace záznamu), pak je v controleru zase nějak zpracuje a uloží do db.
Samozřejmě, že bych chtěl dělat kontroly (jedno externím striptem nebo typově kompilátorem) jestli třeba někde nesčítám eura s korunama, jestli nespojuji html a čistý text, jestli vše co vypisuji na výstup je html (ve smyslu htmlspecialchars), jestli jsem si někde v LEFT JOIN nespopletl ukazatele na databázová id a neukazují na něco jiného, jestli nemůže nastat situace, že do db chci narvat delší string než je délka varcharu, atd...
Ale pokud toto vše chci kontrolovat, tak kromě "programových typů v jazyce" musím brát do úvahy i typy z db, kontrolovat SQL dotazy, vnutit kontrolnímu procesu aby chápal vazbu mezi vypisovanými inputy a tím co přijde v $_POST (tj. aby vlastně pochopil framework), aby rozuměl atributu maxlength (u inputu), atd...
A to se obávám jen přes typy nejde. Ale třeba mne pokračování článku přesvědčí o tom, že se mýlím :-).
Pro zobrazení všech 2 odpovědí se prosím přihlaste:
Nebo se přihlaste jménem a heslem: