SQL

Frontend와 Backend란?

Bordercolli 2023. 8. 14. 14:27
728x90

Html이란?

Hyper text markup language(하이퍼텍스트 마크업 언어)

하이퍼텍스트는 하이퍼링크처럼 참조(하이퍼링크)를 통해서 한 문서에서 다른 문서로 즉시 접근이 가능하도록 하는 텍스트를 의미한다.

마크업 언어는 문서의 구조를 표현하는 역할을 한다. 예를 들어서 "이것은 제목이다. ", "이것은 타이틀이다." 처럼 마크업언어도 있고 마크업 다운 언어도 있다.

 

사용법: <html> </html>

 

※ 쉽게 말해, 웹을 만들기 위한 가장 기초적인 언어 

HTML은 프로그래밍 언어는 아니다????????

 

HTML은 문서의 골격이다. PHP도 프로그래밍 언어인데 왜???

 

프로그래밍 언어와 마크업 언어의 차이점 

프로그래밍 언어의 정의부터 살펴보면 문제를 해결하기 위해 컴퓨터에게 주어지는 처리방법/ 순서를 정해주는 명령문을 작성하는 언어지만 마크업 언어는 구조를 정하는 언어를 말한다. 

즉 컴퓨터가 요리를 할 수 있다면 요리 재료와 요리 방법을 설명해주는 요리주문서를 말하지만 마크업 언어는 ....

마크업/ 마크다운 언어의 차이점은 ???

우리가 흔히 사용하는 노션은 마크다운을 사용한다.

 

CSS(Cascading Style Sheet)

Cascading이란 ? 계단식, 위에서 아래로 흐르는 것을 의미하며

Style sheet는 글꼴의 크기, 모양, 컬러, 문단 설정 등 미리 정의해 스타일로 만들었다가 웹 문서의 본문에서 그 스타일을 참조하여 사용하도록 하는 기능 

우리는 방금 html로 뼈대만 잡았는데, 누군가 접속해서 css로 살을 덧붙혀서 예쁘게 만드는 것 

 

사용법: <style> </style>

 

* 클론코딩: 홈페이지를 똑같히 만드는 것

 

Javascript

자바와 연관이 있어?

1990년대에 인기가 있던 java의 명성에 힘입기 위해서 이름을 따 온 것일뿐 연관성은 없다.

동적언어 javascript는 HTML, CSS로 만들어진 정적인 페이지를 동적으로 만들어주는 언어이다. 이는 근육/ 액션에 비유되기도 한다.

 

사용법: <script> </script>

ex) window.alert('환영합니다!');

 

그렇다면 프론트앤드 개발자는 이 세 가지만 알면 되는 것인가??

정답은 x

가고 싶은 분야 정리

백앤드는 로그인이 된다거나, 사람들이 올린 사진들을 저장하거나 이런 것들을 할 수 있는 공간들을 말한다.

 

Python

history: 1991 귀도 반 로섬이 크리스마스에 발표한 고급 프로그래밍 언어

 

고급 프로그래밍 언어란

내가 의도한 바를 정확하고 효율적으로 기계가 수행할 수 있도록 하는 것을 말한다. 만약에 컴퓨터가 요리사라면 어떤 재료 어떤 재료를 준비하고 그 재료를 어떻게 요리해서 우리가 먹을 음식으로 만들 수 있는 설명서와 같은 역할

 

저급 프로그래밍 언어란?

컴퓨터가 이해하기 쉽게 작성된 프로그래밍 언어로 일반저긍로 기계어 / 어셈블리어를 일컫는다. 실행속도가 매우 빠르지만, 배우기가 어렵고 유지보수가 힘든 것이 단점이다. 현재는 특수한 경우가 아니면 사용되지 않음.

 

컴파일러 언어와 인터프리터 언어

컴파일러 언어

c같은 언어들로 코드 전체를 기계어로 변환하여 실행하는 언어를 말한다.

컴파일러 언어는 역사가 긴 만큼 좀 더 안정적이다.

그리고 통째로 기계어로 변환했기 때문에 기계에게 더 친숙하다.

그래서 속도가 훨씬 더 빠르다.

인터프리터 언어

같은 경우는 소스 코드 한 줄 단위로 변환하고 실행하는 언어로 좀 더 쉽고 빠르게 개발이 가능하다. 

한 줄 읽고 한 줄 실행하기 때문에 다른 컴파일러 언어보다 속도감 있게 개발할 수 있다. (다만, 실행속도가 빠르지 않다.)

 

-> 즉,  컴파일러 언어는 개발 속도가 빠르고, 인터프리터 언어는 개발 속도가 빠름!!!

 

그래서 간단한 게임은 파이썬이 가능한데, 3D게임 같은 경우에는 파이썬으로 만들 경우 효율이 떨어진다.

 

Python으로 무엇을 할 수 있는가?

GUI프로그래밍 계산기와 같은 소프트웨어 구현 가능
웹 프로그래밍  Django와 flusk를 이용해서 빠른 웹 서비스를 만들 수 있다.
ex) 인스타그램이 Django를 사용하면서 유명해진 언어
시스템 유틸리티 제작  
IoT 라즈베리파이 이용
데이터 분석, 인공지능  
Game 간단한 게임 제작 가능 

그렇다면 백앤드 개발자란 무엇인가??

프론트앤드는 사용자에게 보여지는 화면을 구성하고 백앤드는 사용자가 로그인을 할 수 있게 하거나 사용자가 사진을 저장하게 하거나 사용자가 원하는 데이터를 검색할 수 있게 해주는 분야이다.

백앤드가 갖춰야할 소양은 예를 들어서 백앤드 개발자라고 한다면 Django나 flask, cloud사용법, ubuntu, centos, 버전 관리 깃헙 등등이 있는데, 어떤 것을 공부하냐는 내가 가고싶은 기업의 채용공고를 본 다음에 그 채용공고에서 어떤 기술스택을 원하는 지를 먼저 listup해보는 것이 중요하다.

 

'SQL' 카테고리의 다른 글

AS, 산술연산  (0) 2023.08.14
SELECT, DISTINCT, ORDER BY  (0) 2023.08.14
PHP + MySQL 서버 세팅으로 웹 페이지 만들기 (오류로 잠시 중단)  (1) 2023.08.14
MySQL 환경설정(GroomIDE)  (0) 2023.08.09
데이터베이스 이론  (0) 2023.08.09