> 웹 프론트엔드 > 프런트엔드 Q&A > 프런트엔드와 백엔드 분리란 무엇입니까?

프런트엔드와 백엔드 분리란 무엇입니까?

青灯夜游
풀어 주다: 2020-08-25 11:05:30
원래의
8772명이 탐색했습니다.

프론트엔드와 백엔드 분리는 데이터 연산과 표시를 분리하는 것입니다. 프런트 엔드는 데이터 표시에 중점을 두고 텍스트, 그림 또는 아이콘을 통해 데이터를 직관적으로 표시합니다. 프런트엔드는 백엔드로 데이터를 보내고, 백엔드는 데이터를 수정합니다.

프런트엔드와 백엔드 분리란 무엇입니까?

【관련 학습 추천: 프런트엔드 동영상 튜토리얼

웹사이트를 개발하는 과정에서 프런트엔드와 백엔드를 구분하는 선에 대해 서로 다른 의견이 있는 것 같습니다. 프런트엔드와 백엔드 분리가 무엇인지 인터넷에서 검색해 보면 이에 대한 정보가 많고 설명이 불분명합니다. 처음부터 프론트엔드와 백엔드라는 개념이 전혀 없었는데 그러다보니 얽히게 됐어요.

전통적인 분리 방법

프론트엔드와 백엔드를 언급할 때 기본적으로 가장 먼저 나타나는 차이점은 다음과 같습니다. 백엔드는 데이터베이스와 서버를 다루고, 프론트엔드는 검색을 다룹니다. 장치를 다룹니다. 아무 문제 없을 것 같고 다들 그렇게 생각하는 것 같아요. 물론, 여기에는 아무런 문제가 없습니다. 우리는 항상 브라우저를 코드의 두 부분을 분리하는 경계로만 사용한다고 생각했습니다. 그러나 프런트엔드와 백엔드 분리의 원래 의도는 프런트엔드와 프런트엔드 개발자의 책임을 분리하는 동시에 개발 모델의 문제를 해결하는 것입니다. 하지만 이전에도 지금도 그 책임이 명확하지 않은 것 같습니다. 프런트 엔드가 브라우저를 처리하지만 브라우저가 최종적으로 얻는 페이지는 서버가 템플릿을 통해 생성한 임시 정적 페이지일 뿐입니다. 따라서 백엔드는 템플릿을 처리해야 하기 때문에 실제로 관련됩니다. 물론 일반적으로 두 가지 전통적인 개발 협업 모델이 있습니다.

첫 번째는 프런트 엔드가 먼저 정적 페이지를 작성하고 작성한 후 백 엔드가 템플릿을 설정하도록 하는 것입니다. 정적 페이지는 로컬에서 개발할 수 있으며 비즈니스 로직을 고려할 필요가 없습니다. 보기만 구현하면 됩니다. 단점은 백엔드 템플릿도 필요하며 이러한 프런트엔드 코드는 오류를 방지하기 위해 백엔드에서 찾아봐야 한다는 것입니다.

또 다른 협업 모드는 프런트엔드가 템플릿을 직접 작성하는 것입니다. 문제는 프런트엔드 작성 프로세스가 백엔드 환경에 크게 의존한다는 것입니다. 프론트엔드는 라이브로 거의 할 수 없습니다.

분명히 두 방법 모두 문제점이 많아 보이지만, 적어도 이것은 지금까지 대부분의 회사에서 채택하고 있는 모델입니다. 이들은 프런트엔드의 논리적인 색상을 경시하면서 프런트엔드와 프런트엔드의 개발을 물리적 계층과 구별합니다. 프런트 엔드가 하는 일은 페이지의 정적 버전을 구현하는 것이므로 대부분의 회사에서는 프런트 엔드 엔지니어에게 일자리를 찾습니다. 기업이 채용할 때 프런트엔드 엔지니어에 대한 현재 요구 사항을 살펴보면 기본 페이지 제작 기술 외에도 추가적인 디자인 책임도 있습니다. 예를 들어 백엔드 프로그래밍 언어 NodeJ, PHP 또는 Java를 하나 이상 알고 있어야 합니다.

이때 저희는 원래 프론트엔드와 백엔드를 분리한 줄 알았는데, 템플릿이라는 민망한 문제로 인해 프론트엔드와 백엔드 엔지니어분들이 정말 고생을 많이 하셨습니다. 현재로서는 jsp나 php에서 html을 직접 작성하는 경우는 거의 없습니다. 앞부분과 뒷부분의 분리가 궤도에 있습니다. 그래서 누가 더 많이 차지하고 누가 덜 점유하는지 구분하는 방법은 각 회사의 기술 수준에 따라 다릅니다. 프런트엔드 개발 엔지니어가 대단하다면 그는 프런트엔드에서 mvc와 mvvm만 생각합니다. 백엔드가 훌륭하다면 이 프로토타입을 백엔드에 제공하고 나머지는 걱정하지 않아도 된다고 생각합니다.

전통적인 개발 방식

이전의 PHP 코드는 html 코드로 작성되었습니다. 여기서는 순수 php 파일과 html 파일이 분리되어 있지 않으며 대략적으로 php와 html을 의미합니다. 나는 당신을 가지고 있습니다.

하지만 개발 중에 많은 문제에 직면했습니다. 프론트엔드(html, css, js) 엔지니어는 PHP 코드를 읽지 못할 수도 있고 PHP 엔지니어도 그렇지 않습니다. CSS 내용에 익숙하므로 나중에 사람들이 코드를 분리하는 방법을 생각해 보세요. 이렇게 하면 각자의 분야에서 더 나은 성능을 발휘할 수 있지만, 어느 정도의 효율성은 있지만 어떤 관점에서는 개발자에게 친숙합니다.

전후 End-to-End 분리는 인터넷에서 말하는 것만큼 복잡하지 않습니다.

1.먼저 모든 프로그램은 데이터를 기반으로 한다는 점을 알아야 합니다. 데이터가 없는 프로그램은 프로그램의 추가, 삭제, 수정, 확인이 실질적인 의미가 없습니다.

2.프론트엔드와 백엔드 분리는 데이터 연산과 표시를 분리하는 것입니다. 프런트 엔드는 데이터 표시에 중점을 두고 텍스트, 그림 또는 아이콘을 통해 데이터를 직관적으로 표시합니다. 백엔드는 데이터 작업에 중점을 둡니다. 프런트엔드는 백엔드로 데이터를 보내고, 백엔드는 데이터를 수정합니다.

3.백엔드는 일반적으로 java, c# 및 기타 언어를 사용합니다. 현재 노드는 JavaScript에 속하며 여기서 언어를 크랙하는 것도 의미가 없습니다. 백엔드는 데이터베이스에 연결하고 데이터를 작업하는 데 사용됩니다.

4.백엔드는 프런트엔드가 백엔드의 데이터 작업을 트리거하기 위해 호출할 수 있는 인터페이스를 제공합니다.

기본 원칙은 언어가 정확하지 않을 수 있지만 생각은 정확하다는 것입니다.

그래서 웹사이트 개발의 핵심은 기본적으로:

html + CSS: 페이지 표시

javascript + ajax(브라우저의 일부이며 javascript를 통해 호출할 수 있음): 페이지 상호 작용, 논리 처리

일반적인 개발 프레임워크 선택:

간단한 웹사이트: jquery + bootstrap

백엔드 관리 시스템:angularjs + jquery + bootstrap + webpack

복잡한 제품: React + redux + webpack

위 내용은 프런트엔드와 백엔드 분리란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