Vianoce v ITnetwork sú tu! Dobí si teraz kredity a získaj až 80 % extra kreditov na e-learningové kurzy ZADARMO. Zisti viac.
Hľadáme nové posily do ITnetwork tímu. Pozri sa na voľné pozície a pridaj sa k najagilnejšej firme na trhu - Viac informácií.

Diskusia – 1. diel - Úvod do jazyka Kotlin, platformy a IntelliJ

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Michael Škrášek:9.4.2018 21:35

Paráda ... říkal jsem si kdy se tady objeví i Kotlin :)

Odpovedať
9.4.2018 21:35
"I choose a lazy person to do a hard job. Because that person will find an easy way to do it. " Bill Gates
Avatar
David Hartinger
Vlastník
Avatar
David Hartinger:10.4.2018 11:59

Přidány rozdíly mezi Javou a Kotlin

Odpovedať
10.4.2018 11:59
New kid back on the block with a R.I.P
Avatar
Atrament
Člen IT Redactor Gang
Avatar
Odpovedá na David Hartinger
Atrament:10.4.2018 16:01

Java má lambda výrazy od verze 8

 
Odpovedať
10.4.2018 16:01
Avatar
David Hartinger
Vlastník
Avatar
Odpovedá na Atrament
David Hartinger:10.4.2018 19:21

To sice má, ale pokud vím, vypadají asi nějak takhle:

List<String> collect = data1.stream().map(account -> account.getName()).collect(Collectors.toList());

A v Kotlinu takhle:

val collect = data1.map { it.name }
Odpovedať
10.4.2018 19:21
New kid back on the block with a R.I.P
Avatar
Atrament
Člen IT Redactor Gang
Avatar
Odpovedá na David Hartinger
Atrament:10.4.2018 20:05

Tak ten javovský příklad by asi byl správněji takto:

List<String> collect = data1.stream().map(Account::getName).collect(Collectors.toList());

ale to není pointa, ta je v tom, že Java prostě lambda výrazy má, takže tvrzení v článku, že je 'autoři Javy stále nepřidali' je nesprávné.

 
Odpovedať
10.4.2018 20:05
Avatar
David Hartinger
Vlastník
Avatar
Odpovedá na Atrament
David Hartinger:10.4.2018 20:06

Ok, doplnil jsem tam slovo jednodušší.

Odpovedať
10.4.2018 20:06
New kid back on the block with a R.I.P
Avatar
Atrament
Člen IT Redactor Gang
Avatar
 
Odpovedať
10.4.2018 20:08
Avatar
Samuel Kodytek
Tvůrce
Avatar
Odpovedá na Atrament
Samuel Kodytek:10.4.2018 21:13

Ahoj, máš pravdu, Lambda funkce jsou od Java 8, ale je to spíš takový syntactic sugar než anonymní funkce.

V Javě se lambda funkce tvoří přes anonymní třídy, které implementují nějaký interface s jednou metodou a ten interface pak vytvoříš... Je to docela komplikovaný a zdlouhavý proces oproti Kotlinu, Swiftu, Scale atd.

Například v Kotlinu si můžeš definovat proměnou jako funkci, a nemusíš řešit žádný interface nic.

Proto bych lambda funkce nechal v tom porovnání :)

Odpovedať
10.4.2018 21:13
There is more than one way to screw it
Avatar
nickname01
Člen
Avatar
nickname01:6.6.2018 14:35

var moznost: String = "kompilace do js"

Tato možnost je v současné době ještě experimentální.

Znamena to nejake riziko pri pouzivani teto funkce?

Editované 6.6.2018 14:36
 
Odpovedať
6.6.2018 14:35
Avatar
Samuel Kodytek
Tvůrce
Avatar
Odpovedá na nickname01
Samuel Kodytek:13.6.2018 13:13

Znamená to, že "kompilace" do js nebude zatím moc stabilní. I když si myslím, že kotlinovskej interpret má už i nějakou stabilní verzi, ale jelikož se moc nezajímám o js tak mě tahle možnost nikdy moc nelákala a proto si nejsem 100% jistý.

Odpovedať
13.6.2018 13:13
There is more than one way to screw it
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!