API مخفف application programming interface (رابط برنامهنویسی نرمافزار) واسطهای است بین یک کتابخانه با برنامههایی که از آن کتابخانه تقاضای سرویس میکنند. به صورت ساده و قابل فهم، API ها مثل function هایی هستند که در یک سرور (یا سیستم عامل) وجود دارد و یک برنامه نویس در برنامه خود میتواند آنها را فراخوانی و استفاده کند بدون اینکه به سورس و نحوه عملکرد آن دسترسی داشته باشد.
برنامهنویسی کامپیوتر از ابتدای کار تا کنون تغییرات زیادی را به خود دیده است. از شکل کلی برنامهنویسی به شکل خطی، تا ساختیافته و شیئ گرا و شیوههای دیگر که کم و بیش متداول هستند تا زبانهای برنامهنویسی متعدد و به شکلهای گوناگون که یکی پس از دیگری ایجاد شدهاند و مورد استفاده قرار گرفتند. با تغییر نیازهای امروز دنیای نرمافزار نسبت به آنچه در گذشته وجود داشته، نیاز به کاهش زمان و هزینه برای تولید یک نرمافزار بیش از پیش احساس میشود. در این مسیر روشها و ابزارهای گوناگونی نیز ابداع شدند که هر یک در جایگاه خود برای رسیدن به این هدف مورد استفاده قرار میگیرند. کامپوننتها در برنامهنویسی، ابزارهایی هستند که برای انجام فعالیتهایی خاص و پیشگیری از نوشتن کدهای اضافی مورد استفاده قرار می گیرند. اغلب امکانات موجود در کامپوننتها میتوانند توسط برنامهنویسان نیز به صورت شخصی پیادهسازی شوند ولی انجام این کار ممکن است به ماهها یا سالها زمان نیاز داشته باشد.
تون یک زبان برنامه نویسی قدرتمند سطح بالا، شئ گرا و حرفهای میباشد که در حال گسترش روزافزون در جهان است. این زبان با قابلیتهای فراوان و شگفت انگیزی که دارد تحولی در دنیای برنامه نویسی از توسعه برنامههای تحت وب تا ایجاد بازیهای رایانهای، بوجود آورده است. پایتون ابتدا در سال ۱۹۹۱ وارد دنیای برنامه نویسی شد و در سالهای اخیر توجه برنامه نویسان را به خود جلب کرده و روز به روز بر طرفداران آن افزوده میشود.
Java یک زبان برنامه نویسی شی گراست و از دسته زبان های کامپایلری-مفسری به شمار می رود. شعار این زبان برنامه نویسی “Write once , Run anywhere” بوده و به معنی “یک بار بنویس و همه جا اجرا کن” است. این شعار به این معنی است که برنامه های نوشته شده با Java مستقل از سیستم عامل بوده و می توانیم یک برنامه را با همان ظاهر در سیستم عامل های مختلف اجرا کنیم. در دوره آموزش Java به زبان ساده، سعی شده است تا مفاهیم برنامه نویسی به ساده ترین شکل ممکن بیان شود و شما به هیچ پیش نیازی برای مشاهده این دوره نیاز ندارید.
هنگامی که برای اولین بار اپل، زبان برنامهنویسی جدید خود را با نام «سوئیفت» (Swift) منتشر کرد، برنامهنویسان شگفتزده شدند. تا قبل از آن برای توسعهی اپلیکیشنهای «Mac» و «iOS» چارهای جز استفاده از «Objective C» نبود. Objective C زبانی شیگرا و قدیمی است که در سال ۱۹۸۰ منتشر شده. سوئیفت مانند هوایی تازه وارد دنیای نرمافزار شد و آن را متحول کرد.
وب فریم ورک Nuxt یا Nuxt.js یک وب فریم ورک منبع باز و رایگان است که بر اساس Vue js، Node js، Express js، Babel js و Webpack نوشته شده است. این چارچوب به عنوان فرایند فرعی برای برنامه های جهانی شناخته می شود. همچنین این چارچوب کاربران را قادر می سازد تا کاربران، محتوا یا بخش هایی از آن را داشته باشند و به طور کامل بر روی سرور پیش رندر شده و به شیوه ژنراتور های سایت ایستا کار کنند. مزیت اصلی چارچوب Nuxt.js این است که تنظیمات و راه اندازی برنامه ها را ساده کرده و به توسعه دهنده نرم افزار متصل می شود.
جاوا اسکریپت زبان برنامهنویسی پویا و مبتنی بر شی (Object-based) است که هم سمت کاربر و هم سمت سرور، برای ایجاد تعمال با صفحات وب به کار میرود. جایی که HTML و CSS ساختار اولیه و ظاهر صفحات وب را تعیین میکنند، جاوا اسکریپت نحوه عملکرد صفحات وب را کنترل میکند. جاوا اسکریپت، تجربه کاربر را از صفحه وب با تبدیل آن از یک صفحه استاتیک به یک صفحه تعاملی بهبود میبخشد. بطور خلاصه، جاوا اسکریپت به صفحات وب رفتار میبخشد.
وب اپلیکیشن های پیش رونده یا PWA اپلیکیشن های موبایلی هستند که در قالب وب ارائه می شوند. در واقع این تکنولوژی تجربه مشابه کار اپلیکیشن موبایل را بر روی وب ارائه می دهند. این اپلیکیشن ها به دلیل استفاده از رویکرد طراحی App Shell باعث می شوند هنگام استفاده احساس کار با اپلیکیشن کاملا بومی(native) منتقل می شود. از آنجایی که این نوع اپلیکیشن ها تحت وب هستند به دستگاه های خاصی محدود نمی شوند. اپلیکیشن های PWA در تمامی دستگاه ها از جمله دسکتاپ، گوشی موبایل، تبلت و … به صورت یکپارچه اجرا می شوند.
Qt ( تلفظ به شکل کیوت ) یک فریمورک برنامهنویسی برای ایجاد نرمافزارهای گرافیکی( GUI ) و خط فرمان( Console ) چندسیستمعاملی است. Qt در دو نگارش رایگان و تجاری ارائه میشود. با کمک این فریمورک میتوان نرمافزارهایی که با تغییرات اندک یا بدون تغییرات قابل اجرا روی سیستمعاملهای مختلف و از آن جمله سیستمعاملهای موبایل هستند، را طراحی و برنامهنویسی نمود. Qt با زبان C++ توسعه یافته است و به طور سنتی برنامهنویسی با این فریمورک با زبان C++ امکانپذیر است. در نگارشهای جدید این فریمورک امکان برنامهنویسی با زبان جاوااسکریپت و برنامهنویسی با برخی زبانهای دیگر مانند پایتون نیز به آن افزوده شده است.
زبان برنامه نویسی Go ( گولنگ golang ) یک زبان استاتیک تایپ، کامپایلی، طراحی شده توسط رابرت گریسمر، راب پایک و کن تامسون. زبان گو از نظر املا مشابه زبان C می باشد، اما با مزایای استفاده از ایمنی حافظه، سیستم GC (مدیریت خودکار حافظه)، تایپ ساختاری، همزمانی سطح بالا (ارتباط فرآیند های متوالی).