Just Do IT!

스파르타코딩클럽 내일배움캠프 20일차 본문

스파르타코딩클럽 내일배움캠프/TIL

스파르타코딩클럽 내일배움캠프 20일차

MOON달 2022. 11. 25. 21:56
728x90
반응형
오늘 일과 간단 요약
  1. 프로젝트 마무리

 

 

 

 

 

 

프로젝트 진행 상황
  • 로그인/회원가입
  • 새 글 작성하기
  • 프로필 수정 (모달창)
  • 전체 글 리스트 불러오기
  • 내 글 리스트 불러오기
  • 글 수정/삭제
  • 글 작성시 사진 첨부 기능 추가
  • 배포
  • 글 클릭시 모달창으로 전체 글 볼 수 있는 기능
  • 모달창에서도 수정/삭제 기능 구현할 수 있도록 하기 (진행 중)

 

드디어 모달창으로 보이는 거까지 완료했다...!!

오늘 하루 종일 그거 때문에 씨름했는데 거의 일과가 끝나갈 때 튜터님에게 질문을 하고 나서야 해결되었다.

 

처음에 힌트를 받아서 그걸 토대로 구현했는데, 모달창은 제대로 나오는데

문제는 모든 리스트가 나온다는 것이었다.

우리가 모달창을 구현하는 목적은 한 페이지마다 제대로 나오기 위한 것이었는데, 리스트 전부 나오면 의미가 없으니까.

 

그래서 그 부분은 

리스트 중 id 값을 가져와서 그 id값이 같으면 불러오도록 하고 싶었는데...말은 쉬웠지만....

콘솔창에 아무리 찍어봐도 나오지 않아서 튜터님께 다시 갔는데, 거짓말처럼 구현했다...ㅋㅋㅋㅋㅋ

 

점점 지우는 리스트들은 많아지는데,

기능을 구현할수록 새롭게 하고 싶은 부분들이 많아서 저절로 기능들이 마구 추가된다.

 

어제 분명히 모달창으로 볼 수 있는 기능만 만들면 될것 같았는데

막상 구현하고 나니 모달창에서도 수정하고 싶어져서 버튼을 새로 만들고 있다.

TIL 작성하고 조금 더 해본 다음에 안되면...내일 팀원들과 공유해서 문제점을 찾아야겠다.

 

 

 

협력사 특강

사실 특강 직전에 튜터님께 질문하러 갔어서 질문을 먼저 하고 특강에 참여하려다가

그냥 먼저 특강에 참여했다.

 

아직 캠프 초반이고 부족한게 많다고 생각해서 특강을 지금부터 왜 하나, 싶었는데 어차피 이 부캠의 끝은 취업이고

나는 취업 준비를 함께 하고 싶었으니까 열심히 들었다.

 

그런데 중간중간 프로젝트 생각이 나서 제대로 적지 못해서...ㅠ

나중에 다시 한 번 들어보고 정리해야겠다.

프로젝트에 자꾸 신경이 몰리다 보니까 자꾸 다른 건 하지 못하게 된다 ㅋㅋㅋ

 

 

 

 

 

HTTP / HTTPS 특강
  • 도메인 네임 시스템 (DNS, Domain Name System)
    • 도메인 네임 : IP 주소를 사람들이 이해하기 쉽게 문자로 표현한 것
    • 컴퓨터는 IP 주소로 통신하고 도메인 네임은 식별할 수 없어서 IP 주소에 도메인 네임을 할당하고 관리하는 시스템을 DNS라고 한다.

 

  • 포트 (Port)
  • 운영 체제 통신에서의 종단점
  • IP Address를 통해 목적지 호스트까지 도달한 후에 어떤 프로세스에서 데이터를 받을 것인지를 알아야 하는데 이 때 쓰이는 것이 포트 번호다.

 

  • IP 정의
    • 패킷들을 가장 효율적인 방법으로 최종 목적지로 전송하기 위해 필요한 프로토콜
    • 패킷 전달 여부를 보장하지 않고, 순서 역시 보장하지 않는다.
  • TCP
    • 정의
      • 패킷을 안전하게 전달해주는 전송 프로토콜
      • IP위에서 동작하고 데이터의 전달을 보장하고 순서도 보장한다.
    • 흐름제어
      • 송신측과 수신측의 데이터 처리 속도 차이를 해결하기 위한 기법
    • 혼잡제어
      • 송신측의 데이터 전달과 네트워크의 데이터 처리 속도 차이를 해결하기 위한 기법
    • TCP handshake
      • 3-way handshake
        • 두 종단 간 정확한 데이터 전송을 보장하기 위해 연결을 설정하는 과정
      • 4-way handshake
        • 두 종단 간 데이터 전송을 끝낸 후 연결 설정을 해제하는 과정
  • TCP/IP
    • IP + TCP = 인터넷 프로토콜 + 전송 제어 프로토콜 이다.
    • TCP를 기반으로 한(신뢰성 통신을 하는) HTTP,FTP,SMTP 등 수 많은 프로토콜들이 IP 위에서 동작하기에 묶어서 TCP/IP라고 한다.
    • 결국에는 효율적으로 빠르게(IP) 보내면서 안전하게(TCP) 전달해주려는 목적

 

 

  • HTTP (HyperText Transfer Protocol)
    • 클라이언트와 서버 간의 자원을 교한하기 위한 TCP/IP 기반 통신 프로토콜
    • 특징
      • 단방향성 : 서버가 먼저 응답을 보낼 수 없고 클라이언트가 요청을 보내야만 응답할 수 있다
      • 비연결성 : 클라이언트의 요청으로 서버와 연결한 후 요청에 대한 응답의 데이터를 전송하면 연결을 종료한다. ☞ 실시간 통신 불가
    • 문제점
      • 평문 통신이기 때문에 도청 가능
      • 통신 상대가 검증된 상대인지 확인 X (위장 가능)
      • 변조 가능

 

 

  • HTTPS (Hyper Text Transfer Protocol의 보안(Secured) 버전)
  • SSL/TLS 프로토콜을 사용해 HTTP를 암호화하여 주고 받을 때 쓰는 통신 프로토콜

 

 

