Back end چیست؟

همان طور که در پست قبل گفته شد برنامه نویسان وب به دودسته تقسیم میشوندکه دسته دیگی از آنها دور از چشم کاربران هستند و اگر تمام سیستم را هم زیرورو کنند چیزی پیدا نخواهند کرد.

به برنامه‌های دسته دوم و کدهایی که به این ترتیب و برای پردازش صفحه‌های وب نوشته می‌شوند back end می‌گویند. بک اندها به‌طور مستقیم با سیستم در ارتباط نیستند و کدهایشان را از طریق یک سرور به مرورگر کاربران ارسال می‌کنند. درواقع این وسط یک سرور وجود دارد که برنامه نویس‌های بک اند، کدهایشان را از آن طریق روی سیستم کاربر می‌فرستند.

برنامه نویس back end کیست؟

برنامه نویس بک اند کسی است که درموارد زیر:

  • زبان توسعه وب (Web Programming Language) :

یک برنامه نویس بک اند باید با حداقل یک زبان برنامه نویسی وب مانند جاوا اسکریپت، پایتون، Ruby، .NET، PHP یا… به طور کامل آشنا باشد.

  • پایگاه داده (Data Base) و کَش (Cache) :

دانش سیستم مدیریتی پایگاه داده (DBMS) یکی از موارد ضروری برای یک توسعه دهنده بک اند می باشد. برخی از این سیستم های مدیریتی مانند mySQL، mongoDB، Oracle و Redis در دسترس برنامه نویس می باشند.

  • سرور :

کار بر روی سرورهای مختلف مانند Apache، Nginx و Microsoft lls برای برنامه نویس بک اند امری مهم به شمار می رود که در این میان Linux  می تواند شرایط بهتری نسبت به سایر رقبا مثل ویندوز یا مک برای برنامه نویسی بک اند محیا کند. (بنابراین شروع کار با لینوکس و تسلط به آن را هم باید در برنامه های خود قرار دهید.)

  • API ها (REST&SAOP):

آشنایی کامل با رابط کاربردی برنامه نویسی یا همان API برای تبدیل شدن به یک برنامه نویس بک اند امری ضروری می باشد بدین گونه که آگاهی در زمینه استفاده از وب سرویس های Saop و Rest برای آنها کافیست.

 

پیش نیاز های دیگر برای برنامه نویس Back End

  • تجربه کار با فریم ورک هایی از قبیل Django و Larval
  • توانایی در نوشتن تست واحد (Unit test)
  • آگاهی از نحوه عملکرد الگوریتم ها، ریاضیات گسسته و ساختار داده
  • داشتن دغدغه و دانش امنیتی برای هر لایه از سرور
  • آگاهی از تقاوت های پلتفرم های مختلف مانند موبایل و کامپیوتر
  • آشنایی با حداقل زبان های برنامه نویسی فرانت اند مانند HTML یا CSS
  • توانایی مدیریت بخش های محیط سرور
  • توانایی حل مسئله
  • جستجو و پرسش مداوم در منابع انگلیسی