Нұсқаулықтар

Frontend және backend: айырмашылығы неде?

Frontend — қолданбаның пайдаланушының браузерінде жұмыс істейтін бөлігі: пайдаланушы көретін және басатын беттер, түймелер, формалар және анимациялар. Backend — пайдаланушы көрмейтін серверде жұмыс істейтін бөлік: ол деректерді сақтайды және алады, бизнес ережелерін қолданады, кімнің не істеуге рұқсаты бары тексереді және төлем мен электрондық пошта сияқты басқа сервистермен байланысады. Екеуі API арқылы өзара әрекеттеседі, ал деректер базасымен бірге «full-stack» қолданбаны құрайды.

Неліктен бұл AI құралдарымен жасау кезінде маңызды

AI құралына қолданбаны сипаттағанда, сіз екі бөлікті бірден сипаттайсыз, тіпті соны байқамасаңыз да. «Клиенттер слотқа жаза алады» деген сөйлем — брондау формасы (frontend), қай слоттар бос екенін анықтайтын ережелер (backend) және брондауларды сақтайтын жер (деректер базасы).

Бөлуді білу үш практикалық пайда береді:

  1. Қауіпсіздік. Frontend-те тұрғанын пайдаланушы көріп, өзгерте алады. Ережелер мен құпиялар backend-те тұруы керек.
  2. Қатені түзету. «Түйме жауап бермейді» және «түйме жауап береді, бірақ ешнәрсе сақталмайды» — әртүрлі бөліктерге қатысты. Қай жағын көріп тұрғаныңызды айту AI-ға себебін тезірек табуға көмектеседі.
  3. Хостинг және шығын. Тек frontend-ті сайт қарапайым және арзан орналастырылады. Backend қандай да бір жерде жұмыс істеуі керек, бұл төлемге және қолданбаның бос тұрғандағы әрекетіне әсер етеді.

Күнделікті салыстыру

Мейрамхананы елестетіңіз.

Frontend — асхана залы: мәзір, үстелдер, интерьер, тапсырыс алатын даяшы. Ол клиенттерге арналған, олар бәрін көріп, қолмен ұстай алады.

Backend — аспахана мен кеңсе: аспаздар тағам дайындайды, қойма, касса, жеңілдік кімге берілетінін шешетін менеджердің ережелері. Клиенттер ол жаққа кірмейді және кіре алмауы керек.

API — екеуінің арасындағы байланыс: тапсырыстар келісілген форматта кіретін, ал тағамдар шығатын терезе. Деректер базасы — қойма және тапсырыстар журналы.

Клиент тапсырыс парағын өзгерте алады (frontend оның бақылауында), бірақ аспахана не пісіретінін және неше тұратынын әлі де өзі шешеді. Сондықтан маңызды тексерулер артта орналасуы керек.

Әр бөлік нені атқарады

FrontendBackend
Қайда жұмыс істейдіПайдаланушының құрылғысында, браузердеСіз (немесе хостинг) басқаратын серверде
Негізгі міндетіКөрсету, енгізуді жинау, басуға жауап беруДеректерді сақтау, ережелерді қолдану, рұқсаттарды бақылау, басқа сервистерді шақыру
Пайдаланушылар кодты көріп, өзгерте ала ма?Иә — ол олардың браузеріне жүктеледіЖоқ
Құпия API кілттерін сақтай ала ма?ЖоқИә, орта айнымалыларында
Жиі қолданылатын технологияларHTML, CSS, JavaScript/TypeScript, React, Vue, Svelte, TailwindNode.js, Python (FastAPI, Django), C#, Java, Go, Ruby
Не бұзылуы мүмкінМобильді құрылғыда макет бұзылады, түйме жауап бермейді, бет баяу ашыладыДеректер сақталмайды, қате деректер көрсетіледі, қателер, қауіпсіздік олқылықтары

Кейбір фреймворктар шекараны бұлыңғыр етеді. Мысалы, Next.js бір жобада браузер коды мен сервер кодын қатар ұстауға мүмкіндік береді. Идея сол күйінде қалады: сұрақ әрқашан бұл бөлік қайда жұмыс істейді? деген сұрақ.

Мысал: сабаққа жазылу

Біреу йога сабағына жазылғанда не болатынын қадам-қадаммен қарастырайық.

ҚадамҚайдаНе болады
1FrontendКесте беті жүктеліп, backend-тен осы аптаның сабақтарын сұрайды.
2BackendСабақтар мен брондауларды деректер базасынан оқиды, бос орындарды есептейді, тізімді JSON ретінде қайтарады.
3FrontendӘр сабақты уақытымен, мұғалімімен және бос орындарымен көрсетеді.
4FrontendПайдаланушы сабақты таңдап, аты мен электрондық поштасын енгізеді. Форма поштаның дұрыс екенін тексереді (бұл кеңес беру, кепілдік емес).
5Frontend → BackendAPI арқылы POST /api/bookings сұрауын жібереді.
6BackendЕнгізілгенді қайта тексереді, сабақтың толмағанын тексереді, брондауды сақтайды және құпия кілті арқылы электрондық пошта сервисіне растау хатын жіберуді сұрайды.
7Backend → Frontend«Брондалды» немесе «кешіріңіз, орын жоқ» деп жауап қайтарады.
8FrontendРастау экранын көрсетеді.

4 және 6-қадамдарды назарға алыңыз: енгізілген мәлімет екі рет тексеріледі. Frontend тексеруі бірден кері байланыс береді; нақты маңызы бар — backend тексеруі, өйткені қажет болса пайдаланушы frontend-ті толық айналып өте алады.

Жиі кездесетін терминдер

