코딩용어

2022. 12. 7. 02:46배울수록 연봉은 늘어간다.

728x90

배우는 순서

  1. 컴퓨터와 인터넷 : "http 보안 설정 됐어요?"
  2. 웹서비스 동작방식 : "서버가 죽었네요"
  3. 서버 - 클라이언트 통신 : "저희가 API 열어드릴께요"
  4. 개발 언어 , 프레임워크 : "요새는 리액트로 개발해요"
  5. 아키텍쳐/DB : "DB 뭐 쓰세요?"
  6. 협업 : "git에 커밋했습니다."

1. 컴퓨터와 인터넷

운영체제 : 사람의 언어를 기계어로 바꾸어 줍니다.

운영체제는 안드로이드 , ios , 윈도우 , 리눅스가 있는데 리눅스는 오픈소스 즉 무료라는 뜻입니다.

회사에서 보통 서버 컴퓨터가 있다면 리눅스를 사용하는 구나 하고 생각하면됩니다.

 

코딩은 OS 직접적인 명령을 내리는게 코딩입니다.

즉 컴퓨터에 내릴 수 있는 모든 명령어라고 생각하면 됩니다.

코드로 명령어를 내리니깐 코딩이라고 이야기를 합니다.

그럼 이 코딩을 어떤말로 하느냐?

중국어냐 이탈리어냐 프랑스어냐 

이게 바로 프로그래밍 언어라는 겁니다.

가끔 어떤 프로그래밍 언어가 좋은거냐라는 말이 있는데

대부분 프로그래밍 언어는 못하는게 아니라 특성이 다르다고 보시면 됩니다.

중국어로도 밥을 먹으라고 할수 있고 프랑스어로도 밥먹으라고 할 수 있습니다.

각 언어마다 특성이 다 다르다고 이해하시면 됩니다.

그래서 각 언어들이 좋고 나쁨이 아니라 언제 어떻게 쓰는게 좋은 것인지 상황적으로 판단을 하시면 됩니다.

 

요즘 많이 배우는 파이썬의 경우 문법이 직관적이고 

라이브러리 라고 하는 남들이 만들어 놓은 코드가 엄청 잘되어 있는 것으로 유명합니다.

 

이제 컴퓨터 얘기를 해봅시다.

컴퓨터끼리 소통을 하고 싶어요. 

그럼 무엇이 필요할까요?

그게 바로 인터넷입니다.

하지만 컴퓨터 끼리 소통을 하려면 무수히 많은 규칙들이 이있는 그 중에 하난가 웹브라우져 입니다.

웹 브라우져에 보면 http"// 라고 하는 아이가 있는데 

이것은 내가 지금부터 웹통신을 할꺼라 규칙대로 얘기할꺼니깐 잘들어 라는 의미 입니다.

 

잠시 여기서 혹시 http:// 만 보셨나요?\

요즘은 다 https:// 인데요

예를 들어 컴퓨터와 컴퓨터가 소통할때 중간에 누군가가 있다는 생각 해보셨나요?

가운데에서 누군가는 들을수 밖에 없는 구조이기 때문에 

보안을 더 철저히 해서 듣지못하게 만든게https://라고 보시면 됩니다.


2. 웹서비스 동작방식

서버가 터졌어요. 이런 얘기 들어보셨나요?

서버는 가운데서 일을 혼자 해줍니다.

하지만 많은 사람들이 오게 되면 너무 힘들어 집니다.

서버가 하는일은 데이터를 받아다가 저장을 해주기도 하고 

데이터를 주기도 하는 일을 합니다.

그래서 서버가 터지면 카톡이 안보내 진다거나 하는 겁니다.

 

컴퓨터는 사람에 비유할 수 있습니다.

웹 서버라는 것은 컴퓨터의 직업입니다.

요즘 사람들 보면 투잡 , 쓰리잡을 하시는 분들도 많은데

컴퓨터에게 웹서버도 시켜놓고 데이터 베이스도 시켜놓고 그러면서 내가 웹 서핑도 할수 있고.....

다시 말해 서버라는 것은 특별한게 아니다.

내 컴퓨터에서도 서버와 같이 똑같은 역활을 수행할 수 있습니다,

 