웹 브라우저에 www.naver.com을 을 치면 어떤 일이 일어나는가

  1. 웹 브라우저에 www.naver.com 입력.
  2. 사용자가 입력한 URL 주소 중 도메인 네임 부분을 DNS 서버에 검색하고, DNS서버에서 해당 도메인 네임에 해당하는 IP주소를 찾아온다.
  3. HTTP 프로토콜을 사용하여 페이지 URL정보와 찾아온 IP주소를 포함하는 HTTP 요청 메세지를 생성하고, 생성된 HTTP 요청 메세지는 TCP 프로토콜을 사용하여 인터넷 망을 통해 해당 IP주소의 컴퓨터로 전송된다.
  4. HTTP 요청 메세지를 받은 컴퓨터(서버)는 웹 페이지 URL 정보 중 PATH와 HTTP Method에 맞는 액션을 취한다. (여기서는 naver 페이지를 띄우기 위해 필요한 html 등의 리소스를 찾을 것이다.)
  5. 생성된 응답 데이터는 또 다시 HTTP 프로토콜을 사용하여 HTTP 응답 메세지로 만들어지고 TCP 프로토콜을 사용하여 인터넷 망을 통해 요청했던 컴퓨터(클라이언트)로 전송된다.
  6. 도착한 HTTP 응답 메세지는 웹 브라우저에 의해 브라우저 렌더링 과정을 거쳐 화면에 출력되어 사용자가 볼 수 있게 된다.

 

 

 

 

 

 

 

 

 

짧은 일기

양심 고백.

오늘 협력사 특강이랑 CS 특강은 그냥 설명 듣고 복습하지 않고 미뤄뒀다.

특강 들으면서 필기도 하고 이해는 최대한 하고 넘어갔지만 원래 CS는 약해서 늘 구글링을 하거나 했는데, 

자꾸 프로젝트 완성에 대한 생각이 나서 프로젝트 다음으로 미뤄뒀다.

 

특강에서 했던 웹 브라우저 저부분이 CS 면접의 단골 질문인데, 꼭 알아야 하는데 그냥 이렇게 넘어가는 건 아쉬우니까

월요일에 모든 프로젝트가 끝이 나면 꼭 그 부분을 짚고 넘어가야겠다.

매주 금요일에 있는 걸 까먹고 특강을 못 들어갈뻔 했다...ㅋㅋㅋ

 

프로젝트가 거의 완성되서 좋았는데 ,

이것저것 기능들 합치는 과정에서 생각지도 못한 오류가 나니까 오늘 하루 종일 그것만 생각하고 있었다.

아무래도 끝이 보인다는 생각에 더 조급했던 것 같다.

 

그래도 재희님이 CSS 예쁘게 해주셔서 웹페이지가 아주 그럴듯해졌다!

주말에 남은 기능 추가해서 배포하고 발표 준비까지 마치면 아주 예쁜 페이지가 될 것 같다.

난생 처음 배포까지 한 진짜 웹사이트를 만들었는데 너무 신기하다 ㅋㅋㅋㅋ

 

주말에 잘 마무리 하고 WIL에 적어야겠다.

728x90