2017-05-13 4 views
-3

웹 개발의 프론트 엔드는 HTML CSS와 JavaScript입니다. html은 브라우저가 렌더링하는 내용이므로 인간이 읽을 수 있습니다. CSS는 웹 사이트의 스타일을 지정하고 javascript는 프론트 엔드의 동작/대화 형 부분을위한 것입니다.메신저 백엔드가 프론트 엔드와 함께 작동하는 방법을 이해하는 데 어려움을 겪고 있습니다.

지금 내가 어디에 문제를 이해하는 것 같다 백엔드 부분입니다.

메신저를 사용하고 그들이 사용하는 프로그램은 nodeJS와 데이터베이스 mongodb입니다. 이 두 가지는 내가 배울 필요가있는 유일한 것인가? nodeJS는 정확히 무엇을합니까? 내 문법

+0

즉, 프론트 엔드는 요청을 백엔드로 보내고, 백엔드는 요청을 처리하고 응답을 프론트 엔드로 다시 보냅니다. Node + mongo는이 백엔드 기능을 구현하는 한 가지 방법입니다. 이 사이트는 튜토리얼 사이트가 아니기 때문에 더 크고 더 완전한 설명은이 사이트의 범위를 벗어납니다. 여기에 귀하의 질문은 훨씬 더 구체적이어야합니다. – Vasan

답변

0

사용자와의 브라우저와 컨트롤의 상호 작용의 프런트 엔드 디스플레이 죄송

.

백엔드는 프런트 엔드가 표시 할 HTML, CSS, 이미지 및 기타 리소스를 제공합니다.

가장 간단한 구현에서 브라우저는 웹 서버 (백엔드)에서 페이지 URL을 요청하고 웹 서버는 브라우저에 HTML 파일을 다시 보내 브라우저에 표시합니다. 해당 HTML 파일에 다른 리소스 참조 (예 : 스타일 시트, 스크립트, 이미지 등)가 포함되어 있으면 브라우저는 HTML 페이지를 구문 분석 할 때 해당 페이지를 HTML 페이지에서 찾은 다음 웹에서 해당 리소스를 요청합니다 섬기는 사람. 웹 서버는 요청 된 자원 각각을 보내 응답합니다.

이제 대부분의 웹 사이트는 단순히 정적 HTML이 아니므로 백엔드는 서버에서 파일을 읽고 브라우저로 보낼 수 있습니다. 대부분의 경우, 일종의 HTML 템플리트로 병합되어야하는 데이터가 있으며 결합 된 병합 된 HTML이 브라우저로 다시 전송됩니다. 데이터베이스를 사용할 수있는 곳입니다. 예를 들어 Google 검색을 수행하려면 검색 할 내용을 입력하고 Enter 키를 누릅니다. 브라우저는 백엔드 서버에 특정 문자 시퀀스를 검색하라는 요청을 보냅니다. 백엔드는 전송 된 정보를 분석하고 해당 색인을 참조하여 일치하는 웹 페이지 URL을 찾은 다음 해당 검색 결과의 HTML 표현을 작성하고 다시 브라우저로 보냅니다.

여기 또는 스택 오버플로에서 질문을 클릭하면 질문의 세부 정보를 볼 수 있습니다. 브라우저는 웹 서버 (백엔드)에 URL을 전송합니다. 웹 서버는 해당 URL을 파싱하여 질문이며, 데이터베이스에서 해당 질문을 조회하고, 현재의 모든 대답과 현재의 모든 주석을 가져 와서 모든 데이터를 HTML 페이지로 형식화 한 다음 다시 브라우저로 보냅니다. 브라우저는 HTML을 표시하고 사용자가 웹 페이지와 상호 작용하도록합니다 (링크, 단추 등을 클릭하십시오). 결국 사용자는 전체 프로세스를 다시 시작하는 무언가를 클릭합니다.

고급 페이지에서는 사용자가 여기에 "설명 추가"와 같은 웹 페이지의 단추를 클릭합니다. 완전히 새로운 웹 페이지를로드하는 대신 웹 페이지의 자바 스크립트는 Ajax 요청을 서버에 보내어이 텍스트를 질문 XXXX에 대한 주석으로 추가하도록 지시합니다. Ajax 요청은 브라우저 측 Javascript에서 서버로 HTTP 요청을 보내기위한 특정 API 일뿐입니다. 서버가이를 수신하면 페이지 요청 또는 다른 요청과 마찬가지로 HTTP 요청입니다. 백엔드는 적절한 데이터베이스 요청을 구성하고 해당 데이터를 백엔드 데이터베이스에 추가하므로 주석이 영구적으로되어 해당 페이지를 보는 다른 사용자가 볼 수 있습니다.

웹 서버를 코딩하는 데 사용할 수있는 다양한 백엔드 기술과 각 백엔드 기술에서 사용할 수있는 다양한 프레임 워크가 있습니다. 예를 들어 PHP, Java, Javascript, C++, C# 등으로 웹 서버를 작성할 수 있습니다. node.js는 자바 스크립트로 웹 서버를 작성하기위한 환경입니다. mongodb은 많은 웹 사이트에서 사용되는 인기있는 백엔드 데이터베이스입니다.

+0

그리고 모두 NodeJS 및 mongodb를 사용하여 수행 할 수 있습니까? 더 많은 프로그램이 필요하지 않습니까? – Joatz

+0

@Joatz - 꽤 많이. node.js에는 미리 작성된 기능을 포함하는 시스템 호출 NPM에 저장된 수천 개의 애드온 모듈이 있습니다. 예를 들어, node.js에 웹 서버를 작성하는 대부분의 사람들은 Express 모듈을 사용하여 웹 서버를 훨씬 빠르게 작성합니다. 이것들은 단순히 node.js 프로그램에 추가 할 수있는 코드 모듈입니다 (실제로 별개의 프로그램은 아닙니다). 프로덕션 환경에서는 웹 서버가 작동하고 응답하는지 확인하는 모니터링 도구를 사용하고 그렇지 않은 경우 다시 시작하십시오. 그리고 아마도 데이터베이스 등을 백업 할 것입니다 ... – jfriend00

+0

그래서 nodejs에 표현하는 것은 jquery가 javascript에 맞는지 무엇입니까? – Joatz