데이터를 주는 방식?

"JSON"(제이슨) 방식 "키:밸류"라고 합니다.

 


3. 서버 - 클라이언트 통신

은행을 서버라고 한다면?

예시

은행에 가서 내 통장 잔고를 확인하는 방법은?

1> 아무나에게 가서 물어 본다.

2> 대출 창고에 가서 물어본다,

3> 크게 소리친다.

4> 번호표를 뽑고 입출금 창구에 가서 민증을 보여준다.

 

정답은 당연히 4번 이겠죠?

 

여기서 포인트은 내 마음대로 가는게 아니라

은행과 미리 약속을 해둔곳에 가야 한다는 겁니다.

약속을 한곳은 '예금창고" , 약속해둔 데이는 '신분증' 잔고를 알고 싶어요'응답' 입니다.

 

컴퓨터에도 이러한 창구들이 존재하고 여러 창구들이 있고 규칙이 있습니다.

A라는 창구는 아이디를 가지고 오면 알려준다 하고

B라는 창구는 주소를 가져오면 장소를 알려준다고 하는데 

이 창구 하나가  API 라고 합니다.

 

우리는 이 API를 매일 보고 있습니다. 

예를 들어 지금 쓰고 있는 이 블로그의 주소를 보면

https://goldmodu.tistory.com/manage/newpost/?type=post&returnURL=%2Fmanage%2Fposts%2F

위와 같이 써져 있는데

위에 은행으로 예를 들었던 것을 풀이 하자면 이런 얘기 입니다.

https:// 신한은행 / 입출금창구? 신분증 = 주민등록번호 라고 생각하시면 됩니다.

신한은행은 / => 이것은 이 서버의 주소 입니다. (서버위치)

/입출금창구? =>  이것은 창구 이름입니다. ( API 주소)

? 뒤에는 => 갖고가야할 데이터 입니다. (가져가기로 한 데이터)

 

API는 아무나 못가져 갑니다.

하지만 누구나 가져갈 수 있게 만든 API들이 있는데 이것을 Open API 라고 합니다.

 

지금까지 서버얘기를 했는데 

그럼 이 서버를 어떻게 만드나요?

처음부터 다 만드는 사람은 없습니다.

남들이 만들어 놓은 코드 조각 조각이 있습니다.

그걸 잘 이용해서 만드는 겁니다.

그걸 바로 프레임워크라고 부릅니다.

 


4. 개발 언어 , 프레임워크

프로그래밍 언어란?

인간에게 가장 가까운 언어로 OS에게 명령을 내리는 겁니다.

하지만 프로그래밍 언어로 서버를 다 만드는 건 매우 매우 어려운 일입니다.

그래서 미리 만들어 놓은 것들이 존재합니다.

이걸 바로 프레임 워크라고 부릅니다.

 

자바로 만든 프레임 워크 : Spring

Node.js로 만든 프레임 워크 : Express

파이썬으로 만든 프레임 워크 : Django(장고) , Flask(플레스크) 

 

서버 데이터 분석
HTML , CDD , Javascript

js 프레임 워크 : React , Vue , Angular
안드로드이드 : Kotlin

아이폰 : Swift

둘다 : Flutter , ReactNative
JAVA (Spring)

Python (Django , Flask)

Node.js (Express)

C++ , GO , TS , PHp , Asp
Python

SQL

 

 


5. 아키텍쳐/DB

한 회사에 개발자가 있다고 생각합니다.

그럼 프론트엔드 개발자는 몇명이 있고 백엔드 개발자는 몇명이 있을까요?

만약 100명이라고 한다면

프론트엔드 개발자는 10명 밖에 안되고 그 뒤에 90명이 백엔드 개발자 입니다.

그럼 여기서 서버가 머 그리 할일이 많은 90명이 필요할까요?

사실 서버안에는 엄청나게 많은 역활들이 존재합니다.

 

데이터베이스란?

방정리는 하는 이유는?

잘 찾으려고 방정리를 잘하는 겁니다.

데이터 베이스는 잘 찾기위해 존재하는 겁니다.


6. 협업

git?

개발자들은 어떻게 일을 같이 할까?


 

Total : Today : Yesterday :