Wpis z mikrobloga

✨️ Obserwuj #mirkoanonim
#programowanie #java #kotlin #naukaprogramowania

Hej. Mam kontroler w Springu i Kotlinie, używam w nim RestClienta który zwraca obiekt nullowalny, więc w serwisie normalnie robię ?: i jeżeli jest null to rzucam wyjątkiem. Ale przygotowuję się do rozmowy o pracę, a tam w stacku mają Kotlin Arrow. Nigdy z nim nie pracowałem i zastanawiałem się, czy w takich sytuacjach można zostawić w kodzie to ?: xxException czy może inna jest konwencja z użyciem Arrow?



· Akcje: Odpowiedz anonimowo · Więcej szczegółów
· Zaakceptował: razzor91
· Autor wpisu pozostał anonimowy dzięki Mirko Anonim

  • 4
  • Odpowiedz
@mirko_anonim: Nigdy się nie spotkałem z taką składnią, żeby przypisywanie wartości rzucało Exception, bo tym de facto jest operator ?: który bierze pierwszą nie nullową wartość. A wiele dziwnych rzeczy widziałem, np. kod odziedziczony po Hindusach.
  • Odpowiedz
@mirko_anonim: arrow to podchodzi pod monady, chodzi o to abyś zwracał obiekt "Result, Either itp." https://kt.academy/article/unlocking-the-full-potential-of-kotlin-with-arrow alternatywa ale nie do końca dla Arrow jest Result ze standardowej biblioteki kotlina. Problem jest z exceptionami więcej masz tu info: https://www.reddit.com/r/Kotlin/comments/u9am18/why_no_one_recommends_the_use_of_the_standard/ https://elizarov.medium.com/kotlin-and-exceptions-8062f589d07
  • Odpowiedz
@acpiorundc: zawsze mnie rozwala jak ludzie biorą język X a potem próbują w nim pisać jakby to był język Y zamiast wziąć po prostu język Y. Jak chcesz pisać funkcyjnie na platformie Java to bierzesz Scalę albo Clojure a nie doczepiasz cztery deski do psa i udajesz że masz ośmiornice.
  • Odpowiedz