برنامه نویسی بکاند (Backend) یا توسعه کاربردهای سمت سرور ، حوزهای در توسعه وب است که بر نحوه عملکرد یک وب سایت یا وب اپلیکیشن تمرکز دارد. بکاند به آن چیزی گفته میشود که در پشت صحنه اتفاق میافتد. درست مثل زمانی که یک سرآشپز رستوران و همکاران او در آشپزخانه تمام سفارشها را در حالی آماده میکنند که مشتریان آنها را نمیبینند و در سالن غذاخوری رستوران (فرانتاند) منتظر میمانند. برنامه نویسان بکاند کدهایی را مینویسند که مربوط به برقراری ارتباط بین «مرورگر وب» با «پایگاه داده و سرورها» هستند. در برنامه نویسی سمت سرور ، کدهایی تولید میشوند که کارکردها و منطق یک وب اپلیکیشن را تعیین میکنند. فناوری که در بکاند پیادهسازی میشود، هرگز به طور مستقیم در معرض دید کاربران قرار ندارد.
بکاند یک وب سایت یا وب اپلیکیشن شامل منطق اصلی برنامه، پایگاه دادهها، همپیوندی، APIها و سایر فرآیندهای بکاند است. سمت سرور یا همان بکاند یک وب سایت یا وب اپلیکیشن به طور دائم در پسزمینه در حال اجرا است. به واسطه بکاند، امکان پیادهسازی کارکردها و قابلیتهایی درست مثل یک اپلیکیشن دسکتاپ فراهم میشود. نقش اساسی یک توسعه دهنده بکاند، حصول اطمینان از این مسئله است که کاربران نهایی بتوانند خدمات درخواستی خود را بدون نقص و در سریعترین زمان ممکن دریافت کنند. به همین دلیل، برنامه نویسی سمت سرور نیاز به تسلط و دانش برنامه نویسی در سطوح پیشرفته دارد.
یک توسعه دهنده بکاند چه کارهایی انجام میدهد؟
برنامه نویسان بکاند نقش حیاتی در تیمهای توسعه وب ایفا میکنند. آنها اطمینان حاصل میکنند که دادهها و خدمات درخواست شده توسط نرمافزار فرانتاند به درستی و در زمان معقول تحویل داده شوند. یک توسعه دهنده بکاند فناوریهایی را میسازد و نگهداری میکند که موجودیت سمت کاربر یک وب سایت یا وب اپلیکیشن به آنها وابسته است. بکاند ترکیبی از یک پایگاه داده و نرمافزارهایی است که از طریق یک زبان برنامه نویسی سمت سرور توسعه داده میشود. این پایگاه دادهها و نرمافزارها روی وب سرورها، سرورهای مبتنی بر فناوری ابری یا ترکیبی از این دو بارگذاری و اجرا میشوند.
برای برقراری ساز و کارهای ارتباط سرور، اپلیکیشن و پایگاه داده، برنامه نویسان بکاند از زبانهای برنامه نویسی و ابزارهای مختلفی استفاده میکنند. زبانهایی مثل PHP، روبی، پایتون، جاوا و داتنت (#C) برای تولید نرمافزار (سمت بکاند وب اپلیکیشن) و همچنین ابزارهایی مثل MySQL، اوراکل و SQL Server برای جستجو، ذخیرهسازی یا تغییر دادهها و ارائه آنها به کاربر در کدهای فرانتاند مورد استفاده قرار میگیرند. پس از درک نیازمندیهای یک پروژه، توسعه دهندگان بکاند موثرترین و بهینهترین راهکارها را برای تبدیل کردن و بازگرداندن دادهها به فرانتاند برای تعامل با کاربر پیادهسازی میکنند. از جمله مواردی که تعامل کاربر با آنها نیازمند فراهمسازی بسترهای لازم در بکاند است، میتوان به پر کردن یک فُرم، ایجاد حساب کاربری، خرید آنلاین و سایر موارد اشاره کرد.
مسئولیتهای یک برنامه نویس بک اند شامل چه مواردی است؟
- ایجاد پایگاه داده، یکپارچهسازی و مدیریت آن
- کار با فریمورکهای بکاند برای ساخت نرمافزارهای سمت سرور
- کار با فناوریهای مرتبط با وب سرورها
- انضمام فناوریهای رایانش ابری
- کار با زبانهای برنامه نویسی سمت سرور
- سیستم عاملها
- توسعه سیستمهای مدیریت محتوا، استقرار و نگهداری آنها
- انضمام API
- تنظیمات امنیتی و جلوگیری از حملات هکرها
- ارائه گزارشها، تجزیه و تحلیل و آمار
- به کارگیری فناوریهای پشتیبانگیری و بازیابی برای وب سایتها و پایگاه داده