تفاوت بک اند و فرانت اند ازجمله مسائل اساسای درزمینه اپلیکیشننویسی اینترنت میباشد. در شرایطی که شما هم بهتازگی بهاین حوزه عشق و علاقهمند گردیدهاید یا این که قصد دارید در این مورد درگیر فعالیت گردید، احتمالاً سؤالات متعددی درباره آن دارید. طراحی سایت در مشهد دراین نوشتهیعلمی از وبلاگ پارس پک، قصد داریم بهاختصار به شما بگوییم که بک اند دولوپر و فرانت اند دولوپر چه تفاوتی باهم دارا هستند و وظایف هریک از آن ها چیست؛ پس تا نقطه پایان با ما هم پا باشید.
فرانت اند و بک اند چیست؟
اولین سؤال برای اشخاصی که بهتازگی قصد داراهستند وارد دنیای مالامالسرورمز و ولی جالب نرم افزارنویسی اینترنت شوند، این میباشد که تفاوت بک اند و فرانت اند چیست؟ پسازآن نیز سؤالهای تخصصیتری مطرح می شوند؛ از جملهً درآمد فرانت اند بیشتر میباشد یا این که بک اند؟ یا این که بک اند دشوارخیس میباشد یا این که فرانت اند؟ بدین ترتیب، اذن دهید مشاجره را از همین نقطه، یعنی رسیدگی تفاوتهای در میان فرانت اند دولوپر و بک اند دولوپر، استارت کنیم.
۱. فرانت اند چیست؟
فرض فرمائید روی قایق پارویی در اقیانوس یخزده شمالی درگیر تماشای کوه یخ بزرگی میباشید. این کوه یخ را اینترنتتارنما و خودتان را استفاده کننده وب در حیث بگیرید که درگیر بازدید از اینترنتوب سایت میباشد. قسمت فرانت اند اینترنتوب سایت به عبارتی قسمتی از کوه یخ میباشد که روی آب شناور باقیمانده و می توانید آن را مشاهده کنید.
این یعنی کل مؤلفههای مشاهدهشدنی اینترنتوب سایت، از منوها گرفته تا رنگها، دکمهها، متن ها و هیبتهایی که از آن ها برای تصویباسم در اینترنتوب سایت به کار گیری میکنید، در نصیب فرانت اند اینترنتوب سایت قرار میگیرند. مسئولیت پیاده سازی این نصیب از اینترنتوب سایت برذمه فرانت اند دولوپر میباشد. این اپنویس باذوق وسلیقه شخصی میباشد که با به کار گیری از لهجههای نرم افزارنویسی مجموع نصیبهای مشاهدهشدنی اینترنتتارنما را پیاده سازی و جذابیتهای دیداری آن را برایتان بیشتر مینماید.
بااینهم اکنون، موضوع این میباشد که نرمافزارنویس ذکر شده تنها مسئولیت کدنویسی فرانت اند را برذمه دارااست و خیر پیاده سازی گرافیکی آن را. دقیقاً همینجاست که اصطلاح دیگری درمورد اپلیکیشننویسی اینترنت مطرح می شود: طراح UI و UX. درواقع، آغاز طراح UI و UX طرح گرافیکی اینترنتوب سایت را ساختوساز مینماید و آن را درسپردن فرانت اند دولوپر قرار می دهد و آنگاه مرحله پیاده سازی Front End استارت می گردد.
۲. بک اند چیست؟
شما همچنان روی قایق در درحال حاضر نظارهکردن کوه یخ می باشید و احتمالاً می دانید که وسعت بزرگی از کوه یخ باطن آب قرار گرفته میباشد و نمیتوانید آن را مشاهده کنید. این نصیب به عبارتی بک اند اینترنتتارنما میباشد. بک اند دقیقاً چه کاری اعمال میدهد؟ هرتوشه که کاری را در اینترنتوبسایت جاری ساختن میدهید (به عنوان مثالً روی لینک و پیوند یا این که پس از واردکردن اسم کاربری و سرعبور، روی دکمه «ورود» کلیک می کنید)، دستهای از کدهای نوشتهگردیده در قسمت بک اند اینترنتوبسایت دستبهدست هم میدهند تا یک فیض به شما نشانه داده خواهد شد. این فیض ممکن میباشد گشودهشدن شیتای تازه برایتان باشد یا این که آرمدادن پیغام اشتباه بهعامل واردکردن اسم کاربری یا این که سرعبور غلط.
بهتیتر توضیح بیشتر، موردنیاز میباشد بدانید که هر کاری در اینترنتتارنما ایفا میدهید، دربنا شده در اکنون صادر کردن درخواست (Request) بهسمت سرور یا این که هاستی میباشید که از اینترنتوبسایت میزبانی مینماید. براین اساس، اولین Request شما دقیقاً هنگامی بهسمت سرور ارسال میگردد که نشانی اینترنتوبسایت را در مرورگر خویش وارد یا این که روی لینک و پیوند اینترنتوب سایت کلیک کردهاید.
وظیفه سرور هم این میباشد که به همه Requestهای ارسالی شما جواب (Response) دهد. کلیه این امور با کدهای بک اند ایفا میشود؛ ازاینرو، وظیفه بک اند دولوپر هم کدنویسی همین نصیب با به کارگیری از لهجههای اپنویسی متعدد میباشد. بهطورخلاصه، میقدرت بیان کرد که مسئولیت رابطه با سرور و مقر داده اینترنتتارنما، برذمه نصیب بک اند اینترنتتارنما میباشد.
احتمالاً تا الآن به ندرت تفاوت بک اند و فرانت اند برایتان معلوم گردیده است؛ البته هنوزهم نکاتی برای یادگیری وجود داراست؛ برای مثالً اینکه گویشهای اپلیکیشننویسی فرانت اند و بک اند کداماند؟ درادامه این مقاله از وبلاگ پارس پک، به گویشهای اپلیکیشننویسی هر کدام از آنان اشاره خواهیم کرد.
لهجه های نرم افزار نویسی بک اند
نرمافزارنویسی بک اند چه کاری اجرا میدهد؟
گویش های نرمافزار نویسی فرانت اند و بک اند
در نصیب قبل با تفاوت بک اند و فرانت اند و وظایف فرانت اند و بک اند دولوپر آشنا شدید. اکنون عالی میباشد اندکی هم با گویشهای نرم افزارنویسی پر اسم و رسم این دو حوزه آشنا گردید. باایناکنون، قبلیازآن بایستی بدانید که نرم افزارنویسی، خصوصاً اپنویسی اینترنت، تماماً پویاست. این یعنی گویشهای اپنویسی و کادرورکها و کتابخانههای زیادی وجود داراهستند که درحالتی کهچه درظاهر تمامی یک عمل را جاری ساختن می دهند، ازلحاظ ساختار و تکنولوژی بسیار باهم متعدداند. بههمینعامل، اینترنت دولوپر احتمالاً با گویشهای زیادی شغل کرده یا این که دستکم با آنان آشناست.
۱. لهجه های نرم افزار نویسی فرانت اند
ازپاراگراف لهجههای اپنویسی و لهجههای نمادگذاری و قابورکها و کتابخانههایی که فرانت اند دولوپر می بایست بر آن ها مسلط باشد، میاقتدار بهاینها اشاره نمود:
HTML
CSS
JavaScript
Vue.JS
AngularJS
React.JS
jQuery
Sass