Programowanie/Programowanie funkcyjne: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
 
Linia 18:
Najważniejszym atutem programowania strukturalnego w stosunku do niestrukturalnego jest to, że programy strukturalne mogą być zaprojektowane w sposób modularny. Modularność niesie za sobą znaczny wzrost wydajności pracy programistów. Małe moduły mogą być napisane łatwiej i szybciej. Czasami mogą być wielokrotnie wykorzystywane, dzięki czemu pomagają w szybkim tworzeniu oprogramowania. Niewielkie moduły mogą być testowane niezależnie, co znacznie ułatwia i przyspiesza proces testowania.
Podczas pisania programów złożonych z modułów, aby rozwiązać problem najpierw musimy podzielić go na podproblemy, następnie rozwiązać te podproblemy, a później połączyć moduły w jedną całość. Sposób w jaki możemy podzielić problem zależy od tego w jaki sposób będziemy mogli go później połączyć. Aby zwiększyć możliwości wykorzystania modularności konieczne jest dostarczenie pewnego rodzaju „kleju” pozwalającego na połączenie poszczególnych elementów.
To jak ważny jest podział problemu na mniejsze części oraz odpowiednie połączenie elementów może zobrazować następujący przykład. Krzesło może być łatwo wykonane poprzez wykonanie części – siedzenie, nogi, oparcie – oraz odpowiednie połączenie ich. Bardzo ważna jest tutaj umiejętność łączenia elementów i to jakiego kleju użyjemy. Brak takiej umiejętności powoduje, że jedynym sposobem wykonania krzesła jest wyrzeźbienie go z jednego dużego bloku drewna, co jest znacznie trudniejsze i bardziej czasochłonne. Ten przykład pokazuje olbrzymią siłę modularności i posiadania „właściwego kleju”. Programowanie funkcyjne w naturalny sposób wymusza modularność i zarazem dostarcza nowe sposoby łączenia modułów w jedną całość. /
 
===Funkcje===