Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - gill

Stran: 1 ... 5 6 [7] 8 9 ... 18
91
Vývoj / Re:MySQL - podmíněný SELECT přes dvě tabulky
« kdy: 05. 10. 2019, 22:28:17 »
jak jste z toho tvrzení vyvodil, že výsledek ty řádky obsahovat má?

On je obsahovat nebude. Pokud dáte WHERE tbl2.allowed > 0, tak se ty řádky vynechají.

potom nepotřebujete left join

92
Vývoj / Re:MySQL - podmíněný SELECT přes dvě tabulky
« kdy: 05. 10. 2019, 22:12:33 »
proč left join?

Left join tam musí být, viz zadání úkolu: "S tím, že tbl2.id_data nemusí obsahovat všechny data v tbl1.id_data"

jak jste z toho tvrzení vyvodil, že výsledek ty řádky obsahovat má?

93
Vývoj / Re:Naučení se asynchronnímu programování
« kdy: 05. 10. 2019, 22:01:30 »
ale co mi chybí a chtěl bych doplnit je asynchronní styl myšlení.

to se naučíte jen praxí. Napište, jaký problém chcete asynchronně řešit, v jakém jazyce, a my vám poradíme konkrétněji.

94
Vývoj / Re:Naučení se asynchronnímu programování
« kdy: 05. 10. 2019, 21:46:42 »
doporučuji starší videa Davida Beazleyho, kde implementuje vlastní event loop https://www.youtube.com/watch?v=MCs5OvhV9S4

https://www.youtube.com/watch?v=ZzfHjytDceU


následně implementoval i vlastní alternativu k asyncio, curio https://github.com/dabeaz/curio

která se sice neprosadila, ale inspirovala změny v standardním asyncio

95
Vývoj / Re:Naučení se asynchronnímu programování
« kdy: 05. 10. 2019, 21:40:02 »
Asi bych začal s Javascriptem a oficiální dokumentací od Mozilly. Můžete si pohrát třeba s fetch API, zkoušet čisté Promisy i async/await. Snažte se používat jen API postavená na Promisech, dnes by to neměl být problém.

V Pythonu je to zkomplikované neexistencí jednotné event loop. await v Pythonu je v podstatě jen alias pro yield from. Na druhou stranu v async knihovnách v Pythonu existují standardní synchronizační primitiva jako asyncio.Queue a další https://docs.python.org/3/library/asyncio-sync.html, v JS musíte používat balíky třetích stran a kombinovat víc knihoven.

97
Vývoj / Re:MySQL - podmíněný SELECT přes dvě tabulky
« kdy: 04. 10. 2019, 12:55:24 »
ale da sa aj subselect:

Ale fuj, to bude mnohem pomalejší. Na tento příklad je jediným správným řešením LEFT JOIN + WHERE.

proč left join?

98
Vývoj / Re:Python - šíře nasazení
« kdy: 01. 10. 2019, 13:47:23 »
"zda má nainstalovaný interpret Pythonu atd."

to řeší balíčky.

99
Vývoj / Re:Java - jak vymazat z ArrayListu množinu položek
« kdy: 27. 09. 2019, 15:48:05 »
dlouhá diskuze, zatím tu nezanělo žádné krátké řešení s vytvořením nového arraylistu. Rád bych viděl jednořádkový Java kód, který dělá to stejné co moje řešení v Kotlinu.

Java:

val list = Arrays.asList("one", "two", "three", "four");
val toremove = Arrays.asList(1, 2);
val filteredIdx = toremove.stream().map(list::get).collect(Collectors.toList());
System.out.println(filteredIdx); // [two, three]


prvky z toremove naopak zachova.

100
Vývoj / Re:Java - jak vymazat z ArrayListu množinu položek
« kdy: 26. 09. 2019, 16:13:21 »
dlouhá diskuze, zatím tu nezanělo žádné krátké řešení s vytvořením nového arraylistu. Rád bych viděl jednořádkový Java kód, který dělá to stejné co moje řešení v Kotlinu.

