این مطلب به عنوان راهنمای مبتدی برای آشنایی و ورود به دنیای برنامهنویسی بکند و فرانتاند است. ما اصول هر بخش، از جمله فنآوریها و زبانهای رایج مورد استفاده را پوشش خواهیم داد و تفاوتهای بین آنها را بررسی خواهیم کرد. چه به ساخت برنامههای کاربردی وب، برنامههای تلفن همراه یا سیستمهای نرمافزاری علاقهمند باشید، درک برنامهنویسی بکند و فرانتاند برای موفقیت ضروری است. در پایان این مطلب، درک پایهای از اینکه برنامهنویسی بکند و فرانتاند چیست، تفاوت آنها چیست و اگر میخواهید بیشتر بدانید از کجا شروع کنید، خواهید داشت.
فرق بکند و فرانتاند چیست؟
Backend و Frontend به دو بخش مختلف یک برنامه نرمافزاری اشاره دارند. Backend بخشی از یک برنامه کاربردی است که بر روی سرور اجرا میشود و مسئولیت مدیریت ذخیرهسازی دادهها، منطق تجاری و سایر عملیات های پشت صحنه را بر عهده دارد. در مقابل، frontend بخشی از برنامه است که در مرورگر وب یا دستگاه تلفن همراه کاربر اجرا می شود و وظیفه نمایش رابط کاربری و امکان تعامل کاربر با برنامه را بر عهده دارد.
به عبارت دیگر، بکاند «موتور» برنامه است که وظیفه پردازش و مدیریت دادهها را بر عهده دارد، در حالی که فرانتاند بخش «رو به کاربر» برنامه است و مسئول ارائه آن دادهها به کاربر به شکلی بصری و جذاب و همچنین تعامل با او است.
آیا همهی برنامهها بکند و فرانتاند دارند؟
همه برنامهها دارای اجزای Backend و Frontend نیستند. برخی از برنامهها، مانند بازیهای ساده موبایل یا برنامههای کاربردی، ممکن است اصلاً به یک مؤلفه بکند نیاز نداشته باشند. این نوع برنامهها ممکن است فقط برای ایجاد رابط کاربری و مدیریت تعاملات کاربر به توسعه frontend نیاز داشته باشند.
با این حال، برای برنامههای پیچیدهتر مانند برنامههای کاربردی وب، پلتفرمهای رسانههای اجتماعی و وبسایتهای تجارت الکترونیک، معمولاً به توسعه Backend و Frontend نیاز است.
معرفی زبانهای برنامهنویسی بکند
برای شروع برنامهنویسی بکند، چندین زبان برنامهنویسی و فریمورک وجود دارد که میتوانید آنها را در نظر بگیرید. در اینجا چند گزینه محبوب معرفی شده است:
- PHP: PHP یک زبان برنامهنویسی سمت سرور است که معمولاً برای توسعه وب استفاده میشود. دارای تعداد زیادی فریمورک و سیستمهای مدیریت محتوا (CMS) مانند لاراول، سیمفونی و وردپرس است که آن را به گزینهای محبوب برای ساخت برنامههای تحت وب تبدیل میکند.
- Python: پایتون یک زبان همه کاره است که برای توسعه Backend هم از آن استفاده میشود. دارای تعداد زیادی کتابخانه و فریمورک است که آن را به یک انتخاب محبوب برای توسعه وب، تجزیه و تحلیل دادهها و هوش مصنوعی تبدیل میکند. برخی از فریمورکهای وب محبوب پایتون عبارتند از Flask و Django.
- Node.js: Node.js یک زبان RunTime جاوا اسکریپت است که بر روی موتور جاوا اسکریپت V8 کروم ساخته شده است. برای ساخت برنامههای شبکه مقیاسپذیر استفاده میشود و یک انتخاب محبوب برای توسعه بکند است. برخی از فریمورکهای وب محبوب Node.js عبارتند از Express و Koa.
- Java: جاوا یک زبان برنامهنویسی پرکاربرد است که معمولاً برای توسعه وب و برنامههای موبایل استفاده میشود. فریمورکهای جاوا مانند Spring و Hibernate برای توسعه وب محبوب هستند.
- ASP.NET: ASP.NET یک فریمورک برنامه کاربردی وب است که توسط مایکروسافت توسعه یافته است که برای ساخت وبسایتهای پویا، برنامههای کاربردی وب و خدمات وب استفاده میشود. اغلب با زبانهای برنامهنویسی سی شارپ یا ویژوال بیسیک استفاده میشود. ASP.NET Core یک نسخه چند پلتفرمی و منبع باز از ASP.NET است که به شما امکان میدهد برنامههای وب بسازید که می توانند روی ویندوز، لینوکس یا macOS اجرا شوند.
- Ruby: رابی یک زبان برنامهنویسی پویا و شیگرا است که معمولاً برای توسعه وب استفاده میشود. Ruby on Rails یک فریمورک وب محبوب است که از زبان Ruby استفاده میکند.
معرفی زبانهای برنامهنویسی (یا فریمورک) فرانتاند
وقتی نوبت به برنامه نویسی front-end میرسد، باید HTML، CSS و JavaScript را یاد بگیرید. HTML برای ایجاد ساختار یک صفحه وب، CSS برای استایل دادن به صفحه و جاوا اسکریپت برای افزودن تعامل به صفحه استفاده میشود. هنگامی که درک خوبی از این اصول پیدا کردید، میتوانید به فریمورکهای فرانتاند مانند React، Vue.js یا Angular بروید، که ساختن رابطهای کاربری پیچیده و برنامههای کاربردی وب تعاملی را آسانتر میکند. البته الزامی به استفاده از این فریمورکها برای پروژهها نیست و میتوانید از Bootstrap و Jquery به جای آنها استفاده کنید.
- HTML (زبان نشانهگذاری فرامتن): برای ساختاردهی محتوا در وب استفاده میشود
- CSS (Cascading Style Sheets): برای طراحی و چیدمان صفحات وب استفاده میشود
- JavaScript: یک زبان برنامهنویسی که برای افزودن تعامل و عملکرد به صفحات وب استفاده میشود
- jQuery: یک کتابخانه محبوب جاوااسکریپت برای ساده کردن دستکاری DOM و مدیریت رویداد
- React: یک فریمورک محبوب جاوااسکریپت برای ساخت رابط کاربری
- Vue.js: یک فریمورک محبوب جاوااسکریپت برای ساخت رابط کاربری
- Angular: یک فریمورک محبوب جاوااسکریپت برای ساخت رابط کاربری
- Bootstrap: یک فریمورک فرانتاند css برای ایجاد وبسایتهای واکنشگرا و مبتنی بر موبایل
فرانتاند لزوما یک وبسایت نیست و میتواند برنامه موبایل، ویندوز، لینوکس، مک و حتی برنامهای ساده در سیستم عامل یک ساعت هوشمند باشد. اما فریمورکهایی که ما معرفی کردیم اغلب فقط برای ساخت وبسایت مناسب هستند. در صورتی که مایل آشنایی بیشتر با این موارد هستید لطفا در بخش نظرات همین پست اعلام کنید.