프론트엔드 개발자가 되기위한 여정-17

이정우·2022년 9월 22일
0

frontend-bootcamp

목록 보기
18/60

----17일차-----

밸!하~
밸로그 여러분 안녕하세요!!

오늘은 프론트엔드 개발자지만 백엔드를 이해하고싶어!
라는 주제로 포스팅을 해보도록 하겠습니다!

여러분 !
프론트엔드개발자를 준비한다고 백엔드의 기초를 모르면 될까요??
한번 생각을 해볼까요~??

여러분들이 개발을 하고있는데 아무리 코드를 봐도 에러가없는것 같은데 에러가 계속발생하고 화면에 그려지지가 않는다고 가정해봅시다 그런데 심지어 이것이 백엔드의 에러였다면은요??
그렇다면 백엔드의 에러인지도 모르고 3~4시간 고민만하겠죠??
비효율적이잖아욤
그래서 이러한 에러가있을때 한번에 알기위해서 백엔드에 대한 기초또한도 알아야 훨씬 도움이 되는거겠죠??!!

그럼 본격적으로 백엔드의 기초 시작하겠습니다!

1.서버프로그램

먼저 저희가 흔히 말하는 서버에대해서 이야기를 드리곘습니다
서버또한도 한개의 프로그램인데
서버프로그램이란: 누군가 접속을 받아주기 위해 기다려주는 프로그램
입니당!

이 서버프로그램에는 각 포트번호를 통해서 접속을 하고있는데
저희 프론트엔드에서 사용하고 있는것은 프론트엔드 서버 프로그램입니당
그리고 이 서버를 관리하는 컴퓨터를 프론트엔드 서버 컴퓨터라고 이야기를 합니다!
그래서 쉽게 프론트엔드 서버라고 이야기를 하면
프론트엔드 서버프로그램이 설치되어있는 컴퓨터를 프론트엔드 컴퓨터라고 생각하시면 됩니다!
흔히
홈페이지가 다운됬다던가 페이지가 꺼졌다라고 하는것들은 프론트엔드서버 에러라고 생각하시면 훨씬 이해가 쉬우실것입니다!

그럼 백엔드는요??
똑같습니다!
백엔드 또한도 백엔드 서버프로그램이 설치되어있는 컴퓨터를 백엔드 서버라고 합니다!
흔히 게임에서 게임서버 터졌다라고 하는것들은 백엔드 서버라고 할수있겠죠??

자 이제 서버에 대해서 간단한 기초정도가 정리가 되셨으니 이번엔!
백엔드의 꽃이죠! 바로바로

2. DATA BASE

DATA BASE입니다!!

흔히 DB라고 불리는 그것인데요
DB의 간단한 개념과 사용법에 대해서 한번 알아볼까요~~??

먼저 DB가 어떻게 작동하는지 부터 알아볼까요??

DB는 흔히 엑셀이라고 생각하시면 됩니다
하지만 차이는 DB는 누군가의 접속을 기다려야하는 24시간 켜져있는 서버프로그램이라고 생각하시면됩니다!
즉 DB라는것은 데이터를 저장하기 위한 서버프로그램이구나~ 라고생각하시면 됩니다!!

그럼 이제
DB의 종류에 대해서 알아볼까요??
크게 2종류로 나뉘어지죠??

1.sql
먼저 Sql은 표로 구성이 되어있습니다!
흔히 저희가 생각하는 엑셀과 같은표가 그려져있고
엑셀의 Sheet와 같은 Table이 있습니다
이 table은 안에 담겨있는 내용이 어떤것 인지에 따라서 달라집니당
하지만 엑셀과는 차별화된 기능이 있는데요!
바로 table을 서로합칠수가 있습니다!
join을 통해서 가지고있는 key를 통해서 같은 내용을 합칠수가 있다는거죠!
자세한 부분은 백엔드의 CRUD기초와 superkey,subkey,candidatekey등을 검색해보시면 이해가 훨씬 빠르실 겁니다!

명령어는 흔히 DML(Data Manipulaton Language)이라고 불리는데요
대표적으로
SELECT(검색),INSERT(삽입),UPDATE(갱신) ,DELETE(삭제)등이 있습니다!

종류로는
Oracle,Mysql,Mssql,Postsql
등이 있습니다!

2.noSql
이번엔는 nosql입니다
nosql의 경우에는 엑셀이 아닌 서류봉투라고 할수있겠는데요!
표로만들어진것이 아니라 여러개의 파일을 넣어서 사용한다고 생각하시면될것같습니다!

그래서 각각의 데이터를 담고있는 Document가 있고요! 그 Document들을 모아놓은 Collection이 있습니다!
즉 Collection은 sql의 table이라고 생각하시면 훨씬 편하실것 같아욤!

종류로는!
mongoDB,fireBase등이 있습니다!

그런데 이런 명령어들을 외우기 힘들잖아요??
그래서 나온것이 바로
Mapping 기술입니다!!

mapping에는 크게 두가지가있는데요!

ORM과 ODM이 있습니다!

ORM: Object Relation Mapping
관계형 데이터 베이스를 위한 맵핑
즉 Mysql과 같은 sql문을 제어할때는 이 ORM을 사용해주셔야합니다!
종류로는 어떤게 있을까요??
prisma,sequalize,Django,JPA등이 있습니다!

그럼 nosql은요?!
ODM: object Document Mapping
즉 nosql에서 사용할수있는 맵핑입니다!
이런것들을 사용하면 훨씬 코드도 단순해지고 외울필요없이 사용할수 있게됩니다!

전체적으로 정리해볼까요??

DB에는 대표적으로 2가지의 종류가있습니다
바로
SQL &NOSQL인데요!

SQl은 흔히 말하는 엑셀이었고
NOSQL은 흔히 말하는 서류봉투였습니다!

물론 백엔드 개발자가 되기위해서라면 DB에 대해서 더욱 심도있게 다루고 각각의 Key의 종류들과 이 key들이 어떻게 동작하는지 나아가 명령어(DML)와 선언문(DDL)의 차이가 무엇인지 더욱 심도있게 공부하셔야겠습니당!

하지만 프론트엔드 개발을 준비하시거나 개발자이신분들은 이정도만알고 추후 천천히 풀스택으로 나가시면 좋을것같습니다!

오늘의 포스팅은 여기까지 입니다!!

조금은 주제가 어려웠지만 얉게 들어갔기 때문에 이런게 있구나~하고 넘어가시면 됩니당!

그럼 오늘도 이만!
밸~바!

profile
주니어 프론트엔드 개발자

0개의 댓글