TIL-20210107

2021. 01. 07.
  • 우분투 서버를 설치해봤다. gui가 제공되지 않아서 걱정했는데 wsl에 어느 정도 적응을 해서 그런지 크게 어렵지 않았다. ssh 구성을 해서 wsl로 접속을 했는데 이전에 hyper-v 네트워크 설정을 잘 잡아놔서 그런지 크게 무리 없이 완성했다.
  • 간단한 쉘 스크립트도 짜봤는데 여전히 어렵다. 어렵다기보다는 모래주머니를 하나 달고 있는 답답한 느낌이다 ㅋㅋ. 막상 해보니 탄력받아서 미션 외의 설계를 해봤는데 나쁘지 않은 것 같다.
  • 어제 알아보기로 했던 ConcurrentModificationException 를 알아봤다. Collector로 강화된 for 문을 사용하면 발생한다. 다만 이는 강화된 for 문을 사용할 때만 발생하고, 일반적인 loop 혹은 Iterator 를 따로 호출하면 크게 문제없이 작동한다. 상태업데이트와 관련이 있지 않을까 싶다. 까다로운 부분은 Map을 사용할 때인데, 동시성을 보장하는 ConcurrentMap은 강화된 for문을 사용해도 제대로 동작했다. 또한 순서를 제공하는 LinkedHashMap의 경우 일반적인 for문으로 접근하면 문제가 발생하지 않았다. 내일 관련해서 정리해봐야겠다.
  • Kyu가 SSH에 대한 화두를 던져줬다. 덕분에 나도 찾아보게 됐는데 Secure SHell 이라는 프로토콜이라고 한다. 1:1 연결용이고 1:n 은 Secure Sockets Layer 가 사용된다고 한다. 참고로 SSL 은 HTTPS에 사용된다. 과거에는 Secure 한 레이어 없이 연결했는데 보안 문제가 발생하기 쉽다 보니 캡슐화를 시켰다고 한다. 그래서 네트워크와 네트워크 사이의 연결을 감싸주는데 이것이 터널 같다고 하여 터널링이라고 한다. 이는 네트워크를 학습하며 정리해봐야겠다. 진도를 생각해보면 아마 2주 후가 되지 않을까 싶다.
  • WSL에서 CODE . 명령어가 듣지 않던 이유를 알게 됐다. 접근 권한 문제인 것 같은데 관리자모드로 실행하니 문제가 발생하지 않았다. 파워쉘은 상관없지만, 터미널의 경우 설치프로그램이 아닌 스토어에서 받은 것이라 따로 관리자 실행을 등록할 수 없는듯하다. 따라서 스크립트를 찾아서 설정에 붙였는데 잘 동작한다. 놀라웠던 것은 해당 스크립트가 있었던 깃헙 issue였는데, ms terminal 레포지토리였다. 이슈가 닫혀있어 살펴보다 깃헙 프로젝트도 살펴보게 됐는데 처음에는 해당 이슈가 생겼을 때 필요한 것인지? 로 분류해놓고 이슈가 어느 정도 지지를 얻고 필요성이 이해가 되자 개발을 진행한 것으로 보였다. 확실히 MS가 유저 친화적인 정책을 많이 펼치는 것 같다.

아쉬운 점

  • 인강을 듣는 속도가 생각보다 안 난다. 아침에도 듣긴 했지만 그런 이유로 필기를 약간 포기하고 들어버렸다. 어느 정도 아는 데다 강의자료가 썩 나쁘지 않아 그런데, 어쨌든 속도를 좀 붙여놔야 할 것 같다. 매일 불규칙하게 듣다가 규칙적인 생활을 듣게 된 탓이 큰 것 같은데 신경을 좀 써야겠다.

내일 할 일

  • 편리하게 사용 가능한 압축 스크립트 만들기
  • ConcurrentModificationException 학습내용 정리하기
  • 알고리즘 풀이
정대화
DaeHwa_Jeong@outlook.com

Powered with by Gatsby 2.0