101
Vývoj / Re:Java - jak vymazat z ArrayListu množinu položek
« kdy: 23. 09. 2019, 20:26:30 »
Pomocí streamů:

Kód: [Vybrat]
List<String> arrList = new ArrayList<>();
arrList.add("a");
arrList.add("b");
arrList.add("c");
arrList.add("d");

Integer[] indexes = { 1, 3 };
List<Integer> indexesList = Arrays.asList(indexes);
List<String> withItemsRemoved = arrList.stream().filter(i -> !indexesList.contains(arrList.indexOf(i)))
.collect(Collectors.toList());
System.err.println(withItemsRemoved);

Output: [a, c]

Samozřejmě je nutné vzít v potaz kontext, ve kterém se tahle akce provádí a případně použít jiné performantnější řešení.

tohle je špatně a pomalé. Nebude to fungovat, když se v tom arraylistu opakují hodnoty. Správný přístup by asi byl vytvořit pole indexů, to přefiltrovat a následně namapovat prvky z toho původního arraylistu. Ale, je to zbytečně komplikované. V Javě je stručnější normální imperativní přístup.

102
Vývoj / Re:Java - jak vymazat z ArrayListu množinu položek
« kdy: 23. 09. 2019, 12:44:54 »
Metoda ArrayList.removeAll() provadi remove v cyklu, coz zvysuje vypocetni slozitost.

removeAll hlavně dělá něco jiného, než na co se ptal tazatel. Odstraňuje položky podle hodnot, on chce odstranit podle indexů.

103
Vývoj / Re:Java - jak vymazat z ArrayListu množinu položek
« kdy: 22. 09. 2019, 20:23:25 »
Když ty indexy seřadíš, tak při procházení od nejmenšího víš, o kolik jsou ty další posunuté, nebo při procházení od nejvyššího tě posunutí netrápí. Jak se na tohle můžeš ptát?

nebo procházet od největšího.

Kód: [Vybrat]
Collections.sort(toremove, Collections.reverseOrder());
for (int i : toremove)
    list.remove(i);

to je asi nejstručnější, ale nejsem si jistý složitostí. Jistější je vytvořit nový seznam.

104
Vývoj / Re:Java - jak vymazat z ArrayListu množinu položek
« kdy: 22. 09. 2019, 19:49:21 »
Díky za odpovědi, vyřešil jsem jednoduše vytvořením nového ArrayListu. Šlo mi jen o to se ujistit, zda neexistuje nějaká metoda, kterou by se to dalo sfouknout na jednom řádku kódu.

možná nějakou knihovnou nebo přejít na Kotlin, v Kotlinu existuje metoda filterIndexed

Kód: [Vybrat]
val list = listOf("one", "two", "three", "four")
val toremove = setOf(1,2)
val filteredIdx = list.filterIndexed { index, _ -> index !in toremove  }
println(filteredIdx) // [one, four]

pokud vím, v Javě nic podobného není, ani v Guavě a podobných knihovnách. Musel bys vytvořit list indexů, ten přefiltrovat a potom namapovat. Možná by šel elegantně použít predikát "in" z Guavy. Záleží, jestli ti jde o jednoduchost nebo o výkon.

105
Sítě / Re:Internet a statistika okolo něj
« kdy: 11. 09. 2019, 15:57:48 »
2) A World Wide Web za jak dlouho se zdvojnásobí?

to nejde zjistit, protože na většinu webů nevede žádný odkaz, nejsou veřejně dostupné nebo je vyhledávače ignorují z jiného důvodu.

Zajímavý článek o tzv. deep webu, který údajně tvoří 99% internetu.

https://curiosity.com/topics/the-deep-web-is-the-99-of-the-internet-you-cant-google-curiosity/

Stran: 1 ... 5 6 [7] 8 9 ... 18