Programowanie funkcyjne Kamieńsk

Programowanie funkcyjne jest jednym z głównych paradygmatów programowania. W rozmowach o programowaniu funkcyjnym zawsze pojawiają się określone pojęcia i zagadnienia. Rekurencja. Leniwe obliczenia. Przezroczystość odwołań. Eliminowanie efektów ubocznych. Funkcje jako obiekty pierwszej klasy. …

od 71,50 Najbliżej: 19 km

Liczba ofert: 2

Oferta sklepu

Opis

Programowanie funkcyjne jest jednym z głównych paradygmatów programowania. W rozmowach o programowaniu funkcyjnym zawsze pojawiają się określone pojęcia i zagadnienia. Rekurencja. Leniwe obliczenia. Przezroczystość odwołań. Eliminowanie efektów ubocznych. Funkcje jako obiekty pierwszej klasy. Funkcje wyższego poziomu. Rozwijanie (currying). Dopasowywanie wzorców. W książce Programowanie funkcyjne. Poznaj Clojure Elixir Haskell Scala Swift autorzy poruszają wszystkie te zagadnienia, spoglądając na nie z perspektywy pięciu różnych języków programowania. Ale programowanie funkcyjne to nie jest podejście typu wszystko albo nic. Całkiem sensowne jest napisanie kodu imperatywnego, który wykorzystuje niektóre techniki funkcyjne, praktyki i struktury danych. Do przyjęcia jest mieszanie i dopasowywanie stylów, a niektóre języki programowania są wręcz zaprojektowane do budowy hybrydowej, pozwalając na korzystanie ze stylu, który najlepiej pasuje do bieżących potrzeb użytkownkia. W książce Programowanie funkcyjne. Poznaj Clojure Elixir Haskell Scala Swift autorzy analizują te różne podejścia, a czytelnicy sami mogą zdecydować, co im najbardziej pasuje. Spis treści: Okładka Strona tytułowa Strona redakcyjna Wprowadzenie Podziękowania 1. Programowanie funkcyjne wraca do łask Widzieliśmy już ten film Nowe argumenty za programowaniem funkcyjnym 2. Myślenie funkcyjne dla imperatywnego umysłu Wszystko sprowadza się do funkcji Chodzi o niemutowalność Chodzi o sposób myślenia 3. Scala i styl funkcyjny Czystość funkcyjna Funkcje wyższego rzędu Prosty przykład Przykład praktyczny Co ze znajdowaniem błędów i wydajnością? 4. Praca z kolekcjami języka Scala Kolekcje niemutowalne Kolekcje zmienne (mutowalne) Kolekcje leniwe 5.Tworzenie funkcji wyższego rzędu w języku Scala Tworzenie funkcji wyższego rzędu Wiele list parametrów Wartości funkcji i wzorzec pożyczki 6. Wywiad z Richem Hickeyem Dlaczego Clojure? Infrastruktura Z czym go porównać? 7.Zrozumienie języka Clojure dlaczego Lisp nadal się liczy REPL Wektory i słowa kluczowe Makra 8. Tożsamość, wartość i stan w Clojure Model obiektowy Model Clojure 9. Programowanie współbieżne w Clojure Prosty problem programowania współbieżnego Rozwiązania w Clojure 10. Wzorce i przekształcenia w języku Elixir Dopasowywanie do wzorców Dopasowywanie do wzorców dla danych strukturalnych Dopasowywanie do wzorców i funkcje Przekształcenie to zadanie numer 1 11. Stawanie się funkcyjnym za pomocą Elixira Funkcje anonimowe Funkcje nazwane Przykład praktyczny Refaktoryzacja do stylu funkcyjnego Co wyróżnia ten kod 12. Równoległość w języku Elixir Model aktora Aktory a Elixir Komunikaty Monitorowanie naszego procesu Ostatni przykład Współbieżność to istota Elixira 13. Haskell i myślenie funkcyjne O co w tym wszystkim chodzi Szybkie ćwiczenie Typy danych są niedrogie Dopasowywanie do wzorców Rekurencja, sterowanie i funkcje wyższego rzędu Inne własności 14. Haskell w praktyce Po jednym kroku Generowanie kandydatów Filtrowanie słownikowe Wyszukiwanie wszerz Użycie wyszukiwania Wydajność i optymalizacja 15. Swift co powinniśmy wiedzieć Hello, Swift! Funkcyjny Swift 16. Myślenie funkcyjne w języku Swift Nie używamy nil, chyba że celowo Unikanie stanu mutowalnego Należy używać funkcji wyższego rzędu 17. Protokoły Swift kontra Ruby i Elixir Problem z rozszerzeniami Przypadek dla protokołów Protokoły i rozszerzenia 18. Dopasowywanie do wzorca w Scali Liczenie monet Dopasowywanie wszystkich rzeczy Korzystanie z wyodrębniania 19. Współbieżność w Scali Korzystanie z kolekcji równoległych Wiedza, kiedy użyć współbieżności Powrót do wcześniejszego przykładu 20. Wyjątkowa obsługa wyjątków w Clojure Prosty przykład Problem z wyjątkami Rozwiązanie warunki Ułatwmy życie elementom wywołującym Lenistwo i błędy 21. Testowanie platformy dla Elixira Inwestowanie w testowanie Jeden eksperyment, kilka miar Optymalizowanie konfiguracji za pomocą TrueStory Zagęszczanie i łączenie miar Kontrolowanie powtarzania konfiguracji z zagnieżdżonymi kontekstami Kontrolowanie powtarzania konfiguracji za pomocą potoków historyjek 22. Tworzenie danych testowych w języku Elixir Typowe podejścia Piękne dane dla pięknych testów Rejestrowanie szablonów i prototypów za pomocą Forge Tworzenie instancji wpisów szablonów Wzajemne atrybuty i having Tworzenie struktur Tworzenie niestandardowych jednostek Przystosowywanie zapisywania 23. System typów w języku Haskell TL;DR (Too long; didnt read zbyt długie, nie dało się odczytać) Do czego służą typy? Konkretny przykład sortowanie Język systemu typów Haskella Wnioskowanie i sprawdzanie typów Kilka przykładów Wygodna przerwa Interfejsy i klasy typów Rzeczywiste przykłady z interfejsami Zalety i wady reguła 80/20 Po Haskellu typy zależne Twierdzenia są typami, a dowody programami Inne spojrzenie na sortowanie Wracamy na ziemię 24. Projekt w Haskellu testowanie kodu natywnego Nasz kod natywny Krótkie wprowadzenie do FFI Haskella Opakowywanie naszego natywnego kodu w Haskellu Eksperymentowanie z GHCi Krótkie wprowadzenie do QuickCheck Pisanie własności równoważności Likwidacja usterek 25. Wiele twarzy funkcji Swifta Anatomia funkcji Swifta Wywoływanie wszystkich funkcji Wywoływanie metod Metody instancji są funkcjami rozwiniętymi Init uwaga specjalna Wyszukane parametry Parametry o zmiennej liczbie argumentów Generyczne typy parametrów Parametry zmienne Funkcje jako parametry Kontrola dostępu Wyszukane typy zwrotne Funkcje zagnieżdżone 26. Funkcyjne podejście do Lua Funkcje pierwszoklasowe w Lua Rekurencja w Lua Budowanie za pomocą pierwotnych elementów funkcyjnych Prosta animacja w grze O autorach Bibliografia Przypisy

Specyfikacja

Podstawowe informacje

Autor
  • Michael Swaine
Rok wydania
  • 2020
Format
  • MOBI
  • EPUB
Ilość stron
  • 286
Kategorie
  • Programowanie
Wybrane wydawnictwa
  • PWN