در دنیای دیجیتال امروز، انواع زبان های برنامه نویسی برای مشاغل گوناگون با ویژگیهای مختلف و متناسب با پروژه مورد نظر وجود دارند. در مقاله «فهرست انواع زبان های برنامه نویسی» از مجله تم آف سعی شده است ابتدا انواع زبان های برنامه نویسی مورد بررسی قرار گیرد، سپس به بررسی زبان های برنامه نویسی همراه با کاربرد و مزایای آنها پرداخته شود که بازار کار مناسبی دارند و یادگیری آنها میتواند کمک بسزایی به فرد جویای کار کند. همچنین چند نمونه از زبان های برنامه نویسی منسوخ شده و زبان های برنامه نویسی جدید و رو به پیشرفت مورد بررسی قرار گرفتهاند. برای آشنایی با انواع زبان های برنامه نویسی مطالعه مقاله زیر پیشنهاد میشود.
زبان برنامه نویسی چیست ؟
زبان برنامه نویسی کامپیوتر به کاربر این امکان را میدهد تا دستورالعملهای مورد نظر را با زبان و روشی وارد کامپیوتر کند که کامپیوتر متوجه آن شود. همانطور که تعداد بسیار زیادی زبان انسانی وجود دارد، مجموعهای از زبان های برنامه نویسی رایانه نیز وجود دارند که برنامه نویسان میتوانند از آنها برای برقراری ارتباط با رایانه استفاده کنند.
زبانی که کامپیوتر میتواند آن را بفهمد دودویی (Binary) نامیده میشود و ترجمه زبان برنامه نویسی به باینری به عنوان کامپایل (Compile) شناخته میشود. هر زبان، از زبان برنامه نویسی C گرفته تا زبان برنامه نویسی پایتون (Python)، ویژگیهای متمایز خود را دارد، اگرچه اغلب اوقات ویژگیهای مشترک بین زبان های برنامه نویسی وجود دارند.
زبان های برنامه نویسی به رایانهها این امکان را میدهند تا با سرعت و کارآمدی بخشهای بزرگ و پیچیدهای از اطلاعات را پردازش کنند. برای مثال، اگر به فردی فهرستی از اعداد تصادفی از یک تا ده هزار داده شود و از آن شخص خواسته شود که اعداد را به ترتیب صعودی مرتب کند، به احتمال زیاد زمان قابل توجهی طول میکشد و احتمال بروز برخی خطاها وجود دارد.
امروزه دهها زبان برنامه نویسی در صنعت استفاده میشوند که میتوانند به راحتی و با استفاده از کدها وظایف تکراری و سایر عملیات روزمره را خودکارسازی کنند. در مقاله «انواع زبان های برنامه نویسی» به برخی از مهمترین آنها پرداخته شده است. زبان های برنامه نویسی را میتوان در دستههای مختلفی جای داد و انواع مختلفی از آنها وجود دارد. در بخش بعدی به شرح هر یک از انواع زبان های برنامه نویسی پرداخته شده است.
ناگفته نماند که پیش از این در مجله تم آف، به صورت مفصل در مورد اینکه زبان برنامه نویسی چیست شرح دادهایم و اگر نیاز دارید تا در اینباره هم بیشتر مطالعه کنید میتوانید به سراغ مطلب مربوطه در این زمینه بروید.
زبان برنامه نویسی چیست ؟ — هر آنچه باید بدانید
انواع زبان های برنامه نویسی کدامند؟
معمولاً وقتی افراد به این درک میرسند که برنامه نویسی چیست و زبان های برنامه نویسی چه کاربردی دارند، به دنبال این پرسش میروند که انواع زبان های برنامه نویسی کدامند و هر یک چه کاربردی دارند.
زبان های برنامه نویسی انواع مختلفی دارند و هر کدام با یک روش و رویکرد خاص پیش میروند و وظایف خود را انجام میدهند، همچنین هر کدام برای کاربردهای خاصی ایجاد شدهاند. در این بخش از مقاله، انواع زبان های برنامه نویسی مورد بحث قرار میگیرند.
زبان های برنامه نویسی رویهای
زبان های برنامه نویسی رویهای (Procedural Programming) برای اجرای دنبالهای از عبارتهای مورد استفاده قرار میگیرند که منجر به نتیجه میشوند. به طور معمول، این نوع زبان های برنامه نویسی از متغیر چندگانه (Multiple Variable)، حلقههای سنگین (Heavy loop) و عناصر دیگر استفاده میکنند که آنها را با زبان های برنامه نویسی تابعی (Functional Programming) متمایز میکنند.
توابع زبان های برنامه نویسی رویهای ممکن است متغیرها را به غیر از مقدار بازگشتی تابع، مانند چاپ کردن اطلاعات، کنترل کنند. برای مثال زبان های برنامه نویسی جاوا اسکریپت (JavaScript)، C و ++C زبان های برنامه نویسی رویهای به حساب میآیند. در بخش بعدی به بررسی زبان های برنامه نویسی تابعی پرداخته شده است.
زبان های برنامه نویسی تابعی چه هستند؟
زبان های برنامه نویسی تابعی معمولاً از دادههای ذخیره شده استفاده میکنند و اغلب در آنها از توابع بازگشتی به جای حلقهها استفاده میشود. تمرکز اولیه برنامه نویسی تابعی روی مقادیر بازگشتی توابع است. به عنوان مثال، در یک زبان برنامه نویسی تابعی، اگر تابعی ایجاد و نامگذاری شود، انتظار میرود که دیگر هیچگونه تغییری در عملکرد آن انجام نشود. با این حال ممکن است فراخوانی الگوریتمی نیز ایجاد کند و پارامترهای این فراخوانیها تغییر پیدا کنند.
زبان های برنامه نویسی تابعی معمولاً سادهتر از انواع زبان های برنامه نویسی دیگر هستند و به راحتی میتوان به مسائل انتزاعی با استفاده از آنها در برنامه نویسی اشاره کرد. برای مثال در این نوع از زبان های برنامه نویسی میتوان زبان های اف شارپ (#F)، هسکل (Haskell) و اسکیم (Scheme) را نام برد. در بخش بعد به بررسی زبان های برنامه نویسی شی گرا (Object Oriented Programming | OOP) پرداخته میشود.
زبان های برنامه نویسی شی گرا کدامند؟
این نوع از زبان های برنامه نویسی، همه چیز را به عنوان گروهی از اشیاء میبینند که دارای دادههای داخلی و دسترسی خارجی به بخشهایی از آن دادهها است. هدف این نوع زبان برنامه نویسی تفکیک کدها به مجموعهای از اشیاء و ارائه خدماتی برای حل یک مشکل خاص به حساب میآید. یکی از اصول اصلی زبان برنامه نویسی شی گرا، کپسوله سازی (Encapsulation) به شمار میرود، یعنی هر چیزی که یک شی به آن نیاز دارد باید در داخل شی وجود داشته باشد.
همچنین این نوع از زبان های برنامه نویسی قابلیت استفاده مجدد از طریق وراثت (Inheritance) و چندریختی یا همان پلی مورفیسم (Polymorphism) را دارند. زبان برنامه نویسی جاوا (Java)، ویژوال بیسیک (Visual Basic)، روبی (Ruby) و پایتون نمونههایی از این نوع زبان برنامه نویسی هستند. ادامه این بخش از مقاله به زبان های برنامه نویسی اسکریپتی (Scripting Programming Language) اختصاص داده شده است.
زبان های برنامه نویسی اسکریپتی
زبان های برنامه نویسی اسکریپتی، نوعی از زبان های برنامه نویسی رویهای هستند و گاهی شامل عناصر زبان های برنامه نویسی شیگرا نیز میشوند، اما دستهبندی مخصوص به خودشان را دارند، زیرا معمولاً زبانهای برنامه نویسی کاملی نیستند که از توسعه سیستمهای بزرگ پشتیبانی کنند. به عنوان مثال، این نوع از زبان های برنامه نویسی معمولاً قادر به چک کردن نوع زمان کامپایل نیستند. زبان های برنامه نویسی اسکریپتی برای شروع کار و یادگیری به مهارت ساختار نوشتاری کمی نیاز دارند. برای مثال میتوان به زبان برنامه نویسی جاوا اسکریپت، پرل (Perl)، پی اچ پی (PHP) و پایتون اشاره کرد. حال در ادامه این بخش، به بررسی زبان های برنامه نویسی منطقی (Logic Programming Language) پرداخته میشود.
زبان های برنامه نویسی منطقی
این نوع از زبان های برنامه نویسی به برنامه نویسان این امکان را میدهند که عبارتهای اعلانی (Declarative) ایجاد کنند، سپس به ماشین اجازه میدهند درباره پیامدهای آن عبارتهای استدلال کنند. به صورت کلی میتوان گفت که این نوع از زبان های برنامه نویسی به رایانهها نمیگویند چگونه کاری را انجام دهند، بلکه محدودیتهایی را در مورد انجام وظایف، اعمال میکنند. برای مثال زبان برنامه نویسی پرولاگ (Prolog)، یک زبان برنامه نویسی منطقی است. در بخش بعدی از این مقاله به بررسی زبان های برنامه نویسی پایگاه دادهای (Database Programming Languages) پرداخته میشود.
زبان های برنامه نویسی پایگاه دادهای
زبان های برنامه نویسی پایگاه دادهای به ایجاد پایگاه داده و اصلاح و تغییر نحوه ذخیرهسازی دادهها در پایگاه دادهها کمک میکنند. به عنوان مثال میتوان به زبان برنامه نویسی جاوا، کوبول (Cobol)، «++C» و «Perl» اشاره کرد. در ادامه زبان های برنامه نویسی جریان داده (Dataflow languages) مورد بررسی قرار میگیرند.
زبان های برنامه نویسی جریان داده
زبان های برنامه نویسی جریان داده از نمایشی برای مبادله دادهها جهت مشخص کردن برنامهها و پردازش جریانهای داده استفاده میکنند. پردازش موازی (Parallel processing) روشی در محاسبه اجرای برنامهها در دو یا چند پردازنده (CPU) برای رسیدگی به بخشهای جداگانه یک وظیفه کلی است.
در حقیقت میتوان گفت که بیشتر زبان های برنامه نویسی شامل ایدهها و ویژگیهایی در حوزههای مختلف هستند که به افزایش سودمندی این نوع زبانها کمک میکنند. با این وجود، بیشتر زبان های برنامه نویسی در همه سبکهای برنامه نویسی بهترین نیستند. در ادامه این مقاله به بررسی برخی از انواع زبان های برنامه نویسی پرداخته شده است.
معرفی برخی از انواع زبان های برنامه نویسی
مهمترین مسئله این مقاله بررسی زبان های برنامه نویسی مهم است. در این قسمت سعی شده است زبان های برنامه نویسی کاربردی و دارای موقعیت شغلی و علمی بررسی شوند. در ادامه ابتدا به بررسی زبان برنامه نویسی جاوا (Java) پرداخته شده است.
زبان برنامه نویسی جاوا
جاوا (Java) یک فریم ورک و زبان برنامه نویسی بسیار کاربردی پیشرو و همه منظوره است. این زبان برنامه نویسی در سال ۱۳۷۰ هجری شمسی (۱۹۹۱ میلادی) توسط «Sun Microsystems» به عنوان یک زبان برنامه نویسی سطح بالا، کامپایل شده و مدیریت همراه با حافظه، ارائه شده است. ساختار نوشتار (Syntax) برنامه نویسی جاوا شبیه به برنامه نویسی C و ++C است، یکی از تفاوتهایاین زبان با آنها داشتن آکولاد برای بسته شدن و نقطه ویرگول (Semicolon) برای دستورات پایانی به حساب میآید.
مدیریت خودکار حافظه یکی از ویژگیهایی است که برنامه نویسی جاوا را به سرعت پس از انتشار اولیه آن، بسیار محبوب کرد. قبل از معرفی شدن زبان برنامه نویسی جاوا، بیشتر انواع زبان های برنامه نویسی که به مدیریت حافظه دستی نیاز داشتند، مانند زبان برنامه نویسی C و ++C مورد استفاده قرار میگرفتند. تخصیص دستی حافظه خسته کننده و مستعد خطا است، بنابراین زبان جاوا به عنوان یک گام بزرگ رو به جلو برای توسعه دهندگان برنامهها مورد استقبال قرار گرفت.
برنامه نویسی جاوا، به برنامه نویسان وعدههای بسیار و فراتر از مدیریت حافظه داده بود که از جمله آنها میتوان به قابلیت چند سکویی (Cross-Platform) اشاره کرد. ماشین مجازی جاوا (Java Virtual Machine | JVM) توسط کد بایتی برنامه نویسی جاوا اجرا میشود که توسط زبان جاوا کامپایل شده است. استفاده از ماشین مجازی جاوا در اکثر سیستم عاملها مانند لینوکس (Linux)، مک و ویندوز امکانپذیر است. این ماشین مجازی همیشه بینقص نیست، اما زمانی که کاری را انجام میدهد، یک برنامه نوشته شده با برنامه نویسی جاوا میتواند روی هر پلتفرمی اجرا شود که با ماشین مجازی جاوا سازگار است.
برنامه نویسی جاوا در کسب و کارها، توسعه نرم افزار، وب و اپلیکیشنهای موبایل مورد استفاده قرار میگیرد. این زبان یکی از انواع زبان های برنامه نویسی اصلی و پایه برای سیستم عامل اندروید گوگل در نظر گرفته میشود. همچنین برنامه نویسی جاوا میلیونها ستاپ باکس (Set-Top Boxes) و دستگاههای تعبیه شده (Embedded Device) را تامین میکند. به صورت کلی، میتوان گفت که مهارتهای توسعه جاوا بسیار مورد توجه واقع شده است. به لحاظ محبوبیت جاوا در رده محبوبترین زبانهای برنامه نویسی قرار میگیرد و میزان دشواری یادگیری آن بالاتر از سطح متوسط است.
آینده زبان برنامه نویسی جاوا چیست و آیا ارزش یادگیری دارد؟ (+ فیلم رایگان)
زبان برنامه نویسی C
قبل از اینکه زبان جاوا معرفی شود، زبان برنامه نویسی «C» سطح بالاترین زبان برنامه نویسی به حساب میآمد. این زبان برنامه نویسی برای اولین بار در سال ۱۳۵۱ شمسی (۱۹۷۲ میلادی) معرفی شد. در آن زمان، اولین نسخههای سیستم عامل یونیکس (Unix) که به زبان برنامه نویسی اسمبلی (Assembly) نوشته شده بودند به زبان C منتقل شدند و سپس در توسعه سایر سیستم عاملهای اولیه، از جمله «IBM System/370» از زبان برنامه نویسی C استفاده شد.
زبان برنامه نویسی C سابقه طولانی در توسعه سیستمهای قدیمی با پردازندههای کندتر و حافظه کم دارد. برنامههایی که به زبان برنامه نویسی C نوشته میشوند باید بسیار کارآمدتر باشند. بنابراین زبان C در مواردی که سرعت مهم است به عملکرد بالا شهرت دارد. برنامه نویسی C به دلیل استفاده از آن در توسعه سیستمها، از جمله سیستم عاملها، دستگاههای تعبیه شده، «Firmware»، درایورهای سخت افزاری و کاربردهای عمومی بسیار محبوب است. کتابخانه استاندارد زبان C به بسیاری از پلتفرمها منتقل شده است، بنابراین در حوزههای گوناگونی کاربرد دارد.
با این حال، برنامه نویسی سیستمهای سطح پایین که معمولاً از زبان برنامه نویسی C استفاده میکنند، مهارتی تخصصیتر از برنامه نویسی در کاربردهای عمومی دارند و همین موضوع نشان میدهد که چرا دومین زبان محبوب دنیا نسبت به سایر زبان های موجود، موقعیتهای شغلی کمتری دارد. بازار کار این زبان برنامه نویسی با بازار کار زبان برنامه نویسی ++C همپوشانی دارد و تقریباً یکسان هستند. به طور کلی میتوان گفت زبان برنامه نویسی «C» محبوبیت متوسطی دارد و سطح یادگیری آن نیز متوسط به حساب میآید.
آموزش زبان C با یک پروژه ساده — راهنمای مقدماتی
زبان برنامه نویسی پایتون
زبان برنامه نویسی پایتون به طور نسبی یکی از انواع زبان های برنامه نویسی جدید به حساب میآید که برای اولین بار در سال ۱۳۶۸ هجری شمسی (۱۹۸۹ میلادی) معرفی شده است. زبان برنامه نویسی پایتون، یک زبان تفسیری است که از مدیریت خودکار حافظه و برنامه نویسی شی گرا پشتیبانی میکند.
پایتون برای برنامه نویسی همه منظوره از جمله برنامههای کاربردی تحت وب بسیار محبوب است و همچنین در سالهای اخیر در حوزه برنامه نویسی هوش مصنوعی و شبکههای عصبی مورد استفاده فراوان قرار گرفته است. مشاغلی که از برنامه نویسی پایتون استفاده میکنند بسیار زیاد هستند و پیدا کردن شغل در این زمینه کار سادهای است. سطح یادگیری این زبان برنامه نویسی آسان و متوسط به حساب میآید. بخش بعدی این مقاله به زبان برنامه نویسی ++C اختصاص داده شده است.
زبان برنامه نویسی ++C
زبان برنامه نویسی ++C، همان زبان برنامه نویسی C است که با ویژگیهای شی گرایی آن را گسترش دادهاند. وجود دو علامت به اضافه در ادامه حرف C در نام این زبان به افزوده شدن قابلیت عملگر افزایشی در آن اشاره دارد. زبان برنامه نویسی ++C برای انتقال ویژگیهای زبان های برنامه نویسی قدیمی به پلتفرمهای سریعتر و قدرتمندتر جدید به وجود آمده است.
بازار کار زبان برنامه نویسی ++C تقریباً مشابه زبان برنامه نویسی C به حساب میآید، از جمله این بازار کار میتوان به برنامه نویسی سیستمها، توسعه سخت افزار سطح پایین، خدمات تحت وب و کاربردهای عمومی و اختصاصی اشاره کرد.
در طول سالهای اخیر، کتابخانههای استاندارد زبان برنامه نویسی ++C و خصوصیات آنها بهطور قابلتوجهی گسترش یافتهاند، که منجر به انتقاداتی از سوی برنامه نویسان شده است که عقیده دارند باعث پیچیدگی بیش از حد و دشواری در یادگیری این زبان برنامه نویسی میشود.
در نهایت، به طور کلی زبان برنامه نویسی ++C یکی از زبان های دشوار از نظر سطح یادگیری است اما محبوبیت بالایی دارد. در بخش بعدی مقاله «فهرست انواع زبان های برنامه نویسی» به بررسی زبان برنامه نویسی «Visual Basic .NET» پرداخته شده است.
زبان برنامه نویسی Visual Basic .NET
زبان برنامه نویسی ویژوال بیسیک دات نت (Visual Basic.NET | VB.NET) پیادهسازی مایکروسافت از زبان ویژوال بیسیک است که به وسیله زبان واسط دات نت (NET.) کامپایل میشود. زبان برنامه نویسی «VB.NET» به توسعه دهندگان این امکان را میدهد تا برنامههای دات نت را با استفاده از ویژوال بیسیک بنویسند. کم و بیش در سطح برنامههای توسعه داده شده با سایر زبانهای برنامه نویسی هستند.
با این حال، این زبان برنامه نویسی هیچ وقت برای استفاده در برنامههای تجاری و کسب و کارها محبوب نشده است و توسعه دهندگان و برنامه نویسان، زبان های برنامه نویسی C++ ،C و #C را بیشتر ترجیح میدهند. اکثر برنامههای کاربردی نوشته شده با زبان برنامه نویسی VB.NET قدیمی هستند و به عنوان برنامههای منسوخ شده در نظر گرفته میشوند و بیشتر برای از کار انداختن یا توسعه مجدد استفاده میشوند.
در کل میتوان گفت که این زبان برنامه نویسی محبوبیت کمی دارد و سطح سختی یادگیری آن متوسط است. زبان VB.NET در توسعه برنامههای عمومی و تحت وب کاربرد دارد. در این بخش به بررسی زبان برنامه نویسی قدیمی ویژوال بیسیک دات نت پرداخته شد و بخش بعدی به شرح زبان برنامه نویسی #C اختصاص داده شده است.
زبان برنامه نویسی #C
برنامه نویسی #C (سی شارپ) در سال 1379 هجری شمسی (2000 میلادی) توسط مایکروسافت به همراه فریم ورک دات نت (NET Framework.) توسعه داده و معرفی شد. از لحاظ ساختار نوشتاری، زبان برنامه نویسی #C بسیار شبیه به زبان های برنامه نویسی جاوا، ++C و C است. زبان #C، یک زبان کامپایل شده و شی گرا به حساب میآید که با زبان واسط دات نت کامپایل میشود.
در ابتدا، زبان برنامه نویسی #C فقط برای توسعه فرمهای (Form) ویندوز متمرکز بر مایکروسافت و توسعه وب با «ASP.NET» استفاده میشد. فریم ورک NET. اخیراً با معرفی دات نت استاندارد و «NET Core.» تکامل یافته است. این چارچوبها و استانداردهای جدید پلتفرم چند سکویی هستند و روی ویندوز، لینوکس و مک اجرا میشوند.
برنامه نویسی #C برای برنامه نویسی اپلیکیشنهای کاربردی عمومی و تحت وب، در سیستمهایی که بر اساس فناوری مایکروسافت توسعه یافتهاند و یک زبان محبوب به حساب میآید. فریم ورک زامارین (Xamarin) مایکروسافت به توسعه دهندگان و برنامه نویسان اجازه میدهد تا برنامههای سیستم عاملهای اندروید و «iOS» را در #C بنویسند.
این فریم ورک در برخی موارد برای برنامه نویسی سیستمها نیز مناسب و دارای کتابخانههایی برای سیستمهای تعبیه شده است. زبان #C جزء زبانهای برنامه نویسی محبوب در دنیای امروز به حساب میآید و سختی یادگیری این زبان در حد متوسط است.
زبان برنامه نویسی PHP
زبان برنامه نویسی «PHP» در ابتدا مخفف عبارت «صفحه اصلی شخصی» (Personal Home Page) بود و نام اصلی آن به این صورت بود که در ادامه عبارت «PHP» مخفف «Forms Interpreter» (مفسر فُرمها) نیز به صورت «PHP/FI» استفاده میشد. مخفف رسمی که امروزه برای برنامه نویسی «PHP» در نظر گرفته میشود «پردازشگر فرامتن» یا به زبان انگلیسی «Hypertext Processor» است. برنامه نویسی و توسعه اپلیکیشنهای تحت وب در سمت سرور کاربرد اصلی زبان برنامه نویسی PHP به حساب میآید.
زبان برنامه نویسی پی اچ پی در ابتدا جهت گسترش یک برنامه واسط دروازه مشترک (Common Gateway Interface | CGI) برای پشتیبانی از فرمهای «HTML» و دسترسی به پایگاه داده (Database) توسعه داده شد. با ترکیب کدهای یک برنامه به زبان «PHP» با کدهای «HTML»، کدهایی شبیه به صفحات فعال سرور کلاسیک مایکروسافت یعنی «قبل از دات نت» تولید خواهد شد. در این ترکیب، مفسر مورد نظر برنامه «HTML» و کدها را میخواند و بخشهای کد صفحات سرور را اجرا میکند.
یکی از دلایلی که زبان برنامه نویسی «PHP» بسیار محبوب و پرطرفدار به حساب میآید، آسان بودن یادگیری آن است. همچنین این زبان برنامه نویسی، پایه برنامههای محبوب مبتنی بر وب مانند وردپرس (WordPress) و جوملا (Joomla) به شمار میرود. نسخههای اولیه این زبان برنامه نویسی فاقد کنترلهای امنیتی و یک سری ویژگیهای کاربردی بودند و توسعه برنامههای بسیار امن را دشوار میکردند. پیشرفتهای اخیر در فریم ورک زبان «PHP» و کتابخانههای آن، باعث بهبود امنیت برنامههای این زبان برنامه نویسی شده است.
مشاغل زیادی برای زبان برنامه نویسی «PHP» وجود دارند، از جمله آنها میتوان به استفاده از آن در سیستمهای مدیریت محتوا (Content Management Systems) مانند وردپرس و سیستمهای اختصاصی توسعه یافته در «PHP» اشاره کرد. در این بخش به بررسی زبان برنامه نویسی محبوب «PHP» پرداخته شد و بخش بعدی به زبان برنامه نویسی جاوا اسکریپت (JavaScript) اختصاص داده شده است.
زبان برنامه نویسی جاوا اسکریپت
زبان برنامه نویسی جاوا اسکریپت (JavaScript)، یک زبان برنامه نویسی سطح بالا، پویا و تفسیری است. زبان تفسیری زبانی است که عبارتهای آن یکی پس از دیگری ترجمه و اجرا میشوند و در مقابل آن زبان های برنامه نویسی کامپایلی وجود دارند که قبل از اجرا تمام عبارتهای آن به یک باره ترجمه میشوند. ایده نامگذاری این زبان به این دلیل بوده که سازندگان آن قصد داشتند جاوا اسکریپت را به عنوان یک زبان اسکریپتی مکمل برای همراهی با جاوا ارائه دهند که یک زبان کامپایلی است.
همچنین برخی بر این عقیده هستند که انتخاب چنین نامی برای جاوا اسکریپت با اهداف بازاریابی و رسیدن به محبوبیت بیشتر انجام شده است. زبان برنامه نویسی «JavaScript» در سال 1374 هجری شمسی (1995 میلادی) همزمان با روزهای اولیه ظهور اینترنت عمومی، معرفی شد.
زبان برنامه نویسی جاوا اسکریپت در ایجاد کدهایی کاربرد دارد که در مرورگرهای وب در سمت کلاینت اجرا میشوند. همچنین، این زبان در بخشهایی از بک اند نیز به کار گرفته میشود. در ابتدای معرفی «Google Maps»، پیمایش بینهایت (Infinite Scrolling) در نقشهها با استفاده از زبان برنامه نویسی جاوا اسکریپت انجام میشد. از زمانی که این زبان برنامه نویسی معرفی شد، پشتیبانی زبان برنامه نویسی جاوا اسکریپت به تمام مرورگرهای وب اصلی اضافه شده است. فریم ورکهای جاوا اسکریپت از جمله React ،Angular و Vue.js یک الگوی توسعه کاربردی «مدلنما کنترلگر» (Model-View-Controller | MVC) را ارائه میدهند که به طور کامل در مرورگر اجرا میشوند.
زبان برنامه نویسی جاوا اسکریپت از اپلیکیشنهای تحت وب پشتیبانی میکند، به همین دلیل است که اکثر ابزارهای نظارت کاربر واقعی (Real User Monitoring Tools)، زبان برنامه نویسی جاوا اسکریپت را تامین میکنند. همچنین زبان جاوا اسکریپت یکی از انواع زبان های برنامه نویسی است که این امکان را دارد با زبان برنامه نویسی «HTML» ترکیب شود تا اپلیکیشنهای موبایلی پلتفرم چند سکویی ایجاد کند.
«Node.js» یک سرور تحت وب است که زبان برنامه نویسی جاوا اسکریپت را در سمت سرور اجرا میکند. برنامههای سرور تحت وب «Node.js» به طور کامل با زبان برنامه نویسی «JavaScript» نوشته میشوند.
با توجه به موارد گفته شده درباره نوع استفاده و پشتیبانی این زبان برنامه نویسی، زبان جاوا اسکریپت محبوب و دارای تقاضای بسیار برای کار و یادگیری است. یادگیری این زبان برنامه نویسی خیلی سخت نیست و از نظر درجه سختی میتوان گفت که در حد متوسط قرار دارد، اگرچه این زبان برنامه نویسی دارای تکنیکهای برنامه نویسی پیشرفتهای نیز هست که تسلط بر آنها زمان میبرد.
اگر برنامه نویس با زبان های شی گرا راحتتر باشد، میتواند از فریم ورک «TypeScript» استفاده کند. فریم ورک «TypeScript» ویژگیها و ساختار نوشتاری شی گرایی این زبان برنامه نویسی را پوشش (Overlay) و به زبان جاوا اسکریپت اصلی انتقال میدهد. در ادامه مقاله «فهرست انواع زبان های برنامه نویسی» به بررسی زبان برنامه نویسی «SQL» پرداخته شده است.
زبان برنامه نویسی SQL
زبان برنامه نویسی اس کیو ال یا سیکوئل (Structured Query Language | SQL)، برای پرس و جو (Query) و تغییر دادهها در یک سیستم مدیریت بانک اطلاعاتی رابطهای (Relational Database Management System | RDBMS) استفاده میشود. نرم افزارهای بانک اطلاعاتی زیادی وجود دارند مانند PostgreSQL ،PL/SQL (Oracle) و T-SQL که هر کدام ویژگیهای خاصی ارائه میدهند.
زبان «SQL» یک زبان برنامه نویسی عمومی مانند انواع زبان های برنامه نویسی دیگر نیست که بتوان از آن برای نوشتن برنامهها استفاده کرد. با این حال، یک مهارت مفید و مورد نیاز برای اکثر توسعه دهندگان به حساب میآید. اصطلاح «برنامه نویسی فول استک» (Full-Stack Developer) به توسعهدهندهای با مجموعهای از مهارتهای کامل گفته میشود که همه جنبههای یک برنامه کاربردی را بررسی میکند. این جنبههای برنامههای کاربردی شامل دسترسی و ذخیره دادهها در پایگاه داده میشود. یادگیری زبان برنامه نویسی «SQL» در ابتدا کار سختی نیست، اگرچه استفاده پیشرفته از سیکوئل در دادههای کلان (Big Data) و تجزیه و تحلیل دادهها (Data Analysis) به تجربه قابل توجهی نیاز دارد.
زبان برنامه نویسی SQL یکی از انواع زبان های برنامه نویسی به شمار میرود که در بین توسعه دهندگان و مدیران پایگاه داده بسیار محبوب است، بنابراین مشاغلی که به مهارتهای SQL نیاز دارند، فراوان هستند. با این حال، این زبان دستوری یک مهارت کامل نیست. داشتن تجربه در زمینه SQL امتیاز بزرگی در رزومه محسوب میشود، اما به ندرت به عنوان تنها مهارت اولیه مورد نیاز برای یک موقعیت شغلی در نظر گرفته میشود. در ادامه این مقاله به بررسی زبان برنامه نویسی «Objective-C» پرداخته شده است.
زبان برنامه نویسی Objective-C
زبان برنامه نویسی «Objective-C»، یک زبان برنامه نویسی شی گرا، همه منظوره و کامپایل شده به حساب میآید. ساختار نوشتاری آن بر پایه زبان برنامه نویسی قدیمی «Smalltalk» است. تا سال 1393 هجری شمسی (2014 میلادی)، یعنی زمانی که شرکت اپل (Apple) زبان برنامه نویسی سوئیفت (Swift) را معرفی کرد، زبان برنامه نویسی «Objective-C»، زبان اصلی بود که توسط شرکت اپل برای توسعه برنامههای کاربردی سیستم عامل «MacOS» و «iOS» استفاده میشد. زبان برنامه نویسی «Objective-C» به دلیل بالا بودن تعداد برنامههای موجودی که با استفاده از آن نوشته شدهاند، هنوز نسبتاً محبوب است.
اکنون که توسعه سیستم عامل «MacOS» و «iOS» مدرن عمدتاً در برنامه نویسی سوئیفت انجام میشود، احتمالاً با کاهش تعداد برنامههای کاربردی پشتیبانی شده توسط برنامه نویسی «Objective-C» در طول زمان، محبوبیت این زبان برنامه نویسی در نهایت کاهش خواهش خواهد یافت. یادگیری زبان برنامه نویسی «Objective-C» آسان نیست. این زبان از دستورات نحوی و ساختاری استفاده میکند که در سایر زبان های برنامه نویسی مشترک نیستند، بنابراین تجربه کار با انواع زبان های برنامه نویسی دیگر برای این زبان تاثیری در یادگیری آن ندارد.
برای توسعه نرم افزاری سیستم عاملهای شرکت اپل، بهترین ایده یادگیری هر دو زبان برنامه نویسی «Objective-C» و «Swift» است. با یادگیری هر دو زبان به برنامه نویس این امکان داده میشود تا بتواند روی برنامههای قدیمی نوشته شده به زبان «Objective-C» کار کند و برنامههای جدید را به زبان برنامه نویسی «Swift» بنویسد. برای این دو زبان «Objective-C» و «Swift»، مشاغل بسیار زیادی موجود است. در ادامه بررسی انواع زبان های برنامه نویسی، به شرح زبان برنامه نویسی دلفی و پاسکال شی گرا (Delphi | Object Pascal) پرداخته شده است.
زبان برنامه نویسی پاسکال شی گرا و دلفی
دلفی یک کامپایلر و یک محیط توسعهدهنده یکپارچه (Integrated Developer Environment | IDE) برای زبان شی گرا پاسکال (Object Pascal) است. این زبان برنامه نویسی یکی از مشتقات شی گرای گرفته شده از زبان برنامه نویسی پاسکال به حساب میآید که در اواخر دهه 1330 هجری شمسی (دهه 1960 میلادی) توسعه یافته است. «Delphi | Object Pascal» به این دلیل در فهرست ذکر شده قرار دارد که نرم افزارهای زیادی وجود دارند که با «Object Pascal» نوشته شدهاند.
در گذشته این زبان برای کاربردهای عمومی نیز مورد استفاده قرار میگرفت. در واقع زبان برنامه نویسی پاسکال شی گرا، یک زبان مرده و منسوخ شده به حساب میآید و یادگیری آن دیگر سودی ندارد. در ادامه به بررسی زبان برنامه نویسی روبی (Ruby) پرداخته شده است.
زبان برنامه نویسی روبی
زبان برنامه نویسی روبی (Ruby) یک زبان تفسیری، پویا و شی گرا است که برای اولین بار در اواسط دهه 1360 هجری شمسی (اواسط دهه 1990 میلادی) معرفی شده است. این زبان برنامه نویسی از انواع زبان های برنامه نویسی دیگر از جمله Lisp ،Perl و Ada الهام میگیرد. زبان برنامه نویسی روبی برای توسعه اپلیکیشنهای تحت وب بسیار پرطرفدار به شمار میرود.
فریم ورک روبی آن ریلز (Ruby on Rails) که به اختصار «Rails» نامیده میشود، یک فریم ورک تحت سرور به شمار میرود که به زبان «Ruby» نوشته شده است. یادگیری زبان برنامه نویسی روبی نسبتاً آسان به حساب میآید. استفاده متداول از آن در برنامههای کاربردی وب، یافتن فرصتهای شغلی را برای آن آسان میکند.
زبان برنامه نویسی متلب
متلب (MATLAB) به تنهایی یک زبان برنامه نویسی به شمار نمیرود. میتوان گفت که متلب یک برنامه کاربردی است که برای محاسبه و مدلسازی محاسبات پیچیده ریاضی استفاده میشود. زبان برنامه نویسی متلب در درجه اول در محیطهای تحقیقاتی، دانشگاهها و آزمایشگاهها استفاده میشود. نرم افزار کاربردی متلب میتواند محاسبات پیچیده ماتریسی را انجام دهد و با استفاده از برنامههایی که دارد از نمادهای پیچیده ریاضی پشتیبانی کند.
توابع نوشته شده با زبان های برنامه نویسی C# ،C و FORTRAN را میتوان در نرم افزار «MATLAB» فراخوانی کرد. دانش مورد نیاز برای استفاده از زبان برنامه نویسی متلب بیشتر به مفاهیم و مهارتهای ریاضی مرتبط است. اگر شخصی یک دانشجوی پیشرفته ریاضی باشد که در مقطع دکتری ریاضیات کار میکند، یادگیری متلب برای آن نسبتاً آسان است. این زبان برنامه نویسی محبوبیت خوبی دارد. در ادامه این مقاله به بررسی زبان برنامه نویسی اسمبی (Assembly) پرداخته میشود.
زبان برنامه نویسی اسمبلی
زبان اسمبلی (Assembly Language) یک اصطلاح عمومی برای کدهای سطح پایین است که دستورالعملهای ماشین را برای یک ریزپردازنده (Microprocessor) معین نشان میدهد. اکثر زبان های مقاله «فهرست انواع زبان های برنامه نویسی»، زبان های سطح بالا هستند که از نظر نحوی و دستور نوشتاری به زبان انگلیسی نزدیکترند. کدهای زبان های سطح بالا با یک بایتکد (Bytecode) واسط یا مستقیماً در دستورالعملهای ماشین کامپایل میشوند، اما کدهای زبان اسمبلی، به جای کامپایل، اسمبل شدهاند.
این برنامه نویسی بین برنامه نویسان و توسعه دهندگان محبوبیت کمی دارد. یک خط از کدهای نوشته شده برای مثال به زبان برنامه نویسی «C» و یا «Ruby» به راحتی فقط با خواندن آنها قابل درک است. در مقابل این موضوع، درک زبان اسمبلی بدون مطالعه دقیق کل برنامه بسیار دشوار میشود. هر عملیات، از جمله عملیات ریاضی و انتقال دادهها به داخل و خارج از رجیسترها، یک عملیات کامل در زبان اسمبلی است. این موضوع بدین معنی است که برای انجام یک مقدار کار یکسان، کدهای اسمبلی بسیار بیشتری نسبت به کدهای برنامه نویسی «C» نیاز است.
کدهای اسمبلی زمانی که هدف اصلی برنامه کارایی آن است بسیار مفید و کارآمد هستند. این زبان برنامه نویسی، برای برنامه نویسی سیستمی سطح بسیار پایین استفاده میشود، یا در برخی موارد ممکن است با کدهای برنامه برای افزایش عملکرد ترکیب شود. زبان برنامه نویسی اسمبلی جهت برنامه نویسی سیستمی و توسعه سخت افزار و فریمویر (Firmware) مورد استفاده قرار میگیرد. در ادامه مقاله ارائه شده، به بررسی زبان برنامه نویسی سوئیفت پرداخته شده است.
زبان برنامه نویسی سوئیفت
شرکت اپل (Apple) در سال ۱۳۹۳ هجری شمسی (۲۰۱۴ میلادی)، زبان برنامه نویسی مدرن سوئیفت (Swift) را برای جایگزینی با زبان برنامه نویسی قدیمی «Objective-C» معرفی کرده است که این زبان برنامه نویسی نیز در بخشهای پیشین این مقاله مورد بررسی قرار گرفت. یکی از اهداف مهم زبان برنامه نویسی سوئیفت این بود که اشکالزدایی را سادهتر از زبان برنامه نویسی «Objective-C» انجام دهد.
ساختار نوشتاری و نحوی این زبان برنامه نویسی مدرن، سادهتر از زبان برنامه نویسی «Objective-C» است و این برنامه نویسی به کدهای کمتری برای برنامهای یکسان نیاز دارد. با این حال، شکستن تغییرات ارائه شده با نسخههای جدید ممکن است باعث تغییراتی در کدهای آن شود.
تعداد شغلهای در دسترس برای زبان برنامه نویسی سوئیفت بسیار زیاد است، بنابراین احتمال منسوخ نشدن این برنامه نویسی بالاست. همانطور که در بخش زبان برنامه نویسی «Objective-C» ذکر شد، اگر شخصی قصد برنامه نویسی در زمینه سیستمهای شرکت اپل را دارد، بهتر است هر دوی این برنامه نویسیها را بیاموزد.
این زبان از نظر محبوبیت درجه متوسط را دارد و از نظر یادگیری درجه متوسط رو به سخت را داراست. زمینههای کاربردی آن در برنامههای موبایل و دسکتاپ شرکت اپل یعنی در مکبوک، آیفون و آیپد به حساب میآید. بخش بعدی مقاله به توضیحی از زبان برنامه نویسی گو (Go) اختصاص داده شده است.
زبان برنامه نویسی گو یا گلنگ
زبان برنامه نویسی گو یا همان گلنگ (Google Language | GO | Golang) یک برنامه نویسی نسبتاً جدید به حساب میآید. این زبان برنامه نویسی جدید در سال ۱۳۸۸ هجری شمسی (۲۰۰۹ میلادی) توسط دو نفر از مهندسین گوگل معرفی شد. ساختار نوشتاری زبان برنامه نویسی گو مقدار زیادی از زبان برنامه نویسی C و جاوا الهام گرفته است. اهداف طراحی زبان برنامه نویسی گو شامل سازگاری بین پلتفرم چند سکویی، سادگی و پشتیبانی از پردازندههای مدرن میشود.
یادگیری زبان برنامه نویسی گو آسان است، اما برخی از پیچیدگیهای زبان های برنامه نویسی C و ++C مانند اشارهگرها (Pointers) را نیز دارد، ولی به صورت کلی، ساختار نوشتاری و متعارف این زبان برنامه نویسی ساده به حساب میآید. مشاغل موجود با زبان برنامه نویسی «Go» زیاد نیستند و این زبان از محبوبیت کمی برخوردار است، با این حال، این زبان برنامه نویسی در حوزه مهندسی و «DevOps» به سرعت در حال رشد است. کاربردهای فعلی زبان برنامه نویسی Golang در زمینه اپلیکیشنهای تحت وب و کاربردهای عمومی است. در بخش بعدی مقاله به بررسی زبان برنامه نویسی پرل (Perl) پرداخته شده است.
چرا باید زبان برنامه نویسی Go را بیاموزیم؟ — راهنمای جامع
زبان برنامه نویسی پرل
زبان برنامه نویسی پرل (Practical Extraction and Report Language | Perl) در سال ۱۳۶۶ هجری شمسی (۱۹۸۷ میلادی) به عنوان یک زبان برنامه نویسی (Scripting Language) سودمند معرفی شد که به وسیله اسکریپت نویسی برنامه واسط دروازه مشترک (Common Gateway Interface | CGI) تکامل یافته است.
نسخههای اخیر برنامه نویسی پرل با نسخههای اولیه آن کاملاً متفاوت به شمار میروند. یادگیری زبان برنامه نویسی پرل نسبتاً آسان است، اما مخالفان خود را نیز دارد. توسعه زبان برنامه نویسی «Perl» تا حدودی اتفاقی بود که منجر به انتقاداتی درباره به خوبی سازماندهی نشدن، شد. این موضوع باعث شده است که زبان برنامه نویسی پرل کمتر شهرت داشته باشد.
نرم افزارهای بسیار زیادی به وسیله برنامه نویسی پرل نوشته شدهاند و تا به امروز استفاده از آنها ادامه دارند و میتوان گفت که پرل یک زبان برنامه نویسی مدرن است. پیدا کردن شغل برای برنامه نویسان پرل سخت نیست. زبان برنامه نویسی «Perl»، زبان خوبی برای یادگیری در اوایل شروع کار برنامه نویسی است، اما به تدریج در کنار آن بهتر است زبان های دیگری نیز آموخته شود.
زبان برنامه نویسی پرل جزء زبان های محبوب به حساب میآید و در حوزه اپلیکیشنهای تحت وب و برنامههای عمومی کاربرد دارد. در ادامه مقاله «انواع زبان های برنامه نویسی» به بررسی زبان برنامه نویسی R پرداخته شده است.
زبان برنامه نویسی R
زبان برنامه نویسی «R» در درجه اول توسط کارشناسان آمار و پژوهشگران برای انجام تجزیه و تحلیل آماری مجموعه دادهها (Dataset) استفاده میشود. جمعیت شناسان، حسابداران بیمه و سایر مشاغل متمرکز بر تجزیه و تحلیلهای آماری از زبان برنامه نویسی R استفاده میکنند.
بیشتر دانش مورد نیاز برای کار با زبان برنامه نویسی R، مانند زبان برنامه نویسی متلب، وابسته به آمار است. برنامه نویسی زبان R یک زبان سخت برای یادگیری به حساب میآید و برنامه نویسان آن دانش آمار را یکی از ملزومات زبان برنامه نویسی R در نظر میگیرند و برای توسعه نرم افزارها از آن بهره میبرند.
تعداد مشاغل زبان برنامه نویسی R به دلیل تخصصی بودن این زبان برنامه نویسی بالا نیست. اگر شخصی تحلیلگر داده باشد و با استفاده از روشهای آماری کارش را انجام بدهد به احتمال زیاد با زبان برنامه نویسی R کار کرده است. برای بالا بردن تعداد گزینههای این زبان برنامه نویسی، میتوان جعبه ابزار R را به آن اضافه کرد. در بخش بعدی این مقاله به شرح زبان برنامه نویسی «PL/SQL» پرداخته شده است.
زبان برنامه نویسی PL/SQL
زبان برنامه نویسی رویهای «PL/SQL» که سرنامی برای عبارت «Procedural Language/Structured Query Language» به حساب میآید، یک زبان برنامه نویسی خاص از زبان برنامه نویسی «SQL» است. ساختار نوشتاری و ویژگیهای «PL/SQL» با ویژگیهای پایگاههای داده اوراکل (Oracle) هماهنگ میشوند. یادگیری اکثر زبان های مبتنی بر SQL نسبتاً دشوار است. کوئری و بهروزرسانی ساده دادهها آسان است، اما دستورهای پیوند (Join)، تجمیع (Aggregation) و مفاهیم پیشرفتهای مانند مکاننما یا کرسر (Cursor) نیاز به درک بیشتری از نظریه پایگاه دادهها دارند.
اوراکل یک پایگاه داده پر کاربرد و محبوب به شمار میرود، بنابراین مشاغل «PL/SQL» نسبتاً فراوان هستند. سختی یادگیری برنامه نویسی «PL/SQL» در حد متوسط است و برای کوئری نویسی در اوراکل مورد استفاده قرار میگیرد. توسعه دهندگان فول استک (Full Stack Developer) که در لایه دادهها کار میکنند باید یادگیری زبان برنامه نویسی «PL/SQL» و دیگر زبان های «SQL» را در نظر داشته باشند. در بخش بعدی این مقاله به بررسی زبان برنامه نویسی «Visual Basic» پرداخته شده است.
زبان برنامه نویسی ویژوال بیسیک
زبان برنامه نویسی ویژوال بیسیک (Visual Basic | VB) توسط شرکت مایکروسافت به عنوان یکی از زبان های برنامه نویسی پایه معرفی شده است. این زبان، یک زبان برنامه نویسی رویدادگرا (Event Driven) به شمار میرود و دارای محیط توسعه یکپارچهای (Integrated Development Environment) است که در درجه اول برای توسعه برنامههای کاربردی ویندوز استفاده میشود. زبان برنامه نویسی ویژوال بیسیک به گونهای طراحی شده است که یادگیری آن آسان باشد تا برای تولید سریع نرم افزارها از آن استفاده شود. زبان برنامه نویسی ویژوال بیسیک در برنامههای کاربردی (Visual Basic for Applications | VBA) در نسخههای قدیمی برنامههای «Microsoft Office» مانند «Access» تعبیه شده است.
زبان برنامه نویسی «VBA» برای اصلاح و تغییرات برنامههای اسناد آفیس استفاده میشود و همچنین پایگاه دادههای «Access» از این زبان برنامه نویسی برای نوشتن برنامههای کوچک استفاده میکنند. شرکت مایکروسافت در سال ۱۳۸۷ هجری شمسی (۲۰۰۸ میلادی) آخرین نسخه از برنامه نویسی ویژوال بیسیک یعنی نسخه ۰.۶ را منسوخ کرده است. از این رو مشاغلی که به برنامه نویسان ویژوال بیسیک نیاز دارند رو به کاهش هستند و مشاغل موجود نیز به اصلاح و ویرایش کدهای این زبان برنامه نویسی و یا انتقال آنها به یک پلتفرم دیگر مربوط میشوند. در بخش بعدی مقاله «فهرست انواع زبان های برنامه نویسی» به بررسی زبان برنامه نویسی «SAS» پرداخته میشود.
زبان برنامه نویسی SAS
نام زبان برنامه نویسی «SAS» مخفف عبارت «Statistical Analysis System» به معنی سیستم تجزیه و تحلیل آماری است. این زبان برنامه نویسی در سال ۱۳۴۵ هجری شمسی (۱۹۶۶ میلادی) برای کار با کامپیوترهای بزرگ (Mainframe Computers) توسعه یافت و برای تجزیه و تحلیل دادههای آماری مورد استفاده قرار میگرفت.
زبان برنامه نویسی «SAS» به طور معمول استفاده نمیشود، اگرچه هنوز در برخی از مشاغل موجود است، اما ابزارهای تحلیل آماری مدرن از زبان برنامه نویسی «SAS» پیشی گرفتهاند. سطح یادگیری این زبان برنامه نویسی دشوار به حساب میآید. در ادامه این مقاله به بررسی زبان برنامه نویسی «Dart» پرداخته شده است.
زبان برنامه نویسی Dart
زبان برنامه نویسی «Dart» در سال ۱۳۹۰ هجری شمسی (۲۰۱۱ میلادی) توسط مهندسین شرکت گوگل ایجاد شد. این زبان برنامه نویسی، یک زبان کامپایل شده با ساختار نوشتاری شبیه به برنامه نویسی «C» است. زبان برنامه نویسی «Dart» به جاوا اسکریپت شباهت بسیاری دارد. از زبان برنامه نویسی «Dart» در برنامههای وب و موبایل استفاده میشود.
این زبان برنامه نویسی هیچگاه نتوانست محبوبیتی بین برنامه نویسان کسب کند، بنابراین تعداد مشاغل این زبان برنامه نویسی بسیار کم است. در ادامه به بررسی زبان برنامه نویسی «#F» (افشارپ) پرداخته میشود.
زبان برنامه نویسی #F
زبان برنامه نویسی افشارپ (#F) توسط شرکت مایکروسافت به عنوان یک زبان برنامه نویسی شی گرا و تابعی معرفی شد که به زبان واسط دات نت کامپایل میشود. به عنوان یک زبان برنامه نویسی تابعی، زبان #F برنامهها را به صورت توابع ریاضی بیان میکند. زبان های برنامه نویسی تابعی با زبان های برنامه نویسی شی گرا و رویهای تفاوت دارند، به این دلیل که از دادهها و حالتهای قابل تغییر اجتناب میکنند. برنامه نویسی تابعی کاملاً با اشکال دیگر زبان های برنامه نویسی که محبوبترند، تفاوت دارد. با این حال، این زبان برنامه نویسی برای انواع خاصی از برنامهها مناسب است. محاسبات خاص را میتوان در زبان های تابعی به طور مختصر و ظریفتر نسبت به زبان های شی گرا بیان کرد.
#F از محبوبیت کمی برخوردار و یادگیری آن دشوار است، به همین دلیل مشاغل کمی برای این زبان وجود دارد. زبان برنامه نویسی «#F» در خدمات تحت وب و یادگیری ماشین (Machine Learning) مورد استفاده قرار میگیرد. در ادامه مقاله «فهرست انواع زبان های برنامه نویسی» به شرح زبان برنامه نویسی کوبول(COBOL) پرداخته میشود.
زبان برنامه نویسی کوبول
زبان برنامه نویسی کوبول (Common Business Oriented Language | COBOL)، یک زبان برنامه نویسی بسیار قدیمی است که در ابتدا برای توسعه کامپیوترهای Mainframe مورد استفاده قرار میگرفت. نسبت به بسیاری از زبان های برنامه نویسی مدرن امروزی، یادگیری زبان برنامه نویسی کوبول دشوار است.
برنامه نویسانی که سالهاست از COBOL استفاده میکنند به دلیل کمبود برنامه نویسان COBOL همیشه به راحتی استخدام میشوند. اما این موضوع اصلاً دلیل خوبی برای یادگیری این cfhk برنامه نویسی نیست و سرمایهگذاری روی نسل جدید پلتفرمها و زبان های برنامه نویسی و مهارتهای جدید بهتر است. امروزه تقریباً فقط در بانکها از کوبول استفاده میشود. در بخش بعدی این مقاله به بررسی زبان برنامه نویسی اسکالا (Scala) پرداخته شده است.
زبان برنامه نویسی اسکالا
زبان برنامه نویسی اسکالا (Scala) برای پر کردن شکافها و کمبودهای زبان برنامه نویسی جاوا (Java) مانند ویژگیهای برنامه نویسی تابعی، طراحی شده است. این زبان برنامه نویسی در توسعه کتابخانههای نرم افزاری و برنامههای کاربردی مورد توجه قرار میگیرد. زبان برنامه نویسی اسکالا به دلیل داشتن منحنی یادگیری رو به بالا، مورد انتقاد قرار گرفته است. یادگیری زبان های برنامه نویسی جدید از نظر برخی از افراد، برای توسعه دهندگان نرم افزار گزینه خوبی است، به خصوص کسانی که عقیده دارند برطرف کردن مشکلات قدیمی با روشهای جدید بهتر است.
تعداد مشاغل برای زبان برنامه نویسی اسکالا بالاست، اما این زبان برای شروع یادگیری برنامه نویسی مناسب نیست و کسانی که در برنامه نویسی تجربیاتی دارند بهتر میتوانند آن را بیاموزند. در کل یادگیری زبان برنامه نویسی اسکالا دشوار به شمار میرود و این برنامه نویسی در زمینه فریم ورکهای نرم افزاری و برنامههای کاربردی تحت وب مورد استفاده قرار میگیرد. بخش بعدی مقاله به زبان برنامه نویسی «ABAP» اختصاص داده شده است.
زبان برنامه نویسی ABAP
زبان برنامه نویسی ABAP که سرنامی برای عبارت «Advanced Business Application Programming» است، برای استفاده با سیستم نرم افزار سازمانی شرکت آلمانی «SAP» جهت توسعه گزارشها طراحی شده است. این زبان برنامه نویسی محبوبیت زیادی بین برنامه نویسان ندارد و موقعیتهای شغلی کمی برای آن موجود است.
ساختار نحوی و نوشتاری آن کاملاً با انواع زبان های برنامه نویسی موجود متفاوت است. سطح یادگیری این زبان برنامه نویسی سخت به حساب میآید و یادگیری آن برای داشتن یک شغل بلند مدت و همیشگی مناسب نیست. بخش بعدی این مقاله، به زبان برنامه نویسی فرترن (Fortran) میپردازد.
زبان برنامه نویسی فرترن
زبان برنامه نویسی فرترن (Fortran) توسط ابرشرکت بینالمللی ماشینهای کسب و کار (International Business Machines Corporation | IBM) برای برنامه نویسیهای علمی و پژوهشی توسعه یافته است. این زبان برنامه نویسی ابتدا در سال ۱۳۳۶ هجری شمسی (۱۹۵۷ میلادی) معرفی شد، بنابراین با ۶۴ سال قدمت یکی از قدیمیترین زبان های این فهرست به شمار میرود.
اکنون زبان برنامه نویسی Fortran به نقطهای رسیده است که احتمالاً زبان برنامه نویسی کوبول حدود ده سال آینده به آن خواهد رسید یعنی کاملاً منسوخ شده است. یادگیری این زبان برنامه نویسی سخت به حساب میآید و عمده استفاده آن در برنامه نویسی کامپیوترهای بزرگ بوده است. در بخش بعدی به بررسی زبان برنامه نویسی «Lua» پرداخته میشود.
زبان برنامه نویسی لوآ
زبان برنامه نویسی لوآ «Lua»، زمانی که سیاستهای تجاری، خرید نرم افزار دارای مجوز را از سایر نقاط جهان بسیار گران میکرد، بر حسب ضرورت در کشور برزیل طراحی و توسعه یافت. این زبان برنامه نویسی به گونهای طراحی شده است که قابل یادگیری برای کاربران غیر فنی نیز باشد. زبان برنامه نویسی «Lua» به عنوان یک زبان برنامه نویسی بازیسازی در بین توسعه دهندگان تازهکار محبوب شده است.
این زبان برنامه نویسی محبوبیت چندانی ندارد و موقعیتهای شغلی کمی برای آن وجود دارد. یادگیری زبان برنامه نویسی لوآ آسان است و برنامه نویس را به یک توسعهدهنده بهتر و کاملتر تبدیل میکند، اما بعید است که شغلی برای یادگیرنده آن ایجاد کند. در ادامه مقاله «فهرست انواع زبان های برنامه نویسی» به بررسی زبان برنامه نویسی Rust پرداخته میشود.
زبان برنامه نویسی Rust
زبان برنامه نویسی Rust، یک زبان نسبتاً جدید و قدرتمند است که برای برنامه نویسی سیستمی محبوب است. از اهداف طراحی آن میتوان ایمنی (Safety)، قابلیت اطمینان (Reliability) و سرعت (Speed) را نام برد. این ویژگیها به قیمت پیچیدگی و سختی زیاد در یادگیری است، به همین دلیل، زبان برنامه نویسی «Rust» برای کسی که میخواهد برنامه نویسی را آغاز کند اصلاً پیشنهاد نمیشود.
این زبان برنامه نویسی به عنوان یک چالش یادگیری عالی به حساب میآید و مشاغلی وجود دارند که از آن استفاده میکنند، اما تعداد آنها بسیار محدود است. به تازگی این زبان برنامه نویسی در زمینه مدرن «اینترنت اشیا» (Internet of Things | IoT) نیز مورد استفاده قرار میگیرد. در ادامه این فهرست از انواع زبان های برنامه نویسی، به شرح زبان برنامه نویسی «Lisp» پرداخته میشود.
زبان برنامه نویسی Lisp
زبان برنامه نویسی لیسپ (Lisp) فقط یک سال از زبان برنامه نویسی Fortran کوچکتر است، به همین دلیل یکی از پدربزرگهای زبان های برنامه نویسی در مقاله «فهرست انواع زبان های برنامه نویسی» به حساب میآید. برای طراحی بسیاری از زبان های برنامه نویسی موجود در این فهرست از جمله جاوا اسکریپت، اسکالا، پایتون و خیلی از زبان های دیگر از زبان برنامه نویسی «Lisp» الهام گرفته شده است. یادگیری زبان برنامه نویسی «لیسپ» اصلاً آسان نیست و از نظر ساختار نوشتاری بسیار طولانی و پیچیده به شمار میرود، اگر شخصی به تایپ کردن پرانتزها علاقه دارد، یادگیری این زبان برنامه نویسی برای وی مناسب است.
مشاغلی که در فهرست استخدام خود زبان برنامه نویسی LISP را به عنوان یکی از توانمندیها نیاز دارند، آن را کمتر برای برنامه نویسی با خود آن زبان میخواهند و بیشتر برای درک عمیق زبان هایی از آن استفاده میکنند که بعد از زبان برنامه نویسی لیسپ ارائه شدهاند. دانش برنامه نویسی لیسپ به عنوان ابزاری برای تبدیل شدن برنامه نویسان به توسعه دهندگان ماهرتر در زبان های مدرن مفید است. در بخش بعدی مقاله به بررسی زبان برنامه نویسی «Groovy» پرداخته میشود.
زبان برنامه نویسی Groovy
زبان برنامه نویسی Groovy به زبان برنامه نویسی جاوا بسیار مرتبط است و توسط «bytecode» جاوا کامپایل میشود. این زبان برنامه نویسی از نظر ساختار نوشتاری نیز به برنامه نویسی جاوا شباهت بسیاری دارد. زبان برنامه نویسی Groovy ویژگیهایی مانند تایپ پویا (Dynamic Typing) و بارگذاری اضافی عملگر (Operator Overloading) را به زبان برنامه نویسی جاوا اضافه کرده است که در آن وجود ندارد. کدهای زبان برنامه نویسی Groovy همچنین میتوانند بدون کامپایل اجرا شوند و آن را به یک پلتفرم اسکریپت (Scripting Platform) تبدیل کنند.
زبان Groovy در میان توسعه دهندگان طرفداران زیادی پیدا کرده است و در برخی از ابزارهای محبوب مانند «Jenkins» استفاده میشود. اگر یک برنامه نویس جاوا قصد یادگیری این زبان را داشته باشد، به راحتی میتواند آن را یاد بگیرد. این زبان در بسیاری از فهرستهای شغلی بهعنوان امتیاز مثبت ذکر شده است، اما نیاز اصلی هیچ شغلی نیست. بخش بعدی به زبان برنامه نویسی «LabVIEW» اختصاص داده شده است.
زبان برنامه نویسی LabVIEW
زبان برنامه نویسی لبویو (Laboratory Virtual Instrument Engineering | LabVIEW)، یک زبان کامپایلری و «IDE» است که برای طراحی برنامه از یک زبان گرافیکی استفاده میکند. این زبان برنامه نویسی در درجه اول جهت کنترل ماشینآلات برای سناریوهای اتوماسیون صنعتی استفاده میشود. زبان «LabVIEW» در مهندسی مکانیک و اتوماسیون صنعتی مورد استفاده قرار میگیرد، همانطور که زبان برنامه نویسی «MATLAB» برای تحقیقات ریاضی استفاده میشود.
این زبان برنامه نویسی فراتر از فعالیتهای آکادمیک، مهندسی مکانیک و اتوماسیون صنعتی مزیت دیگری ندارد. در بخش بعدی مقاله «فهرست انواع زبان های برنامه نویسی» به بررسی زبان برنامه نویسی «Prolog» پرداخته شده است.
زبان برنامه نویسی Prolog
زبان برنامه نویسی پرولاگ (Logic Programming | Prolog) یک زبان اعلانی (Declarative Language) به شمار میرود که بر اساس نظریههای ریاضی و منطقی نسبتاً پیشرفته ایجاد شده و برای سیستمهای پیچیده استفاده میشود. یادگیری و خواندن ساختار نوشتاری زبان برنامه نویسی «Prolog» دشوار است و فقط برنامه نویسانی از این زبان استفاده میکنند که در زمینه کاری خود مجبور به استفاده از آن هستند.
این زبان در گذشته در زمینه هوش مصنوعی مورد استفاده قرار میگرفت، اما امروزه زبان های برنامه نویسی دیگری از جمله پایتون جایگزین آن شدهاند. بخش بعدی به زبان برنامه نویسی «Ada» اختصاص داده شده است.
زبان برنامه نویسی Ada
زبان برنامه نویسی آدا یکی از زبان های قدیمی این فهرست به حساب میآید که اولین بار در سال ۱۳۵۹ هجری شمسی (۱۹۸۰ میلادی) معرفی شد. این زبان برنامه نویسی شباهتهای زیادی با زبان برنامه نویسی پاسکال دارد و دارای بسیاری از ویژگیهای معمولی زبان های سطح بالا، از جمله تایپ استاتیک و شی گرایی است.
زبان برنامه نویسی «Ada» محبوبیت کمی دارد به همین دلیل فرصتهای شغلی کمی برای آن وجود دارند که بیشتر این مشاغل شامل ویرایش و نگهداری برنامهها و انتقال آنها به سیستم عاملهای جدیدتر است. در ادامه این فهرست از انواع زبان های برنامه نویسی، به بررسی زبان جولیا پرداخته شده است.
زبان برنامه نویسی جولیا
زبان برنامه نویسی جولیا (Julia) در سال ۱۳۹۱ هجری شمسی (۲۰۱۲ میلادی) معرفی شده است و نسبتاً یک زبان برنامه نویسی جدید به حساب میآید. ساختار نوشتاری این زبان برنامه نویسی شبیه به زبان برنامه نویسی «C» است و یادگیری آن مانند زبان برنامه نویسی C کمی دشوار است.
زبان برنامه نویسی جولیا بیشتر در زمینههای علم داده (Data science) و کاربردهای تحلیلی مورد استفاده قرار میگیرد، معمولاً کسانی که در این حوزهها مشغول به کارند با زبان برنامه نویسی جولیا آشنا هستند. بخش بعدی مقاله به شرح زبان برنامه نویسی «Haskell» اختصاص داده شده است.
زبان برنامه نویسی Haskell
هسکل (Haskell) به عنوان زبان برنامه نویسی تابعی و سطح بالا شناخته میشود. زبان های تابعی به جای عمل کردن روی برنامههای دستوری دادهها، بر بیان مقصود از طریق گزارههای ریاضی تمرکز میکنند. بسیاری از زبان های تابعی دیگر برای طراحی از زبان برنامه نویسی «Haskell» الهام گرفتهاند.
یادگیری این زبان برنامه نویسی دشوار است، با این حال، فرصتی برای یادگیری زبان های برنامه نویسی تابعی به حساب میآید. اگر برنامه نویسی این زبان را یاد بگیرد در حقیقت روش نوشتن نرم افزار را آموخته است. میتوان به وسیله یادگیری زبان هسکل وارد بازار کار توسعه نرم افزار شد. در ادامه به بررسی زبان برنامه نویسی «Apex» پرداخته شده است.
زبان برنامه نویسی Apex
«Apex» زبان برنامه نویسی است که از نظر ساختار نوشتاری و سختی یادگیری مشابه زبان های برنامه نویسی «#C» و «Java» به شمار میرود. این زبان توسط شرکت «Salesforce» به عنوان یک زبان اختصاصی برای توسعه پلتفرم «Salesforce» معرفی شده است. در ادامه مقاله «فهرست انواع زبان های برنامه نویسی» به شرح زبان برنامه نویسی کاتلین (Kotlin) پرداخته میشود.
زبان برنامه نویسی کاتلین
زبان برنامه نویسی کاتلین (Kotlin) روی ماشین مجازی (Virtual Machine | VM) جاوا اجرا و به جاوا اسکریپت کامپایل میشود. ساختار نوشتاری آن به زبان برنامه نویسی جاوا شباهت زیادی دارد. شرکت گوگل از برنامه نویسی کاتلین برای توسعه سیستم عامل اندروید (Android OS) پشتیبانی میکند.
محبوبیت زبان برنامه نویسی کاتلین در طول زمان افزایش یافته است، اما به طور کلی یک زبان با معروفیت کم باقی مانده است. در بخش بعدی به بررسی برنامه نویسی «Bash» پرداخته میشود.
زبان برنامه نویسی Bash
اسکریپتهای «Bash» برای خودکارسازی وظایف در پلتفرمهای یونیکس و لینوکس استفاده میشوند. ساختار نوشتاری این زبان برنامه نویسی نسبتاً ساده است و به راحتی میتوان آن را یاد گرفت. مهارتهای زبان برنامه نویسی «Bash» در درجه اول برای مدیریت یونیکس و لینوکس مورد استفاده قرار میگیرد، همچنین این برنامه نویسی زمانی نیاز است که لازم به نوشتن اسکریپ برای پلتفرم یونیکس و لینوکس باشد.
توسعه دهندگان میتوانند از زبان برنامه نویسی «Bash» برای کمک به خودکارسازی تحویل نرم افزار استفاده کنند. زبان برنامه نویسی «Bash» یک مهارت توسعه به شمار میرود و به تنهایی یک زبان برنامه نویسی کامل نیست. در ادامه به بررسی زبان برنامه نویسی «Ladder Logic» پرداخته میشود.
زبان برنامه نویسی Ladder Logic
«Ladder Logic» یا «منطق نردبانی» را نمیتوان صریحاً به عنوان یک زبان برنامه نویسی نام برد. از این زبان در درجه اول برای طراحی لوازم الکترونیکی صنعتی و مدارها مورد استفاده قرار میگیرد.
زبان برنامه نویسی Clojure
زبان برنامه نویسی کلوژر (Clojure) به زبان برنامه نویسی «LISP» مرتبط است و از نظر ساختار نوشتاری نیز به آن شباهت زیادی دارد و یادگیری آن دشوار است. این زبان برنامه نویسی روی ماشین مجازی جاوا اجرا میشود و در زمینههای متفاوتی در سیستمها و برنامهها مورد استفاده قرار میگیرد.
موقعیتهای شغلی زبان برنامه نویسی کلوژر کم هستند. در بخش بعدی آخرین زبان معرفی شده در مقاله «فهرست انواع زبان های برنامه نویسی» یعنی زبان برنامه نویسی اسکیم (Scheme) مورد بررسی قرار گرفته است.
زبان برنامه نویسی اسکیم
زبان برنامه نویسی اسکیم (Scheme)، یکی دیگر از زبان های تابعی مرتبط با زبان برنامه نویسی «LISP» است. این زبان برنامه نویسی در چند زمینه مختلف مانند سیستم عاملها و توسعه بازیها استفاده میشود و زبان سختی برای یادگیری به حساب میآید. نهایتاً، در بخش بعدی این مقاله به این سوال پاسخ داده میشود که چطور زبان برنامه نویسی مورد علاقه خود را انتخاب کنیم.
چطور زبان برنامه نویسی مورد علاقه خود را انتخاب کنیم؟
زبان های برنامه نویسی ابزاری برای بیان کردن هدف به صورت ساختاری هستند. توسعهدهندگان نرمافزاری همانطور که یک کارگر ساختمانی ابزاری را انتخاب میکند، زبان مورد نظر خود را برای هدفی انتخاب میکنند که در نظر دارند.
زبان های موجود در مقاله فهرست انواع زبان های برنامه نویسی، همگی دارای یک یا چند ویژگی مختلف هستند و میتوان آنها را در دستههای مختلفی قرار داد. برخی از این ویژگیها در ادامه فهرست شدهاند:
- رویهای (Procedural)
- شی گرایی (Object Oriented)
- دستوری (Imperative)
- اعلانی (Declarative)
- تابعی (Functional)
این ویژگیها و دستههای مربوط به انواع زبان های برنامه نویسی ، همراه با الزاماتی که یک وظیفه تعریف شده برای توسعه نیاز دارد، باعث پیشرفت برخی از زبانها برای رسیدن به هدف و کارایی بهتر نسبت به زبان های دیگر میشوند. فهمیدن تفاوت میان این ویژگیها، ترکیب آنها و استفاده از تجربیات گذشته، به توسعه دهندگان و برنامه نویسان کمک میکند تا بهترین ابزار و روش را برای کار خود انتخاب کنند. انتخاب زبان مناسب همراه با ترکیب علم و تجربه یک تیم توسعه، باعث تکامل زبان و کتابخانههای پشتیبان آن و موارد دیگر میشود.
بنابراین، در این مقاله سعی شد تا تعدادی از انواع زبان های برنامه نویسی موجود به صورت فهرستوار مورد بررسی قرار بگیرند و به مزایا، معایب و کاربردهای آنها پرداخته شود. اکنون در بخش پایانی این مقاله، برای آشنایی بیشتر و آموزش انواع زبان های برنامه نویسی، آن دسته از دورههای تم آف که بیشترین ارتباط را با زبان های برنامه نویسی دارند به علاقهمندان معرفی شدهاند.
جمعبندی
در این مقاله ابتدا به بررسی انواع زبان های برنامه نویسی پرداخته شد و سپس ۴۳ زبان برنامه نویسی از جهت موقعیتهای شغلی، سطح یادگیری، کاربرد و سایر موارد بررسی شدند. تعداد زبان های برنامه نویسی بالاست و اگر قصد گردآوری و توضیح همه آنها وجود داشته باشد، شاید بتوان بیش از صد نوع زبان برنامه نویسی مختلف را نام برد.
برخی از زبان های برنامه نویسی مانند پایتون پیشرفت بسیاری داشتهاند و امروزه در حوزههای مختلف کاربردهای فراوانی دارند، زبان هایی مانند جولیا در حال توسعه و پیشرفت هستند و آینده روشنی در انتظار آنها است. در مقابل، زبان هایی مانند فرترن و Ada تقریباً منسوخ شدهاند و دیگر کاربردی ندارند. در نهایت، دنیای کامپیوتر هر روز در حال تغییر است و یک برنامه نویس باید همیشه در حال مطالعه و پیشرفت باشد و احتمال رخ دادن هر اتفاقی در حوزه برنامه نویسی وجود دارد.