Wpis z mikrobloga

Doradzi ktoś książkę lub grubsze poczytanko w necie o #kotlin z zakresu #programowanie dla doświadczonego pythonisty, który nigdy w życiu nie lizał #java ?
Czy raczej trzeba się Javy uczyć, bo bez tej wiedzy Kotlina się nie ogarnie?
Zacząłem już apke na androida pisać w kotlinie, jest bardzo spoko, ale co chwilę obijam się o jakiś zawiłości javy, których nie ogarniam. Dzięki.
  • 8
@dict: Zawiłości Javy czy upośledzenie Androida jako Androida? ( ͡° ͜ʖ ͡°)
Sam szedłem drogą Java -> Kotlin, ale szczerze mówiąc pisząc w Kotlinie nie kojarzę rzeczy, które by się mocno opierały na specyfice Javy jako języka.
via Wykop Mobilny (Android)
  • 4
@dict: Kotlin jest na JVM (podobnie jak Scala), więc bez dogłębnej znajomości jakiegoś języka JVM (w domyśle Java) ciężko dogłębnie poznać inny język na JVM. Teoretycznie się da, ale to z Javy wszystko wyrosło. A w praktyce to też można w innych językach JVM korzystać z bibliotek w Javie, więc prędzej czy później Java się przyda.

Dla mnie Kotlin to syntactic sugar dla Javy. Przyspiesza i ułatwia pracę. Jak chcesz po
@Zelber: pajtoniści nie muszą ogarniać NPE. Do tego wyjątki i w ogóle obycie z kodem. Chodzi mi glownie o te podwójne wykrzykniki i znaki zapytania. Kiedy co i jak?
@mk321: dzięki, kumam to i tak mi to właśnie wygląda, że mogę się javy uczyć, a Kotlin mi sam wtedy wskoczy, jako wlasnie upraszczające paradygmaty. Podoba mi się ta składnia w przeciwieństwie do Javy.

@mk321: nie ( ͡° ͜ʖ ͡°)

W pythonie nie pisze się lambd, bo nie trzeba. Można, jak chcesz jednolinijkowca, ale oprócz późnego wiązania, które jest #!$%@? nawet dla doświadczonych, nie ma żadnego powodu, aby pisać lambdę.

Lambda może być ochydna w pythonie, jak chcesz kilkulinijkową napisać. ...ale wtedy po prostu piszesz funkcję - w dowolnym miejscu, nawet wewnątrz innej funkcji, czy metody i masz "nazwaną lambdę", możesz
via Wykop Mobilny (Android)
  • 0
@dict:

Chodzi mi glownie o te podwójne wykrzykniki i znaki zapytania


Może przeczytaj dokumentację kotlina chociaż? Jakieś "getting started"? Bo to są jego podstawy, samo sedno. Zamiast rąbać kod z !!. Pewnie nie używasz scope functions let/run/also/apply.