Details zum E-Book

Programowanie funkcyjne. Krok po kroku

Programowanie funkcyjne. Krok po kroku

Joshua Backfield

E-book

Zmień swoje podejście do programowania!

Języki funkcyjne zdobywają wśród programistów coraz większą popularność. Jak bezboleśnie zmienić sposób myślenia na funkcyjny? Ułatwi Ci to niniejsza książka, w całości poświęcona temu podejściu do programowania.

Poznaj podstawy teoretyczne programowania funkcyjnego, a następnie zacznij zgłębiać tajniki typów funkcyjnych, rekurencji oraz zmiennych niepodlegających modyfikacji. Z kolejnych rozdziałów dowiedz się, czym są ewaluacja rygorystyczna i nierygorystyczna. Zobacz też, jak wykonać dopasowanie do wzorca. Co jeszcze znajdziesz w tej książce? Wprowadzenie do języka Scala, przedstawienie języka Groovy oraz opis technik funkcyjnego programowania obiektowego to tylko niektóre z poruszanych w niej tematów. Jeżeli chcesz zmienić sposób programowania na funkcyjny, to doskonała pozycja dla Ciebie!
  • Dowiesz się, czemu obecne sprawnie działające aplikacje lepiej funkcjonują z kodem funkcyjnym.
  • Przejdziesz od wzorców stylu imperatywnego do kodu funkcyjnego w kilku podstawowych krokach.
  • Przyspieszysz z językami Groovy i Scala dzięki przykładom.
  • Zrozumiesz, w jaki sposób typy funkcyjne są przekazywane do innych funkcji i zwracane z nich.
  • Przekonwertujesz istniejące metody na funkcje czyste, a pętle na metody rekurencyjne.
  • Przejdziesz od zmiennych mutowalnych do niemutowalnych.
  • Uzyskasz praktyczne doświadczenie w zakresie stosowania instrukcji oraz ewaluacji nierygorystycznej.
  • Będziesz stosował programowanie funkcyjne z elementami programowania obiektowego.

Przekonaj się, jak podejście funkcyjne może ułatwić Ci życie!

Przedmowa (7)

1. Wprowadzenie (15)

  • Przegląd koncepcji programowania funkcyjnego (15)
    • Typy funkcyjne (16)
    • Funkcje czyste (16)
    • Rekurencja (16)
    • Zmienne niemutowalne (16)
    • Ewaluacja nierygorystyczna (16)
    • Instrukcje (17)
    • Dopasowywanie do wzorca (17)
  • Programowanie funkcyjne i współbieżność (17)
  • Podsumowanie (18)

2. Typy funkcyjne (19)

  • Wprowadzenie do firmy XXY (19)
  • Funkcje jako obiekty (22)
    • Refaktoryzacja przy użyciu struktur if-else (22)
    • Refaktoryzacja przy użyciu obiektów funkcji do wyodrębniania pól (24)
  • Funkcje anonimowe (30)
    • Funkcje lambda (30)
    • Domknięcia (33)
  • Funkcje wyższego rzędu (35)
  • Refaktoryzacja funkcji get za pomocą języka Groovy (37)
  • Podsumowanie (38)

3. Funkcje czyste (41)

  • Dane wyjściowe zależą od danych wejściowych (41)
  • Oczyszczanie funkcji (45)
  • Skutki uboczne (50)
  • Podsumowanie (53)
    • Przestawianie się na język Groovy (54)

4. Zmienne niemutowalne (59)

  • Mutowalność (59)
  • Niemutowalność (65)
  • Podsumowanie (71)

5. Rekurencja (73)

  • Wprowadzenie do rekurencji (74)
  • Rekurencja (77)
  • Rekurencja ogonowa (80)
  • Refaktoryzacja funkcji countEnabledCustomersWithNoEnabledContacts (81)
  • Podsumowanie (83)
    • Wprowadzenie do języka Scala (84)

6. Ewaluacje rygorystyczne i nierygorystyczne (87)

  • Ewaluacja rygorystyczna (88)
  • Ewaluacja nierygorystyczna (leniwa) (89)
  • Leniwość może stwarzać problemy (93)
  • Podsumowanie (96)

7. Instrukcje (99)

  • Skok na głęboką wodę (100)
  • Proste instrukcje (100)
  • Instrukcje blokowe (102)
  • Wszystko jest instrukcją (104)
  • Podsumowanie (112)

8. Dopasowywanie do wzorca (113)

  • Proste dopasowania (113)
  • Proste wzorce (115)
  • Wyodrębnianie listy (118)
  • Wyodrębnianie obiektów (120)
  • Konwersja na dopasowywanie do wzorca (122)
  • Podsumowanie (124)

9. Funkcyjne programowanie obiektowe (125)

  • Hermetyzacja statyczna (125)
  • Obiekty jako kontenery (127)
  • Kod jako dane (129)
  • Podsumowanie (132)

10. Podsumowanie (134)

  • Od imperatywności do funkcyjności (134)
    • Wprowadzenie funkcji wyższego rzędu (135)
    • Konwersja istniejących metod na funkcje czyste (135)
    • Konwersja pętli na metody rekurencyjne lub ogonoworekurencyjne (136)
    • Konwersja zmiennych mutowalnych na niemutowalne (136)
    • Co dalej? (136)
  • Nowe wzorce projektowe (137)
    • Przekazywanie komunikatów dla osiągnięcia współbieżności (137)
    • Wzorzec Opcja (rozszerzenie wzorca Pusty Obiekt) (137)
    • Czystość metody singletona z zachowaniem obiektowości (138)
  • Wszystko razem (139)
  • Podsumowanie (147)

Skorowidz (149)

  • Titel: Programowanie funkcyjne. Krok po kroku
  • Autor: Joshua Backfield
  • Originaler Titel: Becoming Functional
  • Übersetzung: Lech Lachowski
  • ISBN: 978-83-283-0246-4, 9788328302464
  • Veröffentlichungsdatum: 2015-03-12
  • Format: E-book
  • Artikelkennung: pfukpk
  • Verleger: Helion