본문 바로가기

전체 글128

[항해 99] TCP 우리가 사용하는 인터넷 통신을 세부적으로 보면 OSI 7 Layer로 총 7계층으로 나눠지면서 통신하다. (왜 이렇게 하느냐면 계층을 나눠 통신이 일어나는 과정을 단계별로 파악할 수 있고 어느 곳이 문제인지를 쉽게 판단할 수 있기 때문이다.) 그래서 각 계층마다 맡은 역할이 존재하고 이 계층마다 존재하는 프로토콜이 존재한다. 예를 들어 HTTP는 7계층 중 상위 계층인 application Layer에 존재하는 프로토콜이다. 데이터를 어떤 형태로 어떻게 보내고 받을지를 정하는 프로토콜이다. 또한 TCP란 프로토콜도 존재한다. 전송계층(Transport Layer)에 존재하는 프로토콜로 그 밑의 하위 계층인 네트워크 계층(Network Layer)의 불안전함을 보완해주는 프로토콜이다. 이 TCP에 대해 알.. 2022. 8. 11.
[항해 99] WIL 4주차 - 주특기 숙련, 주특기 심 (후기) 서론 8.5(금) - 주특기 심화 주차 시작 아침 9시 ~ 저녁 9시까지 하루 총 12시간(+알파) 일정 7.29(금) : 주특기 숙련 주차 팀 배정 및 OT 7.29(금) ~ 8.4(목): Node.js 주특기 숙련 팀/개인 과제 진행 8.5(금) : 주특기 심화 주차 팀 배정 및 OT 8.5(금) ~ 8.6(토): JS언어 Node.js런타임, express 프레임워크, MySQL, Layerd Architecture Pattern, Test Code 팀 프로젝트 진행 주특기 숙련 개인 프로젝트 (JS언어로 Node.js와 express.js를 이용하여 회원가입/로그인/로그인 인증/ 글 작성/수정/삭제 기능 및 댓글 작성/수정/삭제 기능 구현) 팀 프로젝트 (ORM, ODM이 뭔지, IIFE와 req.. 2022. 8. 7.
탐색 알고리즘 DFS / BFS 개념 탐색 알고리즘을 배우기 전에 스택과 큐에 대해서 알아야한다. 더보기 스택 스택(stack)은 컵이다. 컵에 섞이지 않는 액체 a,b,c,d를 넣는 것과 같다. 아래의 예제를 보면, 차례대로 A,B,C,D,E가 들어갔으면 차례대로 E,D,C,B,A가 되어야한다. 즉 제일 마지막에 들어간 것이 제일 첫번째로 나오는 구조이다. 이걸 영어로 하면 Last In First Out 이 되는데, 앞의 글자만 따와 LIFO가 된다. 큐 큐(queue)는 파이프이다. 예를 들어 파이프 안에 A,B,C,D를 넣는다면, 반대쪽 출구에선 A,B,C,D순으로 받을 것이다. 전깃줄에 빗대보자. 전력소에서 A전기를 넣고 B전기를 넣었다면 가정집에선 A전기를 먼저 받고 B전기를 받는다. Why? 탐색 알고리즘을 왜 쓰느냐? 보통 컴.. 2022. 8. 3.
[항해 99] WIL 3주차 - 주특기 입문, 주특기 숙련 (후기) 서론 7.29 - 주특기 숙련 주차 시작 아침 9시 ~ 저녁 9시까지 하루 총 12시간(+알파) 일정 7.22(금) : 주특기 입문 주차 팀 배정 및 OT 7.22(금) ~ 7.28(목): Node.js 팀, 개인 과제 진행 7.29(금) : 주특기 숙련 주차 팀 배정 및 OT 7.29(금) ~ 7.30(토): JS언어 Node.js런타임, express 프레임워크, MongoDB, MySQL 개인, 팀 프로젝트 진행 주특기 입문 개인 프로젝트 (JS언어로 Node.js와 express.js를 이용하여 글 작성/수정/삭제 기능 및 댓글 작성/수정/삭제 기능 구현) 팀 프로젝트 (Javascript에 대해 중요한 점 찾아서 넣기) Node.js, express.js, mongoDB, Thunder Clie.. 2022. 7. 31.
Docker Error 항해99 주특기 심화 4주차 학습자료 중 Docker를 이용하여 MySQL 서버를 띄울수 있게 해주는 명령어 실행 docker run --rm -p 3306:3306 --name test-db -e MYSQL_ROOT_PASSWORD=1234 mysql:5.7 mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci Error 발생 docker: Error response from daemon: open \\.\pipe\docker_engine_linux: The system cannot find the file specified. See 'docker run --help'. 해결 cd "C:\Program Files\Dock.. 2022. 7. 31.
[항해99] require() require()은 Node.js 안에 module.js 파일 안에 정의된 메서드이다. 외부 모듈을 가져오게 하는 기능을 가지고 있다! 매개변수로 외부모듈의 파일경로를 넣는다. require("./aa/asdf"); // 현재경로에서 aa파일안에 있는 asdf모듈을 불러오겠다. 모듈이라 하면 외부에 영향을 받지 않는 재사용 가능한 코드들의 묶음이다. 라이브러리를 부를 때도 쓰지만, 우리가 만들었던 파일들을 불러올 때도 쓰인다. 이는 객체지향프로그래밍에선 클래스가 이런 모듈을 담당했고 javascript처럼 함수지향 프로그래밍에선 함수 객체가 이를 담당하고 있다. require()은 동작 원리 var require = function(src){ var fileAsStr = readFile(src) //li.. 2022. 7. 30.