محسن پورعینی
محسن پورعینی
خواندن ۲ دقیقه·۳ سال پیش

پارادایم های برنامه نویسی و زبان های مولتی پارادایم

پارادایم های برنامه نویسی
پارادایم های برنامه نویسی


هر کسی که حداقل یه بار توی حوزه برنامه نویسی مطالعه کرده باشه قطعا درمورد برنامه نویسی شی گرا یا فانکشنال شنیده! بعضی ها فکر میکنن شی گرا بهتر از فانشکنال هست که باید بگم کاملا اشتباه میکنن و نمیشه گفت کدوم بهتره چون هرکدوم مزیت ها و ویژگی های خوب خودشون رو دارن. تو این مثاله میخواییم برسی کنیم این اسم هایی که نسبت میدن به زبان های برنامه نویسی چین و چند مورد از اونارو برسی کنیم.

پارادایم های برنامه نویسی:

عموما پارادایم های برنامه نویسی برای دسته بندی کردن زبان های برنامه نویسی بر اساس ویژگی های عملکردیشون هست. دلیل اصلی وجود خیلی از پارادایم های برنامه نویسی و هدفشون مدیریت روند برنامه ، مدیریت منابع ، مدیریت و کنترل ساید افکت ها و توسعه پذیری برنامه هستش

برنامه نویسی شی گرا:

شی گرا یه اسم خیلی اشنا توی برنامه نویسی هستش ، تو این پارادایم برنامه نویسی محور اصلی برنامه روی چیزی به اسم شی برقرار هست و اصطلاحا برنامه نویسی به شی گرایش داره، توابع و داده هایی( در هر نوعی که باشند) که تو یک موجودیت مفهومی قرار دارند در قالب یک شی کنار هم قرار میگیرن و دسته بندی میشن.
توی شی گرایی مفاهیم زیادی مثل وراثت و کپسوله سازی و پولی مورفیسم و کلاس و ... وجود داره که نمیخوام تو این مقاله درموردش صحبت کنم.

برنامه‌نویسی تابعی:

برنامه نویسی فانکشنال یا تابعی یک پارادایم برنامه نویس هستش که برنامه از ترکیب و فراخوانی توابع تشکیل میشه ، یعنی به جای توالی یه سری دستورات اعلانی صرفا درختی از فراخوانی توابع رو داریم که صرفا مقداری رو برمیگردونن.

تو برنامه‌نویسی تابعی، توابع به عنوان شهروندان درجه یک تلقی می‌شوند،یعنی توابع رو میتونیم به عنوان آرگومان ارسال کنیم و یا از توابع دیگر برگردونده شن. دقیقا مثل بقیه نوع داده ها.

برنامه نویسی دستوری VS برنامه نویسی اعلانی:

برنامه نویسی دستوری هم یکی از پارادایم های برنامه نویسی هستش که برنامه نویس همه کار هایی که میخواد انجام بشه رو دستور به دستور باید اشاره کنه بهش. این پارادایم دقیقا نقطه مقابل برنامه نویسی اعلانی هستش
برای مثال شما توی زبان دستوری اگه میخوایین یک لیوان آب بریزین باید مرحله به مرحله توضیح بدین مثلا = پاشو - پارچ آب رو بردار - لیوان رو بردار - پارچ رو خم کن روی لیوان و منتظر شو تا وقتی که لیوان میخواد سرریز شه!!! ولی توی زبان های اعلانی شما فقط میگین یه لیوان آب بریز ، یعنی فقط نتیجه کار هارو شما اعلان میکنین نه اینکه مراحل رو توضیح بدین


پاردایم های برنامه نویسی خیلی خیلی زیادن (مثل برنامه نویسی ری اکتیو و پردازش موازی و پردازش همروندی و مبتنی بر کلاس ، مبتنی بر بازیگر ، پروسه ای ، منطقی و ...) و من خواستم فقط به پند تاشون که پر استفادن اشاره کنم.


حالا زبان های مولتی پارادایم:

زبان هایی مثل جاوااسکریپت ویژگی های جالب زیادی دارن مثل مولتی پاردایم بودن ، مثلا شما میتونین تو جاوا اسکریپت هم فانکشنال کار کنین هم شی گرا هم خیلی از پارادایم های دیگه. که البته یسری ابزار ها هستن که مولتی پارادایم بودن رو برای ما تو هر زبان برنامه نویسی میسر میکنن.



شی گرافانکشنالبرنامه نویسیکامپیوتر
اینجا درمورد هرچیزی که احساس میکنم مفید هست صحبت میکنم.
شاید از این پست‌ها خوشتان بیاید