Jak psát vlastní funkce pro ASP
Každý programátor se po čase dostane do situace, kdy mu základní funkce jazyka nemohou stačit a konkrétní řešení ho přiměje napsat si funkci vlastní. To platí i pro ASP a jazyk VB Script.
Funkce může například pracovat s číslem (numerická), řetězcem (znaková) nebo vracet logickou hodnotu True/False atd. Taková napsaná funkce je úplně stejná jako již hotová funkce jazyka, vtip je jen v tom, že si tu svojí musíte naprogramovat a ještě ke všemu správně. Moje zkušenosti mě přivedly ke zjištění, že pokud složitou funkci „odfláknu“ a nějak si ji honem spíchnu, vrátí se mi moje lenost nebo spěch jako bumerang a hledání chyby ve složitém kódu se pro mě stává skutečným trestem. Jinými slovy, u složitých a velmi složitých funkcí se pečlivost vyplatí, a pokud příště takovou budu potřebovat, mám ji už hotovou a odladěnou.
Základní kámen
Každá dobrá funkce musí umět zpracovat hodnoty ze vstupu a zároveň pracovat bezchybně. Jaké podmínky by měla splňovat ?
Běh funkce samotné nesmí skončit žádnou chybou za běhu programu. Funkce musí umět ve svém těle rozlišit, zda hodnoty předané parametry jsou správné a v povoleném rozsahu. Funkce musí být na naprogramovaná tak, aby vždy vracela některý z požadovaných výsledků. Je žádoucí, aby funkce pracovala co nejrychleji a vynechala všechny nepotřebné řádky kódu ve svém těle. Začneme nyní od skutečného Adama a budeme se věnovat příkladu funkce řetězcové.
Řetězcová funkce
Funkce TRIM jazyka VB Script „očistí“ řetězec od počátečních a koncových mezer. Díky tomu můžete např. řetězce porovnávat. Příklad:
muj_retezec = TRIM(muj_retezec)
Co udělá předcházející řádek? Funkce TRIM() obdrží jako parametr funkce hodnotu (v závorkách). Tato hodnota je řetězec, který má být ořezán od případných počátečních a koncových mezer. Funkce zajistí ořezání a výsledkem je nová hodnota řetězce – do muj_retezec se vloží nová hodnota a ta původní je „zapomenuta“ a přepsána hodnotou novou.
Sprostotám je konec
Pokud budete chtít zabránit, aby vám uživatel do diskuze nevkládal např. konkrétní sprostá slova a jiné nežádoucí vulgární výrazy, VB Script vám nepomůže. Musíte si tedy naprogramovat vlastní funkci (uváděný kód pouze naznačuje složitější variabilní řešení). Funkce dostane jméno stop_vulgar a parametrem text_oduziv jí bude předána řetězcová hodnota, to jest řetězec k prozkoumání.
Zdrojový kód této funkce:
|
Všimněte si, že funkce je přesně popsaná v komentáři:
Možná že vám připadá trochu malicherné funkci podrobně popisovat, ale pokud ji naprogramujete a použijete, za týden si budete sotva pamatovat, že ji máte, natož abyste si pamatovali podrobnosti. Pokud si ji hezky okomentujete, budete ji mít popsanou přesně pro svoje potřeby a nemusíte později bádat nad tím, co funkce dělá a jaký vrací výsledek.
Funkce splňuje všechny požadavky z úvodu:
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Vstupte do éry umělé inteligence: ASOME Max Studio s AMD Ryzen™ 9 7940HS
14. listopadu 2023 -
Rychlost serveru: Klíč k lepšímu umístění ve vyhledávačích
7. června 2024
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024