Pytania otagowane jako functional-programming

Programowanie funkcjonalne jest paradygmatem, który próbuje rozwiązać problemy obliczeniowe poprzez łańcuchową ocenę funkcji, których wynik zależy od ich danych wejściowych, a nie od stanu programu. W tym stylu programowania skutki uboczne i zmienne dane są przestarzałe i zwykle ściśle izolowane.



2
Czy naprawdę możemy zastosować niezmienność w OOP bez utraty wszystkich kluczowych funkcji OOP?
Widzę korzyści płynące z uczynienia obiektów w moim programie niezmiennymi. Kiedy naprawdę głęboko zastanawiam się nad dobrym projektem mojej aplikacji, często naturalnie dochodzę do tego, że wiele moich obiektów jest niezmiennych. Często dochodzi do tego, że chciałbym, aby wszystkie moje obiekty były niezmienne. To pytanie dotyczy tego samego pomysłu, ale …



2
Wydajność pamięci Haskell - jakie jest lepsze podejście?
Wdrażamy bibliotekę kompresji macierzy opartą na zmodyfikowanej dwuwymiarowej składni gramatycznej. Teraz mamy dwa podejścia do naszych typów danych - które będzie lepsze w przypadku użycia pamięci? (chcemy coś skompresować;)). Gramatyki zawierają NonTerminals z dokładnie 4 produkcjami lub Terminal po prawej stronie. Będziemy potrzebować nazw Productions do kontroli równości i minimalizacji …


5
Oblicz, jeśli funkcja jest czysta
Zgodnie z Wikipedią: W programowaniu komputerowym funkcję można opisać jako czystą, jeśli obie instrukcje dotyczące funkcji hold: Funkcja zawsze ocenia tę samą wartość wyniku, biorąc pod uwagę te same wartości argumentu. Wartość wyniku funkcji nie może zależeć od żadnych ukrytych informacji lub stanów, które mogą się zmieniać w trakcie wykonywania …


3
Czy lepiej jest wstępnie inicjować atrybuty w klasie, czy dodawać je po drodze?
Przykro mi, jeśli jest to całkowicie absurdalne pytanie, ale jestem ciekawy, jakie są najlepsze praktyki i nie mogę znaleźć dobrej odpowiedzi w Google. W Pythonie zwykle używam pustej klasy jako super-catchallowego kontenera struktury danych (coś w rodzaju pliku JSON) i dodając atrybuty po drodze: class DataObj: "Catch-all data object" def …

3
Najlepsze praktyki programowania funkcjonalnego Scala lub Clojure
Dużo sam kodowałem, miałem trochę doświadczenia z równoległymi modelami programowania: aktorzy, pamięć transakcyjna oprogramowania, przepływ danych. Kiedy próbuję zastosować te architektury w prawdziwym życiu - do aplikacji sieciowej o dużym obciążeniu - żaden model nie obsługuje trwałości i trwałości danych. Rzeczywiste zadania wymagają zapisania danych na końcu. Oznacza to, że …


4
Projektowanie w „mieszanych” językach: projektowanie obiektowe czy programowanie funkcjonalne?
W ostatnich latach języki, których lubię używać, stają się coraz bardziej „funkcjonalne”. Teraz używam języków, które są rodzajem „hybrydowym”: C #, F #, Scala. Lubię projektować swoją aplikację przy użyciu klas, które odpowiadają obiektom domeny, i używam funkcji funkcjonalnych, dzięki którym kodowanie jest łatwiejsze, bardziej spójne i bezpieczniejsze (szczególnie podczas …

1
Wzorce interfejsu użytkownika w językach funkcjonalnych
Chciałbym zacząć bawić się w ClojureScript, ale zastanawiam się nad niektórymi punktami. Moim problemem jest to, co jest dobrym sposobem radzenia sobie ze zmianami stanu wynikającymi z interakcji użytkownika, gdy próbujesz funkcjonalnie pracować. Podam kilka przykładów. Mam na myśli aplikacje działające w przeglądarce, ale myślę, że problem jest bardziej ogólny. …

5
Struktury danych w programowaniu funkcjonalnym
Obecnie gram w LISP (szczególnie Scheme i Clojure) i zastanawiam się, jak radzą sobie typowe struktury danych w funkcjonalnych językach programowania. Na przykład, powiedzmy, że chciałbym rozwiązać problem za pomocą algorytmu znajdowania ścieżki wykresu. Jak można zazwyczaj przedstawiać ten wykres w funkcjonalnym języku programowania (przede wszystkim zainteresowany czystym stylem funkcjonalnym, …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.