زمان تخمینی مطالعه: 4 دقیقه
پارادایم برنامه نویسی رویکردی است برای حل مسائل با استفاده از زبان برنامه نویسی یا میتوان گفت روشی برای حل یک مسئله با استفاده از ابزارها و تکنیکهایی است که با پیروی از برخی رویکردها در دسترس ما هستند. زبان های برنامه نویسی زیادی وجود دارند که شناخته شدهاند، اما همه آنها باید در هنگام پیادهسازی از یک استراتژی پیروی کنند و این متدولوژی برنامه نویسی امری Imperative و اعلانی Declarative است. جدا از انواع زبانهای برنامه نویسی، پارادایمهای زیادی برای برآورده کردن هر خواسته ای وجود دارد. در ادامه این دو دسته اصلی مورد بررسی قرار میگیرد.
برنامه نویسی امری(Imperative)
همانطور که از نام آن پیداست یک نوع پارادایم برنامه نویسی است که نحوه اجرای برنامه را توصیف میکند. توسعه دهندگان بیشتر به این فکر میکنند که چگونه گام به گام به پاسخ بپردازند. این شامل دنبالهای از قواعد دستوری است. در این مورد، ترتیب اجرا بسیار مهم است و از دادههای قابل تغییر و غیرقابل تغییر استفاده میکند. زبانهای برنامه نویسی C، C++ ، جاوا و فورترن نمونههایی از برنامه نویسی امری هستند. در ادامه ویژگیهای این مدل برنامه نویسی آورده شده است:
- در این پاردایم برنامهها نحوه انجام آن را مشخص میکنند
- جریان کنترل محاسبات را توصیف میکند
- هدف اصلی آن توصیف چگونگی رسیدن و یا تکمیل است
- از مزایای آن میتوان به سهولت در یادگیری و خواندن، مدل مفهومی ساده برای درک و غیره اشاره کرد
- انوع آن شامل برنامه نویسی رویهای، برنامه نویسی شیگرا، رویکرد پردازش موازی است
- کاربر مجاز به تصمیم گیری و یا دستور دادن به کامپایلر است
- این پارادایم دارای عوارض جانبی بوده و در مقایسه با برنامه نویسی اعلانی شامل متغیرهای قابل تغییر است
- کنترل کامل را به توسعه دهندگان میدهد که در برنامه نویسی سطح پایین بسیار مهم است
- در برنامه نویسی امری، برنامه نویس مسئول بهینه سازی کد برای عملکرد بهتر است
- در برنامه نویسی امری، متغیرها میتوانند جهش یابند(Mutable)
برنامه نویسی اعلانی(Declarative)
همانطور که از نام آن پیداست یک نوع پارادایم برنامه نویسی است که توصیف میکند چه برنامههایی باید اجرا شوند. توسعه دهندگان بیشتر نگران پاسخی هستند که دریافت میشود. اعلام میکند که چه نوع نتایجی را میخواهیم و زبان برنامهنویسی را کنار میگذاریم که به سادگی متوجه نحوه تولید آنها شویم. به عبارت ساده، عمدتاً بر نتیجه نهایی تمرکز دارد. منطق محاسبات را بیان می کند. Miranda، Erlang، Haskell، Prolog چند نمونه محبوب از برنامه نویسی اعلانی هستند. در ادامه ویژگیهای این مدل برنامه نویسی آورده شده است:
- در این پارادایم، برنامهها مشخص می کنند که چه کاری باید انجام شود
- به سادگی منطق محاسبات را بیان میکند
- هدف اصلی آن توصیف نتیجه مورد نظر بدون دیکته مستقیم در مورد چگونگی به دست آوردن آن است
- از مزایای آن میتوان به کد با کارائی بالا اشاره کرد که با استفاده از روشها، گسترش آسان، سطح بالای انتزاع و غیره قابل اعمال است
- انواع آن شامل برنامه نویسی منطقی و برنامه نویسی تابعی است
- در این مدل، یک کامپایلر مجاز به تصمیم گیری است
- هیچ گونه عوارض جانبی ندارد و در مقایسه با برنامه نویسی امری، هیچ متغیر قابل تغییری(Mutable) را شامل نمیشود
- ممکن است جریان تکراری را همراه با سادهسازی ساختار کد خودکار کند
- در برنامه نویسی اعلامی، سیستم کد را بر اساس قوانین و محدودیتهای مشخص شده توسط برنامه نویس بهینه میکند
- در برنامه نویسی اعلانی، متغیرها معمولاً تغییرناپذیر(immutable) هستند
متدولوژی برنامه نویسی امری Imperative و اعلانی Declarative مفاهیمی مهم در علم برنامه نویسی و توسعه هستند و داشتن دانش کافی در مورد هر دو دسته کمک بزرگی در ایجاد سیستمها با کارائی بالا دارند.
یک پاسخ