تعتمد البرمجة الوظيفية على استخدام الدوال (الوظائف) كمبنى أساسي للبرمجة بدلاً من الأوامر والتعليمات التقليدية. وتتميز هذه الأساليب بالتالي:
1- الاستناد إلى الوظائف النقية (Pure Functions): وهي وظائف تستقبل مدخلات وتعيد نتائج، دون تقديم أي آثار جانبية أو تغيير للحالة.
2- استخدام الوظائف التحويلية (Transformation Functions): وهي وظائف تأخذ بيانات كإدخال، ثم تحوّل هذه البيانات وتقوم بإرجاع نتيجة جديدة بناءً على تحويلات سابقة.
3- استخدام الوظائف المترابطة (Composite Functions): وهي وظائف تتضمن أكثر من وظيفة بسيطة في التطبيق الواحد، مثل وظائف الفلترة والتحويل.
4- التفاعل المناسب مع البيانات اللا متغيرة (Immutable Data): حيث يستخدم البرمجيات بيانات غير متغيرة، مما يمكّن تعدد الدوال الوظيفية للعمل على نفس المجموعة من البيانات، وكذلك يسهل تفادي اختلال الحالات.
يمكننا استخدام هذه الأساليب لحل العديد من المشاكل البرمجية في العديد من المجالات، بما في ذلك المعالجة الضخمة والتطبيقات الحية.