Diskuze: Převedení stringu na příklad
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.


Ahoj můžeš si vybrat .. budu listovat varianty od nejhorší, ale nejsnadnější k té nejtěžší ale nejlepší ... (bohužel nic jako skvělá a správná varianta, která bude snadná neexistuje)
1. od jdk verze 1.6 je přítomen Javascript engine... můžeš snadno tenhle engine nastartovat a předat mu String a pak na ten String zavolat Javascriptovou funkci eval()
asi takhle:
import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;
public class Evaluator {
public static void main(String[] args) throws Exception{
ScriptEngineManager ScriptEnMan = new ScriptEngineManager();
ScriptEngine ScriptEn = ScriptEnMan.getEngineByName("JavaScript");
String expression = "20+3";
System.out.println(ScriptEn.eval(expression));
}
}
Špatný je, že pokud to chceš dát někam kde bude moc hodnotu Stringu měnit uživatel, tak bys na to měl rovnou zapomenout, ten javascriptovej eval() je masivní zlo!!!
2. Použij knihovnu co jsem našel na githubu https://github.com/…ewski/EvalEx
Šatný je, že pokud jsi začátečník, tak ti to dá zabrat, nebo spíš
jen pokud jsi to ještě nikdy nedělal, naimportovat si knihovnu, projít
dokumentaci, nevíš pořádně co se tam děje... no hlava ti půjde kolem 
3. Pokud to poběží jen na jedné a neměnné architektuře, můžeš použít nástroje dostupné z terminálu...třeba bash na tohle má program, který můžeš pomocí process builderu zavolat, jméno neuvádím, pokud je to vážně to, pro co se rozhodneš progoogli si to dle potřeby...
Špatný je, že když ti to upgradujou, změní se chování programu, program bude nečekaně smazán, nebo odinstalován.. seš nahranej...teda tvůj program...a taky do toho nevidíš..nevíš jestli do toho stroje nějakou chybou nezaneseš něco co bys úplně nechtěl...
4. Napiš si parser, ideálně nějakej co používá rekurzi, bude výkonej, budeš rozumět tomu co se tam děje...
Špatný je, že ti to zabere dost času, a není to triviální...
Doufám, že jsem pokryl dostatečnou škálu na to aby sis udělal obrázek.
Mimochodem zapoměl jsem doplnit, že existuje i pár jiných možností,
třeba kompilace - využití interního prostředí javy jako
kompilátoru...dost obtížné! a samozřejmě nemusíš použít konkrétní
scriptovací engine (klidně to může být groovy a ne javascript... nebo
cokoliv) a nebo si zvol jinou knihovnu...slyšel jsem že v javě je
zabudouvaný jexl .. nezkoušel jsem, ale asi taky použitelné 
Je díky moc
použil sem
hned to první a stačí mi to díky moc
Zobrazeno 4 zpráv z 4.