ТерминМағынасы
Client / serverClient — сұрау жіберетін браузер (немесе қолданба); server — соған жауап беретін жүйе.
UIПайдаланушы интерфейсі — экрандар мен басқару элементтері.
APIFrontend backend-тен деректер немесе әрекет сұрайтын келісілген тәсіл.
EndpointAPI-дағы нақты бір URL, мысалы /api/bookings.
Full stackFrontend + backend + деректер базасы бірге. Қараңыз: full-stack қолданба деген не.
Static siteӨз backend-і жоқ frontend; барлығына бірдей файлдар.
SPASingle-page application: жаңа беттерді жүктемей, браузерде бетті жаңартатын frontend.
Server-side rendering (SSR)Сервер бетті жібермес бұрын оның HTML-ін құрастырады, бұл жылдамдыққа және SEO-ға көмектесе алады.
Environment variablesЖұмыс уақытында backend-ке берілетін және кодтан тыс сақталатын параметрлер мен құпиялар.

Қолданбаға backend керек пе?

Егер қолданбаңыз…Backend керек пе?
Барлығына бірдей ақпарат көрсетсеЖоқ
Тек сізге хат жіберетін байланыс формасы болсаӘдетте шағын backend, немесе форма сервисі
Басқа адамдар көретін деректерді сақтасаИә
Кіру жүйесі мен жеке деректері болсаИә
Төлем қабылдасаИә — кем дегенде төлем сілтемелерін жасау және төлем webhook-терін қабылдау үшін
Құпия кілті бар ақылы AI немесе басқа API қолдансаИә, кілтті браузерден тыс ұстау үшін

Жиі кездесетін қателер мен қате түсініктер

  • Құпия кілттерді frontend-ке салу. Браузердің әзірлеушілік құралдарын ашқан кез келген адам оны көре алады. Бұл AI арқылы жасалған қолданбалардағы ең жиі кездесетін ауыр қате.
  • Ережелерді тек frontend-те қолдану. Әкімші емес пайдаланушыларға «жою» түймесін жасыру қорғаныс емес; backend сұрауды бас тартуы керек.
  • Backend тек «деректер базасы» деп ойлау. Деректер базасы деректерді сақтайды. Backend кім оқып, өзгерте алатынын және қалай екенін шешеді.
  • JavaScript білдіреді frontend деп ойлау. JavaScript және TypeScript Node.js арқылы серверлерде де жұмыс істейді.
  • Қате бөлікті кінәлау. Бет дұрыс көрінгенмен, деректер дұрыс болмаса, мәселе көбіне backend-те немесе деректер базасында болады, дизайнда емес.
  • Тым көп құру. Портфолиоға арнайы backend қажет емес. Ол шығын мен қосымша қозғалатын бөліктер қосады.

AI құралынан не сұрау керек

  • «Бұл қолданбаның қай бөлігі браузерде, қайсысы серверде жұмыс істейді?»
  • «Барлық API кілттерін backend-ке көшіріп, оларды орта айнымалыларынан оқы.»
  • «Формаларды браузерде ғана емес, серверде де тексер.»
  • «Тек әкімшілер брондауларды жоя алатынын backend-те қамтамасыз ет.»
  • «Бет дұрыс, бірақ деректер сақталмайды — сұрау үшін backend журналдарын тексер.»
  • «Бұл қарапайым маркетингтік сайт; backend қажет болмаса, оны тек frontend ретінде қалдыр.»

Mythex-тегі frontend және backend

Жаңа Mythex жобасы Vite, React, TypeScript және Tailwind frontend-інен басталады, ал қолданбаға backend қажет болғанда агент оны қосады — немесе frontend-пен бір жобада жұмыс істейтін Node, Python (FastAPI), C# немесе Java-дағы бөлек API сұрауға болады. Алдын ала қарау кезінде сайт пен API сервері арасында ауысуға болады, ал жариялау кезінде екеуі де орналастырылады; қажет болғанда деректер базасы мен файл сақтау қосылады. Құжаттарда көп сервисті қолданбалар сипатталған, веб-хостинг нұсқаулығында әр бөлік жарияланғаннан кейін қайда жұмыс істейтіні түсіндірілген, ал қолданба үлгілері full-stack мысалдарын тез көруге көмектеседі.

Сұрақтар

Frontend мен backend арасында қандай айырмашылық бар?

Frontend — қолданбаның пайдаланушының браузерінде жұмыс істейтін бөлігі: беттер, түймелер және пайдаланушы көретін формалар. Backend — пайдаланушы көрмейтін серверде жұмыс істейді; ол деректерді сақтайды, бизнес ережелерін қолданады, рұқсаттарды тексереді және басқа сервистермен байланысады.

Әрбір қолданбаға backend керек пе?

Жоқ. Маркетингтік сайтқа, портфолиоға немесе қарапайым лендингке тек frontend жеткілікті. Қолданба ортақ деректерді сақтауы, пайдаланушыларды жүйеге кіргізуі, төлем қабылдауы немесе құпия API кілттерін қолдануы керек болса, онда қандай да бір backend қажет.

HTML — frontend пе, backend пе?

Браузерде жұмыс істейтін HTML, CSS және JavaScript — frontend. JavaScript Node.js арқылы серверде де жұмыс істей алады, сол кезде ол backend коды болады. Шешуші факторы — тілі емес, кодтың қай жерде орындалатыны.

Full stack деген не?

Full stack — frontend және backend (әдетте деректер базасы да) қамтылған шешім. Full-stack қолданбада осы үш бөлік те бар; full-stack әзірлеуші барлығымен жұмыс істейді.

Mythex · Pricing · ЖИ көмегімен кез келген нәрсені жасаңыз · Сайттар мен қосымшаларға арналған үлгілер · Mythex салыстыруда · ЖИ-мен қосымша жасау сөздігі · ЖИ-мен қосымша жасауға арналған тегін құралдар · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)