본문 바로가기
개발자 도전기/[SW사관학교 정글] 개발일지

정글에서 살아남기 | WEEK07 | 웹서버 만들기

by 답수 2021. 9. 28.
728x90
반응형

 

 

이번 주 차는 일이 많았다. 추석 연휴도 있었고, 백신 맞아서 두통으로 고생도 했었고(물론 심하지는 않아서 다행쓰)

 

특히 추석 때 고향에 잠깐 내려갔다가 다시 대전으로 복귀할 때 버스를 놓쳐서 다음 시간 버스를 탔었고(진짜 운좋게 한 자리 남았었음..) 차 거어어업나게 막혀서 버스에서만 다섯 시간 있었고, 캠퍼스까지 복귀하는데 6시간 30분이나 걸렸었다.. 이것만으로도 체력 고갈...

 

여하튼 이번 주는 웹서버 만들기가 목표였고, 역시 C언어로 Tiny 웹 서버를 구현했었다. flask 프레임워크를 이용하여 웹 서버를 만드는 것과는 다르게 더 low하게 코드 구현을 해야 되어서 꽤 어려웠던 부분들이 많았다. 

 

 

1. 웹서버 만들기

1. 네트워크 프로그래밍(Network Programming) | 클라이언트, 서버, 네트워크, 인터넷, TCP/IP, IP 개념 정리

2. 네트워크 프로그래밍(Network Programming) | 소켓 인터페이스, getaddrinfo함수, addrinfo구조체

3. 네트워크 프로그래밍(Network Programming) | 웹 서버, 소형 웹 서버 Tiny 만들기

 

이번 주 공부한 내용은 위의 링크로!

 

 

2. 협력사 설명회(09/23) - 스푼라디오

협력사 발표가 있을 때는 항상 리마인드되어서 좋다. 협력사에 취업한 1기 분들과 얘기를 나누면서 다시 마음을 붙잡는 동기도 되고, 협력사에서 어떤 일을 할 수 있는지 조금이나마 알게 되는 순간들이 흔치 않은 기회라고 생각해서 좋다. 

 

이번 1기 분들과도 얘기를 나누면서 느낀 점은 그냥 일단 정글에 있는 동안은 이것저것 재지 않고 그냥 무작정 열심히 해야 된다는 것. 그리고 공부 방식에 왕도가 없다는 것. 취업에 성공한 1기 분들을 여러 명 만나다 보니 당연히 다들 그만한 보상을 얻을 만큼 열심히 하셨고, 성향과 공부 방법, 가치관이 다 다르기 때문에 1기 분들의 조언을 있는 그대로 받아들이기보다는 나한테 맞게 의견을 참조하는 정도로 생각해야 한다. 일단 내 주관과 패턴을 우선순위로 두면서 좋은 부분들을 받아들이면 더 좋은 효율을 낼 수 있을 것 같다.

 

 

3. 결국은 운영체제 개념 확립이 필수

Tiny 웹서버를 만들기 위해서는 네트워크의 기본 개념을 알아야 하고, 네트워크의 통신 방법을 알기 위해서는 socket, file descriptor, I/O시스템 등의 프로그래밍 개념도 익혀야 하고, 이를 알기 위해서는 결국 운영체제의 기본 개념들을 알아야 한다. 분명히 열심히 공부해서 tiny.c 서버 구축에 성공했지만, 이게 정말 내가 이해하고 풀었다고 자신있게 말할 수 없다. 아직도 모르는 부분이 너무 많다.

 

어차피 이제 오늘부터 pintOS가 시작됐기 때문에 본격적으로 OS에 대한 개념들을 익혀야 한다. 진짜 그냥 죽었다 생각하고 빡세게 하자 계속!!

 

그리고 백신, 추석 연휴 등으로 무너진 패턴도 다시 재확립하자. 아침 운동도 꾸준히 하고!!!

728x90
반응형

댓글