20201125-TIL

나영원·2020년 11월 26일
1

T.I.L.

목록 보기
87/145

오늘 공부할 내용

  • 어제 스프링강의 복습
  • 저녁 스프링강의
  • TiL 정리 및 Git & 블로그 업데이트

오늘 공부한 것 & 배운 내용

모두의 네트워크

  • 전이중 통신과 반이중 통신에 대해서 배웠다
    • 허브를 사용할 때만 반이중 통신이 발생한다는데 허브는 완전히 스위치의 하위호환같은데 구지 사용할까 생각이 들었는데 스위치만 사용한다고 한다..
    • 그럼 왜 반이중 통신에 대해서 배워야 되는지 궁금해졌다
    • 충돌 도메인도 반이중 통신에서만 전체로 확장되는 것이기 때문에 크게 중요한 내용은 아니었던 것 같다

채용공고 읽기

  • 모르는 기업이 있으면 하나하나 찾아보았는데 이렇게 접근하면 너무 오래걸리고 필요한 정보를 못찾는 것 같다. 일단 지원 자격이 맞는데 위주로 찾아봐서 내가가진 기술을 어떤회사들에서 사용하는지 찾아보는게 우선이 되야될 것 같다
  • 나도 해본 야구게임회사에서 백엔드 공고가 올라와서 봤는데 서비스가 한계에 봉착했고 그에 따라 수입도 적어져서 연봉이 적다는 평이 많았다
    • 연봉이 적은 회사를 어떻게 받아들여야 될까? 어느정도가 하한선인지는 어느정도 생각해볼 문제인것 같다

스프링 강의 복습

SpringProject

  • 이상한 에러가 생겨서 한참 디버깅하는데 똑같 코드인데 이클립스에서는 실행되고 인텔리제이에서는 실행이 안되서 한참 찾아보다가 동료에게 물어보니 같은 문제가 발생했는데 프로젝트 설정을 다르게해서 만들었더니 됬다고 알려주었다
    • 인텔리제이 세팅을 어설프게 했더니 뭔가 문제가 생긴것 같다.
    • 동료가 알려준 대로 다시 프로젝트를 만들고 스프링과 웹 프로젝트를 추가하여 만들고 소스를 복사해서 실행되니 실행되었다
      • 프로젝트 세팅에 문제가 생겨서 이런 에러가 생길수도 있구나 라는 경험을 해본것 같다

강사님과 질답시간

  • 오늘은 다른 강사님이 오셔서 질답을 받아주시는 날이기 때문에 궁금했던

    • 다음에 질문할것을 미리미리 정리해두면 더 도움이 될 것 같다
  • HTTP session과 브라우저 닫힐때까지 생기는 session은 다른건가?

    • 답변 : HTTP 통신에서는 세션이 생기지 않는다. 그래서 서버에만 session을 만든다

    • 분명히 내가 노트해놓은곳에는 session이라고 써있었는데 잘못 필기했나보다.. 조심해야될것같다

  • 파싱한다는 단어가 곧곧에서 사용되는데 분석??정도로이해하면되는건가요..

    • 답변 : 원하는 자료의 형태로 있는지 확인하는것, 정규표현식도 활용될수있다
  • 서블릿 컨테이너 안에서 멀티스레드가 어떻게 돌아가는지 궁금합니다. 여러개의 httprequest객체가 사용될텐데 동시성문제가 발생하진 않는지?

    • 답변 : 객체는 힙영역에 있고 service()메소드 사용만 멀티스레드로 구동 되기 때문에 스레드영역에 각각의 메소드영역이 생겨 각각의 request 객체를 가르키기기 때문에 문제가 없다. 오히려 동시성 걱정할것은 서블릿에 인스턴스 var인데 그부분은 구현할때 조심하거나 block모시기 쓴다고하셨다
    • 아직 내가 멀티스레드 구동이 머리속에 명확히 그려지지 않아서 계소 궁금해 지는 것같다. 좀더 멀티스레드는 계속 공부해야할 부분인 것 같다
  • 스프링 컨테이너를 어떻게 이해하면 좋을까?

    • 답변 : 스프링이 객체들
    • 이걸 잘 들었어야됬는데 괜히 IOC와 연관된 질문으로 이어가다가 제대로 듣지못하고 넘어가버려서 아쉽다. 다음엔 좀더 경청하자
  • IoC, DI를 해줘야 되는 이유

    • 답변 : 테스트 나 스테이징 서버에 올릴 때 di를 안하면 각각의 경우에 대한 구현을 추가해야하는데 di를 사용하면 객체만 샥하고 바꿔주면 된다. 제일 확실히 아는 법은 di 안사용하고 구현 했을때와 하고 구현했을때를 비교해보면 알것이다
  • 세터 di와 생성자 di중 무엇을해야하는건가

    • 의견이 분분한 영역이고 서로 장단점이 있다. 예전엔 세터 di를 했지만 요즘엔 생성자 di를 많이 한다. 무엇 사용하냐 보다 각각 장단점을 이해하고 있는게 더 중요하다
  • 컨테이너는 왜 객체를 한개만 생성할까요..

  • 하나만 생성했을때 생기는 문제가 동시성이나 바틀넥에 문제있지만 여러개 객체를 생성해서 사용할 때는 문제가 훨신 복잡해지게 된다. 그래서 최대한 단순하게 하나만 생성하고 사용하여 생기는 문제를 해결해나가는 방식으로 한다. 버틀넥은 로드밸런싱에 사용되고 그때 사용되는게 도커와 하이버네틱스라고 하셨다.. 그리고 7레이어 상에서 하나하나 적용할수 있는 분야가 따로 있다고 하셨다

  • 그런 레이어 적인 문제해결 방안을 적용하는게 백엔드 개발자 영역인가요?

    • 답변 : 예전에는 네트워크 운영쪽에 영역이었지만 이런 영역이 요즘에는 많이 사라지는 형태이다. 그래서 공부할게 무한히 많다고 말씀해주셨다 ^^

공부하면서 느낀점

질문정리하기

  • 초반에는 무엇이든 궁금하면 정리해놓고 검색해서 답을 찾거나 질문을 했는데 요즘엔 진도따라간다는 명목하에 그런 부분들을 잘실행을 못했다. 질문만 적어놓고 해결하는 시간을 못가져서 유명무실하게 느꼈을 수도있다. 하지만 이제 주 3일정도는 피드백하는 시간이 생겼으니 더 적극적으로 질문거리를 찾아봐야겠다

내일 공부할 내용

  • 어제 스프링강의 복습
  • 저녁 스프링강의
  • TiL 정리 및 Git & 블로그 업데이트
profile
배우는 개발 일기

0개의 댓글