- برنامه نویسی - ساختار زبان‎های برنامه نویسی
: 20210118 : 503

ساختار زبان‎های برنامه نویسی


  1. تاریخچه اسکریپتینگ و پروگرمینگ
  2. تفاوت‌ زبان‌های Compiled و Interpreted
  3. زبان‌هایScripting or Interpreted
  4. زبان پی اچ پی
  5. زبان‌های Markup
  • معرفی انواع زبان‌های برنامه نویسی
  • وضعیت و دورنمای کاری برنامه نویسان

  • تاریخچه اسکریپتینگ و پروگرمینگ

    ابتدا برنامه‌های مختلفی که با زبان‌های برنامه‌نویسی کامپایل شونده نوشته می‌شدند نیاز به ساز و کاری داشتند تا سایر دولوپرها بتوانند Functionality (عملکرد) جدیدی برای آنها تعریف کنند.

    Compiled Programming Languages

    زبان‌هایی همچون زبان ++C یا Java، جزو اصطلاحاً Compiled Programming Languages (زبان‌های برنامه‌نویسی کامپایل شونده) محسوب می‌شوند

    تفاوت‌ زبان‌های Compiled و Interpreted

    با توجه به اینکه زبان‌های اسکریپتینگ خود نوعی از زبان‌های برنامه‌نویسی هستند، به نظر می‌رسد درست این باشد که به جای تقسیم‌بندی زبان‌ها به دو دستهٔ Scripting و Programming، آنها را به دو گروه زبان‌های برنامه‌نویسی Compiled و Interpreted تقسیم‌بندی کنیم. به عبارت دیگر، در زبان‌های برنامه‌نویسی اصطلاحاً Compiled (کامپایل شده)، سورس‌کد برنامه ابتدا کامپایل شده و به کدی فشرده، سریع، تست شده و از همه مهم‌تر قابل‌فهم برای سیستم تبدیل شده و اجرا می‌گردد و این دست زبان‌های برنامه‌نویسی هرگز به رویدادها برای انجام کاری وابسته نیستند.
    یک زبان اسکریپتینگ صرفاً در پاسخ به یک Event (ایونت یا رویداد) کاری را انجام خواهد داد؛ به عبارت دیگر، چنانچه هیچ درخواست یا رویدادی وجود نداشته باشد، هیچ کاری هم صورت نخواهد گرفت اما این در حالی است که یک زبان برنامه‌نویسی بدون توجه به درخواست‌ها و یا رویدادها، باز هم قادر به انجام دستوراتی است که از پیش تعریف شده‌اند (از جمله زبان‌های برنامه‌نویسی معروف می‌توان به زبان‌های #C،C++،Java،C و ... اشاره نمود).

    زبان‌هایScripting or Interpreted

    واژهٔ Interprete (به معنای تفسیر کردن) زمانی که یک ed به انتهایش اضافه شود، صفتی می‌شود به معنای «تفسیر شونده» و به طور کلی منظور از زبان‌های برنامه‌نویسی تفسیر شونده‌یی مثل زبان جاوااسکریپت یا پی‌اچ‌پی، زبان‌هایی است که سورس‌کد آنها کامپایل نشده بلکه در لحظه توسط برنامه‌یی که Interpreter (مفسر) نام دارد، خط به خط تفسیر و بالتبع اجرا می‌گردد.

    به طور کلی:

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

    زبان پی اچ پی

    زبان پی‌اچ‌پی زبانی است Server-side (سمت سرور) اما زبان جاوااسکریپت Client-side (سمت کاربر).

    پی‌اچ‌پی در سمت سرور اجرا می‌گردد، از این‌ رو نیاز به یک نرم‌افزاری تحت عنوان وب سرور است تا ارتباط مابین کاربر و سرور را برقرار سازد.

    زبان‌های Markup

    این زبان‌ها به منظور نمایش دیتا مورد استفاده قرار می‌گیرد و هرگز این توانایی را ندارند تا در منطق نرم‌افزار دخالت کنند. از جمله زبان‌های Markup (نشانه‌گذاری)، می‌توان به زبان‌های HTML و XML اشاره کرد.

    معرفی انواع زبان‌های برنامه نویسی

    زبان برنامه نویسی مجموعه‌ای از مفاهیم است که برای اتصال دستورالعمل‌ها به یک ماشین یا کامپیوترطراحی شده است. زبانهای برنامه نویسی عمدتاً برای کنترل عملکرد یک دستگاه یا بیان الگوریتم‌ها استفاده می‌شوند. در حال حاضر زبان برنامه نویسی بسیار زیادی وجود دارند. برنامه‌ها را می‌توان به دو شکل مانند نحو و معناشناسی تقسیم کرد. بعضی از زبانها با یک استاندارد ISO مانند زبان C تعریف می‌شوند.زبان‌های برنامه نویسی را بسته به ساختار و کارکرد آنها به دسته‌های مختلفی تقسیم می‌کنند.

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

    زبان برنامه نویسی کاربردی (Functional Programming Language)
    یک زبان برنامه نویسی کاربردی به طور معمول از داده‌های ذخیره شده استفاده می‌کند، و اغلب از به وجود آمدن حلقه‌ها به نفع توابع بازگشتی جلوگیری می‌کند. تمرکز اصلی برنامه‌های عملکردی روی مقادیر بازگشت توابع است و عوارض جانبی و پیشنهادات مختلفی که از حالت ذخیره سازی جلوگیری می‌کنند چندان در نظر گرفته نمی‌شوند. به عنوان مثال، با یک زبان مفید کاملاً خالص، اگر یک تابع نامگذاری شده باشد، انتظار می‌رود که این تابع هیچ عملکرد کاربردی را تغییر ندهد یا انجام ندهد. اما ممکن است تماسهای الگوریتمی ایجاد کند و پارامترهای این تماسها را تغییر دهد. زبانهای کاربردی معمولاً ساده تر هستند و ترسیم آنها در مسائل انتزاعی آسان تر است. مدل برنامه نویسی آنها شناخت دقیق آن را دشوار می‌کند، اما کد به زبان دستگاه رمزگشایی می‌شود

    زبان برنامه نویسی شی گرا (Object-oriented Programming Language)
    این زبان‌های برنامه نویسی جهان را به عنوان گروهی از اشیاء دارای داده‌های داخلی و دسترسی به قسمت‌های خارجی آن داده‌ها مشاهده می‌کنند. هدف برنامه نویسی شی گرا در تفکر در مورد تقصیر با جدا کردن آن به مجموعه اشیاء ارائه دهنده خدمات است که می‌تواند برای حل یک مشکل خاص استفاده شود. یکی از اصلی‌ترین قواعد زبان برنامه نویسی شی گرا، محصور کردن است که هر چیزی که یک شیء به آن نیاز داشته باشد باید درون شی باشد. این زبان همچنین بر قابلیت استفاده مجدد از طریق وراثت و ظرفیت گسترش پیاده سازی‌های فعلی بدون نیاز به تغییر مقدار زیادی کد با استفاده از چند شکل تأکید دارد.

    زبان برنامه نویسی اسکریپتی (Scripting Programming Language)
    این زبان‌های برنامه نویسی اغلب رویه‌ای هستند و ممکن است عناصر زبان‌های شی گرا را داشته باشند. اما آنها به طور معمول در دسته بندی خود قرار میگیرند ودر دسته زبان‌های برنامه نویسی تمام عیار با پشتیبانی از توسعه سیستم‌های بزرگ قرار نمی‌گیرند. به عنوان مثال، آنها ممکن است چک نوع تایپ کامپایل نداشته باشند. معمولاً برای شروع این زبانها به سینتکس‌های کوچکی نیاز دارند.

    زبان کد نویسی منطقی یا لاجیکال (Logic Programming Language)
    این نوع از زبانها به برنامه نویسان اجازه می‌دهد تا اظهاراتی را بیان کنند و سپس به دستگاه اجازه دهند تا درباره عواقب آن اظهارات استدلال کند. به یک معنا، این زبان به رایانه نمی‌گوید که چطور کاری انجام دهد، بلکه از محدودیت‌های انجام کاری که باید انجام شود را در نظر می‌گیرد.

    وضعیت و دورنمای کاری برنامه نویسان

    اگر برنامه نویسی را به عنوان یک شغل و حرفه برگزیده اید بی تردید وارد دنیای جذاب و شگفت انگیزی شده اید. برنامه نویسان حرفه‎ای فرصت‎های کاری فراوانی با درامد قابل توجه در دنیای دیجیتالی و اینترنتی امروز دارند. شما می‌توانید اقدام به دریافت پروژه برنامه نویسی از طریق سایت‎های فریلنسینگ کنید. به عنوان یک برنامه نویس فریلنسر شما الزامی به حضور در مکان مشخص برای دریافت حقوق ندارید. مزایای دورکاری روز به روز بیشتر برای افراد و شرکت‎ها مشخص می‌شود. در حال حاضر هر روزه به تعداد شرکت‎هایی که تمایل به برونسپاری پروژه‌های برنامه نویسی و استخدام برنامه نویس به صورت پروژه‎ای دارند اضافه می‌شود. در حقیقت شما می‌توانید با دسترسی به یک کامپیوتر و اینترنت اقدام به دریافت پروژه برنامه نویسی و تحویل آن از هر جایی کنید. همچنین شما می‌توانید به دنبال فرصت‎های کار پاره وقت برنامه نویسی نیز باشید تا درآمد خود را افزایش دهید.
    استخدام برنامه نویس اولویت اصلی بسیاری از استارتاپ‎ها و شرکت‎های اینترنتی نوظهور یا قدیمی تر است. چه شما یک برنامه نویس فرانت باشید چه یک برنامه نویس بک‎اند (back-end developer) فرصت‎های شغلی زیادی در بازار کار برای شما وجود خواهد داشت. کارآموزی برنامه نویسی نخستین قدم در مسیر شغلی تبدیل شدن به یک حرفه ایست. مطمینا درآمد برنامه نویسان با افزایش تخصص و تجربه و تسلط به زبان‎ها و تکنولوژی‎های جدید افزایش می‌یابد. از این رو بدون شک یک برنامه نویس فول استک ( full stack developer) درامد و موقعیت‎های شغلی بسیار بیشتری خواهد داشت.


               

    2000-2016 CMS Fadak. ||| Version : 4.2-b2 ||| This page was produced in : 0.001 Seconds