Full stack چیست و به چه کسی فول استک  می گویند

در این مقاله ما قصد داریم شما را با مفهوم بسیار مهم فول استک در دنیای برنامه نویسی آشنا کنیم 
ما برای این  که درک درستی  از Full stack داشته باشیم باید ابتدا با دو ممفهوم مهم Back-end و Front-end آشنا شویم و چه برنامه نویسانی در این  دو دسته بندی قرار میگیرند:  

برنامه نویس Front-End به چه کسی گفته میشود

در زمان طراحی یک وبسایت افراد مختلفی با مهارت های متفاوت در یک پروژه مشارکت دارند افرادی چون گرافیست سایت، Front-End و Back-end در توسعه یک وب سایت باهم همکاری می کنند در وهله ی اول ما شما را با Front-End آشنا می کنیم و بررسی می کنیم که این نوع از برنامه نویسان چه مهارت  هایی دارند و یا باید داشته باشند. 
Front-End به برنامه نویس هایی گفته میشود که وظیفه  طراحی و پیاده سازی ظاهر یک وب سایت  را بر عهده  دارد. 
برنامه نویسان فرانت-اند باید با مهارت هایی مانند JavaScript ،CSS ،Html ،UX-UI  تسلط داشته باشند و با نحوه ی پیاده سازی آن مشکلی نداشته باشند. 

برنامه نویس Back-End

حال به بررسی Back-End می پردازیم  به برنامه نویسانی  که وظیفه  کد نویسی سمت سرور را بر عهده دارند. یا به زبان ساده تر وظیفه طراحی منطق یک وب سایت را بر عهده دارند برنامه نویسان Back-End که به آن ها برنامه نویسان سمت سرور نیز گفته می شود،باید با مهارت هایی چون تسلط حداقل به یک زبان سمت سرور  مانند زبان های برنامه نویسی مثل C# ،Php ،python  و زبان های دیگری از این قبیل آشنایی داشته باشند،  مهارتت های دیگر  برنامه نویس های سمت سرور تسلط   به مفاهیم پایگاه داده و یا database  و  مفاهیم  شبکه و هاست  می باشد.

برای درک بهتر مفهوم Front-End و Back-end به این مثال توجه کنید:

قطعا تا به حال با  وب سایت هایی  که یک فرم ورود دارن مواجعه شده اید وظیفه یک Front-End این است که ظاهر این فرم را که کاربر با آن مواجه میشود را طراحی  کنند مانند این که دکمه ارسال کجا قرار بگیرد یا رنگ و سایز فونت چقدر باشد و مسائلی از این  قبیل اما از زمانی که کاربر دکمه ارسال را می زند کار یک Back-end شروع می شود در ابتدا با دریافت  اطلاعات از سمت  کلاینت بررسی میکند که آیا کاربری با  نام کاربری  ارسال شده وجود دارد یا خیر و در صورت وجود اطلاعات مربوطه بررسی بعدی جهت این که رمز وارد شده با رمز  کاربر که از قبل در دیتابیس وجود دارد تطابق دارد یا خیر  و نتیجه بررسی را  به سمت کلاینت (یا Front-end) باز میگردانند.

چگونه یک فراند کار فول استک باشیم؟ | آشنایی با مفهوم full-stack

حال به بررسی موضوع اصلی این  مقاله یعنی Full Stack می پردازیم 

به برنامه نویس های که تمامی مهارتهای Front-End و Back-End آشنا باشد و بتواند یک رابط گرافیک  مناسب طراحی و پیاده سازی  کند و همچنین  بتوانند بخش منطق  و سرور  وب سایت  را نیز  پیاده سازی کنند به این  برنامه نویس  Full stack Developer گفته می شود البته  توجه داشته باشید فقط به برنامه نویس که  تسلط کامل به هردو  بخش Front-end و Back-end داشته باشند بگوییم Full stack شاید درست نباشد  چرا  که هر کدام از این بخش های به سال ها  کار و مطالعه نیاز دارد که یک برنامه نویس  بتواند به آن تسلط پیدا کنند و اگر نگیم غیر ممکن است ولی میتوان گفت تعداد این افراد اندک هستن پس تعریف درست این طور است که افرادی که آشنایی  مناسب  به  مفاهیم  هر دوبخش  را دارند و توانایی پیاده سازی کامل یک وب سایت از بخش طراحی و ظاهر تا بخش منطق یا سرور را داشته باشند فول استک  گفته می شود.

"برای کسب اطلاعات بیشتر می توانید مقاله ی تفاوت بین طراح وب و توسعه دهنده وب را مطالعه فرمایید."

مسیر یک فول استک

بخش  Fron-End 

  • یاد گیری Html
  • یادگیری css 
  • آشنا  حداقل به یک  فرم ورک CSS مانند Tailwind ،Bootstrap
  • یاد گیری  جاوا اسکریپت 
  • یادگیری  حداقل یک  فرم ورک یا کتابخانه جاوا اسکریپت  مانند React ،Vue ،Angular

بخش  Back-End

  • یادگیری  یک زبان برنامه نویس سمت سرور  مانند  js ،C# ،Php ،Python 
  • یادگیری  مفاهیم  دیتا بیس sql ،MySql ،Mongodb و...
  • یادگیری و آشنایی با مفاهیم سرور  و وب سرور ها iis ،Apache
  • یادگیری  به مفاهیم  معماری  و دیزاین پترن
  • یادگیری  مفاهیم Api