kod

Funkcyjne języki programowania są zaprojektowane do obsługi obliczeń symbolicznych i aplikacji do przetwarzania list. Programowanie opiera się tu głównie na funkcjach matematycznych. Niektóre z popularnych funkcyjnych języków programowania to: Python, Haskell czy Clojure.
Funkcyjne języki programowania dzielą się na dwie grupy, tj. czyste języki funkcyjne – tego typu języki funkcyjne wspierają jedynie funkcyjne paradygmaty, jak, na przykład, Haskell, oraz na zanieczyszczone języki funkcyjne – te typy języków funkcyjnych wspierają funkcyjne paradygmaty i imperatywny styl programowania.

Najważniejszą cechą programowania funkcyjnego jest fakt, że funkcyjne języki programowania opracowano na podstawie koncepcji funkcji matematycznych, które używają wyrażeń warunkowych i rekursji do wykonywania obliczeń. Programowanie funkcyjne obsługuje funkcje wyższego rzędu i leniwą funkcję oceny. Funkcyjne języki programowania nie obsługują kontroli przepływu, takich jak instrukcje pętli i instrukcji warunkowych, takich jak instrukcje If-Else i Switch. Korzystają bezpośrednio z funkcji i wywołań funkcjonalnych.

programowanie

Podobnie jak w przypadku programowania obiektowego, języki programowania funkcyjnego obsługują popularne koncepcje, takie jak abstrakcja, enkapsulacja, dziedziczenie i polimorfizm. Funkcyjne programowanie posiada liczne zalety i oferuje całą gamę różnorodnych korzyści. Kod jest bezbłędny – programowanie to nie obsługuje stanu, więc nie ma efektów ubocznych i można pisać kody bezbłędne. Ważne jest też wydajne programowanie równoległe – funkcyjne języki programowania nie mają statusu, więc nie ma problemów ze zmianą stanu.

Można zaprogramować „funkcje” tak, aby działały równolegle jako „instrukcje”. Takie kody wspierają łatwą możliwość ponownego użycia i testowalności. Istotna jest efektywność – programy funkcyjne składają się z niezależnych jednostek, które mogą działać jednocześnie. W rezultacie takie programy są bardziej wydajne. Ten rodzaj programowania obsługuje także zagnieżdżone funkcje. Poza tym, funkcyjne programowanie wspiera Lazy Functional Constructs, takie jak Lazy Lists czy Lazy Maps.

Z drugiej jednak strony, funkcyjne programowanie wymaga dużej przestrzeni pamięci. Ponieważ nie ma ono stanu, trzeba tworzyć nowe obiekty za każdym razem, aby wykonywać konkretne działania. Programowanie to jest używane w sytuacjach, w których musimy wykonać wiele różnych operacji na tym samym zbiorze danych. Lisp jest natomiast używany do aplikacji wykorzystujących sztuczną inteligencję, takich jak uczenie maszynowe, przetwarzanie języka, modelowanie mowy i wzroku, i inne. Tłumacze Embedded Lisp dodają programowalność do niektórych systemów, takich jak Emacs.

Sama wydajność kodu programu, czyli efektywność kodu programowania jest wprost proporcjonalna do wydajności algorytmu i prędkości wykonania. Dobra wydajność zapewnia wyższą sprawność. Czynniki wpływające na wydajność programu obejmują prędkość maszyny, szybkość kompilatora, system operacyjny, wybór właściwego języka programowania, sposób organizacji danych w programie, czy algorytm używany do rozwiązania problemu.

programowanie funkcyjne

Wydajność języka programowania można poprawić, wykonując zadania takie jak usuwanie niepotrzebnego kodu lub kodu, który przechodzi do redundantnego przetwarzania, wykorzystując optymalną pamięć i nieulotną pamięć masową; dzięki wykorzystaniu komponentów wielokrotnego użytku wszędzie tam, gdzie ma to zastosowanie; poprzez wykorzystanie obsługi błędów i wyjątków na wszystkich warstwach programu; tworząc kod programowania zapewniający integralność i spójność danych lub opracowując kod programu zgodny z logiką projektu i przepływem.

Wydajny kod programowania może maksymalnie zmniejszyć zużycie zasobów i czas realizacji przy minimalnym ryzyku dla środowiska operacyjnego. W terminologii programowania, funkcja jest blokiem instrukcji wykonujących określone zadanie. Funkcje akceptują dane, przetwarzają je i zwracają wynik. Funkcje są napisane przede wszystkim w celu wspierania koncepcji ponownego użycia. Po zapisaniu funkcji można ją łatwo wywołać, bez konieczności ponownego pisania tego samego kodu.

Różne języki funkcyjne używają innej składni do napisania funkcji. Wymagania dotyczące pisania funkcji są stałe i przed napisaniem funkcji programista musi wykonać punkty, takie jak określenie celu – cel funkcji powinien być znany programiście; algorytm funkcji powinien także być mu znany, podobnie jak funkcje zmienne danych i ich cel. Dane funkcji powinny być znane programiście wywoływanemu przez użytkownika.

[Głosów:0    Średnia:0/5]

ZOSTAW ODPOWIEDŹ

Please enter your comment!
Please enter your name here