on
백엔드, 백엔드 사용 개발 언어
백엔드, 백엔드 사용 개발 언어
만약에 나에게 소파가 필요하여 어떤 쇼핑몰 웹사이트를 방문해 사고 싶은 특정 디자인의 소파를 검색해본다고 가정해보자. 나는 현재 혼자 살고 있는 1인 가구이고 살고 있는 집의 거실의 크기가 크지 않아 사이즈가 작고 아담한 1인용 소파를 구매하고자 한다.
쇼핑몰 웹사이트의 검색 입력창에 '1인용 소파'를 입력하면 웹 애플리케이션(소프트웨어)은 데이터베이스에 저장되어 있는 모든 제품 데이터를 조회하여 이중 내가 요청한 소파 목록으로 브라우저에 표현하게 된다. 이때 검색 입력창과 소파 목록이 프론트엔드라면 데이터베이스가 일종의 백엔드라고 할 수 있다.
백엔드(Backend)
사용자가 보지 않는 이면의 작업을 담당하고 있는 백엔드는 데이터를 사용자 장치 외부에서 관리하는 것으로 사용자가 취한 액션이 작성된 코드를 통해 백엔드로 전달되고 이를 분석해 응답을 생성하여 프론트엔드로 보내는 역할을 수행한다. 프론트엔드와 백엔드는 서로 Http 요청을 통해 서로 통신하게 되며 프론트엔드는 입력된 데이터를 백엔드로 보내고 백엔드는 해당 데이터를 다시 검증하고 일부 데이터베이스에 이를 저장할 수 있다.
백엔드 개발 사용 언어
Python : Python(파이썬)은 널리 사용되고 있는 백엔드 개발 언어. 광범위한 표준 라이브러리를 가지고 있으 유지 관리에 용이하다.
Python(파이썬)은 널리 사용되고 있는 백엔드 개발 언어. 광범위한 표준 라이브러리를 가지고 있으 유지 관리에 용이하다. PHP : 백엔드 개발에서 널리 사용되는 오픈 소스 언어로 그 기능에는 보안, 플랫폼 간 호환성, 객체 지향 프로그래밍 기능 및 데이터베이스와의 통합이 포함된다.
백엔드 개발에서 널리 사용되는 오픈 소스 언어로 그 기능에는 보안, 플랫폼 간 호환성, 객체 지향 프로그래밍 기능 및 데이터베이스와의 통합이 포함된다. Java : 안드로이드 및 데스크탑 애플리케이션 구축에 널리 사용되고 있는 언어.
안드로이드 및 데스크탑 애플리케이션 구축에 널리 사용되고 있는 언어. Ruby: 간결함과 생산성을 강조한 동적인 오픈 소스 프로그래밍 언어.
백엔드 프레임워크
Django : 장고는 내장 플러그인과 함께 제공되는 고급 웹 프레임워크로 대규모 데이터 기반 대화형 웹 응용 프로그램에 가장 적합하며 사용자 정의 기능이 포함된다.
내장 플러그인과 함께 제공되는 고급 웹 프레임워크로 대규모 데이터 기반 대화형 웹 응용 프로그램에 가장 적합하며 사용자 정의 기능이 포함된다. Flask : 플라스크( Flask)는 파이썬 언어를 기반으로 하는 마이크로 프레임워크로 라이브러리나 도구가 필요하지 않아 소규모 프로젝트에 적합하며 통합을 통해 작업을 확장할 수도 있다.
Flask)는 파이썬 언어를 기반으로 하는 마이크로 프레임워크로 라이브러리나 도구가 필요하지 않아 소규모 프로젝트에 적합하며 통합을 통해 작업을 확장할 수도 있다. Ruby on Rails : Ruby on Rails는 Ruby 언어로 작성된 웹 애플리케이션 프레임워크로 완벽한 데이터 테이블 형성 및 마이그레이션 개발에 사용되며 쉬운 컴파일 및 테스트를 할 수 있다.
데이터베이스 ? 서버?
데이터베이스(DataBase, DB)란 데이터를 쉽게 검색, 구성, 편집, 저장할 수 있는 구조로 웹사이트 콘텐츠를 저장하고 있는 저장소 또는 데이터의 집합을 말하며 서버(Server)란 이러한 데이터베이스를 실행하는 원격 컴퓨터라고 말할 수 있다.
웹서버? 와스(WAS)?
웹브라우저로부터 HTTP요청을 받아서 정적인 콘텐츠(html, css, 이미지 등)를 제공하는 소프트웨어 또는 그 웹서버가 설치되어 있는 컴퓨터를 웹서버(Web Sever)라고 한다. 웹서버는 정적인 콘텐츠를 제공하고 동적인 콘텐츠를 제공하기 위해 중간에서 클라이언틔 요청을 WAS에 보내거나 WAS가 처리한 결과를 클라이언트에 전달한다.
반면 데이터의 조회나 다양한 로직처리를 요구하는 동적인 콘텐츠를 재공하기 위해 만들어진 시스템을 WAS(Web Application Server)라고 한다.
from http://slowmood.tistory.com/36 by ccl(A) rewrite - 2021-12-05 23:01:08