개발자 되는 중/개발 공부

웹 개발 특강

SeonChoco 2022. 12. 14. 20:51

대충 - Google Slides (설명 PPT)

 

 

웹서비스는 어떻게 작동하는가?

식당에서 우리가 요청을 하면 서버분들이 응답해준다. 

 

-웹서버란?

웹이라는 서비스를 제공해주는 곳 (서버는 컴퓨터)

AWS는 서버용 컴퓨터를 빌리는 것

 

-어떻게 서버에 요청을 보내나요?

서비스는 브라우저를 통해서 요청한다.

나와 브라우저를 묶어서 클라이언트라고 한다.

요청은 url로 하는 것이다. (get 방식, post 방식)

 

app.py에서 응답해주는 것 중 하나인 def home: 을 살펴보자

응답은 여러 종류가 있지만 여기에서는 render을 해주었다.

 

예시) 네이트에 로그인 시도했을 때

아이디와 패스트워드와 같은 내용을 url에 담아서(그릇같은 역할) 서버에 보내준다

응답은 내 아이디와 패스워드를 받아주고 그에 맞는 다음 페이지를 render 해주는 것이 될 것이다.

 

우리는 코아가 새로운걸 만들기 보다는 다른 사람들이 만들어놓은 것을 보면서 이해하면 된다.

B반 7조꺼 보자

 

우리는 서버 컴퓨터가 따로 없으니까 로컬 호스트 이용한다.

로컬호스트 localhost 127.0.0.1 은 내컴퓨터

app.py를 돌린다는 것를 인터넷에 연결하고 어떠한 요청이 오길 기다리고 있다는 것

 

프레임워크는 도와주는 것, 이미 다른 사람이 만들어둔 틀

 

app.route는 이리로 가세요 한다. 

 

port 5000이란?

서버는 인터넷에 연결되어 있다.

컴퓨터에는 방화벽이 있다

방화벽은 다 열어놓고 들어오는것을 선별해서 막아주기 보다

일단 다 막아놓고  어떤 요청들만 열어주는게 더 간단하다. 

열어둘 항구의 이름이 5000이다.

항구의 이름을 구분하기 위해 숫자를 붙여줬을 뿐

열어준 항구로만 들어올 수 있다.

코드 마지막 줄에 보면 우리가 설정해준 것을 볼 수 있다.

 

def  home은 /  url로 요청 받는다.

render template이라는 기능은 flask에서 import한 것이다.

 

react 할 때는 axios 라는 것을 ajax 대신에 쓸거다

method가 안 정해져있으면 get이 디폴트값이다.

ajax는 우리가 직접 치는거 대신 해주는 거?

경로와 메소드가 맞아야 서버에 정확하게 요청할 수 있다.

 

get 과 post의 차이점 

get:파라미터 노출 o 

post: 파라미터 노출 x

매개변수로 값을 주고 받는다

post는 주소뒤에 붙는 ?뒤의 내용을 노출 하지 않고

get은 노출하기 때문에 아주 단순한 불러오기에서 쓴다.

 

비동기 호출이란?

동기는 순차적으로 , 비동기는 한번에..?

비동기는 요청이 오래 걸리는 일이더라도 내가 보고 있는 페이지는 여전히 따로 작동하고 있는거- skeleton ui (작동하는 척하는 빈 페이지)

보통 비동기로 많이 짠다.

 

용어 정리

render:  제공하다

파라미터: 매개변수 = parameter =값을 담는 그릇

UX: user experience  사용자 경험

동기: 같은 시기. 또는 같은 기간.synchronism

 

venv virtual environment : 가상 환경, 코딩하면서 필요한 라이브러리 (도구)를 넣어놓는 도구함

log: 일지 (일어났던 모든 일들을 적어준다)

port: 항구

route: 길 - ~로 가세요 한다. 한 곳에서 어딘가로 연결하는 길

import: 들여오다

 

터미널 명령어

clear: 터미널 깨끗하게 지우기 

pwd: print working directory 현재 경로확인 

ls: 현재 경로 내용 확인 list directory contents

cd: change directory

파이썬 파일 실행: python3 app.py 파일 실행

 

우리는 튜터님 스펙임. 우리가 잘되면 튜터님도 잘되는 것

'개발자 되는 중 > 개발 공부' 카테고리의 다른 글

스파르타 Python 기초  (0) 2022.12.14
스파르타 Javascript 기초  (0) 2022.12.14
SPA 특강  (1) 2022.12.14
인프런 git과 github  (1) 2022.12.14
Git 특강  (0) 2022.12.14