Functional Programming یا «برنامه نویسی تابعی» در چند سال گذشته طرفداران بسیاری پیدا کرده است. این پارادایم عبارت است از روشی که در آن منطق به کار گرفته شده در برنامه به صورت توابع ریاضیاتی در نظر گرفته می شوند. درک صحیح این نوع پارادایم به طرز قابل توجهی کمک به ارتقاء کیفیت کدی که نوشته میشود خواهد کرد و چنانچه شما -به عنوان یک برنامه نویسی- از اصول برنامه نویسی تابعی استفاده کنید، کیفیت برنامهای که می نویسید دوچندان خواهد شد که در نهایت با تعداد خطوط کدی کمتری، نتیجه ای که نیاز دارید را به دست خواهید آورد.
زمانی که در پروژه های خود از توابع استفاده می کنیم، مسئولیت های خاصی را میتوان به هر تابع اختصاص داد و توابع با استفاده از آرگومان هایی که می گیرند، میتوانند خروجی های مختلفی را در اختیار سایر بخش های برنامه قرار دهند. برنامههایی که در آنها از توابع به درستی استفاده شده باشد، نسبت به روشهای سنتی برنامه نویسی به سادگی قابل Debug کردن هستند. برنامه نویسی تابعی در برنامه نویسی شیئ گرایی به خوبی جواب داده است اما این در حالی است که در تمامی موقعیت ها نمیتوان از این پارادایم استفاده کرد.