Po przejściu na funkcjonalny styl programowania po przejściu z procedur i OOP, co muszę wiedzieć z góry na temat „tego nowego sposobu myślenia”?
Jak przygotowujesz się do nurkowania w świecie FP i jak go po raz pierwszy?
Jakie są podstawy do nauki i postawienia na pierwszym miejscu?
functional-programming
JohnDoDo
źródło
źródło
Odpowiedzi:
Zdobądź kopię „Struktury i interpretacji programów komputerowych” i przećwicz pierwszy rozdział „Budowanie abstrakcji za pomocą procedur”. Najlepsze wprowadzenie do programowania funkcjonalnego, jakie kiedykolwiek miałem.
EDYCJA: Jeśli chcesz czegoś bardziej porównawczego, spróbuj „Siedem języków w siedem tygodni” (zrzeczenie się: ta książka jest nadal na mojej liście TODO).
źródło
Będziesz potrzebował myślenia deklaratywnego zamiast proceduralnego „najpierw zrób to, potem zrób to, a następnie zrób to ...” sposób rozwiązywania problemów. Zrozumienie rekurencji może być dobrym punktem wyjścia, ponieważ jest to swoisty punkt spoczynku między myśleniem proceduralnym a deklaratywnym.
źródło
Położyłeś wózek przed koniem. Nie musisz się przygotowywać. Po prostu wybierz język, który wygląda interesująco, znajdź dokumentację i spróbuj. Jeśli utkniesz, zatrzymaj się i poszukaj odpowiedzi. W miarę postępów twój sposób myślenia będzie się zmieniać.
źródło
FP opiera się na rachunku lamdba. Musisz to wiedzieć. To dobry punkt wyjścia. Funkcje są wszystkim. Nie ma pojęcia stanu (chociaż można go sfałszować na wyższym poziomie).
W OOP
jest akceptowane. Nie w FP. Po prostu nie możesz przypisać zmiennej innej wartości. Jeśli chcesz nauczyć się FP na dłuższą metę, naucz się Haskell. Jest to najczystsza wersja FP i jest też dość skomplikowana (dopiero zacząłem się jej uczyć), ale nadal warto się jej nauczyć.
Wprowadzenie do programowania funkcjonalnego daje ogólny przegląd tego, o co chodzi w FP.
Jednak dwa zastrzeżenia
źródło
Staram się jak najlepiej zapamiętać następującą mantrę:
źródło