본문 바로가기

전체 글58

[React] useReducer 최근 온라인 강의 사이트인 Udemy에서 할인행사를 통해 리액트 강의를 구입해서 진행중이다. 관련 깃 : https://github.com/kijung7942/react-practice 아직 너무나 기초단계만을 진행중에 있으나, 포스팅할만한 주제가 생겨 글을 적어보려한다. React에 대해서 잘 모르는 사람이라더라도 useState에 대해서는 어느정도 들어봤고 알기 쉬울 것 같다. 상태관리라는 패러다임을 통해서 SPA가 가능하도록 하는 리액트에서 주로 사용하는 React Hook인데, 이를 보다 강력하고 복잡한 상태관리를 할 수 있도록 해주는 것이 useReducer이다. 예를들어 useState 를 이용해 3개의 서로 관련된 상태를 관리하고 있다고 가정해보자. import { useState } fro.. 2023. 4. 25.
Docker : 도커란 무엇일까? [2/2] 도커의 작동방식 이해하기 도커는 컨테이너 기반의 가상화 도구이다. 리눅스 커널의 기술인 LXC(Linux Container) 기반으로 이루어진 기술로 다음의 리눅스 커널의 기능을 사용하여 만들어졌다. - chroot: 파일 시스템을 격리 - namespace: 프로세스 격리 - cgroup: 하드웨어 자원 격리 그래서 보통 윈도우에서 도커를 사용하기 위해서는 WSL(Windows Subsystem for Linux)을 이용하여 윈도우에 리눅스를 올린 상태로 사용한다. 하지만 앞의 글에서 설명했던 Hyper-V 등을 이용하면 윈도우에 Hypervisor를 올려서 사용하는 것 또한 가능하다. Client - Daemon과 상호 작용할 수 있는 클라이언트 프로그램(CLI 명령어 등) Daemon - Docke.. 2023. 4. 10.
Docker : 도커란 무엇일까? [1/2] 세계적인 개발자 커뮤니티 Stack Overflow의 2022년 말 기준으로 통계자료를 보았을 때, 개발자들의 개발 플랫폼으로 부동의 1위인 Linux, 사용자가 많은 Windows와 함께 Docker가 각광을 받고 있다. 참고로 도커는 Go언어로 작성되어 있다고 한다. 불과 몇년 전까지만 해도 저연차의 개발자들이나 데브옵스에 관심이 없는 개발자들은 알지 못해도 크게 문제가 없던 도커라는 기술이 왜 이렇게까지 인기가 많은 것인지, 그리고 소프트 웨어 개발자라면 Docker를 꼭 배워야 하는 것인지 궁금해졌다. Docker를 이용하는 방법 우선 무엇보다 이 기술을 공부해야 할지부터 판단해보기로 하자. 도커라는 기술을 배우고 익히더라도 사용처가 불분명하다면 시간을 들여 공부를 할 필요가 없겠다 생각이 들었기.. 2023. 4. 7.
[리눅스마스터 2급] 합격발표! 3월 31일에 성적 결과가 나왔지만 한동안 다른 공부 및 회사 업무로 인해서 포스팅을 못했다가 늦게나마 인증을 하려 포스팅 한다. 가 채점 결과를 봤을 때, 이미 합격인 것을 알고 있었어서 큰 감흥은 없었으나, 그래도 자격증이 하나 더 생겼다는 점과 이력서에 채워넣을 한 줄, 빈 경력을 채워넣을 이야기 하나를 얻었다는 점에 기쁜것은 사실이다. ㅎㅎ 맨 처음 자격증을 취득하려는 의도가 리눅스를 실무에서 사용할 수 있을 정도로 알기 원했던 것이었는데, 누군가가 "자격증을 취득하는 것이 실무에 도움이 되었느나" 라고 물어본다는 개인적으로는 "그렇다"고 대답할 것이다. 왜냐하면 이런 계기가 없었다면 리눅스를 접해보지 못한 상태에서 실무에서 리눅스를 사용했을 것이고, 실무에서 정해진 루틴에 맞춘 명령어 몇개만 기.. 2023. 4. 5.
[리눅스 마스터 2급] 2023년 2차 시험 후기 드디어 2주 간의 공부를 끝내고 시험에 응시하는 날짜가 되었다. 자격증을 취득하려 했던 이유는 현재 근무중인 회사에서 리눅스를 사용해야 하는 상황에 놓여졌기 때문이었다. 따라서 그저 자격증 취득을 위해 글자만 보고 공부하는 것이 아닌 실제 운용과 실습을 해보고 싶었다. 리눅스 마스터 1급을 응시하면 실습하는 것까지 시험 내용에 포함되는 것 같았지만 응시료의 차이와 짧은 시간동안만 공부할 수 있는 시간이 주어 질 것 같다는 생각에 무난한 리눅스마스터 2급을 응시하게 되었다. (지금 자격증 시험에 합격한 상태에서 생각해보면 이후에도 1급을 따기 위해 응시하지는 않을 것 같다.) 처음 리눅스를 접하는 시점에는 어디서 부터 어떻게 봐야할지 막막하여 지인을 통해 유튜브 강의를 추천 받았다. 위에서 말했듯, 자격증.. 2023. 3. 15.
[리눅스 마스터2] 리눅스 배포판에 따른 패키지 관리 툴(dpkg, apt, rpm, yum 등) 리눅스에서는 배포판에 따라 서로 다른 패키지 관리자를 제공한다. 우분투로 대표되는 데비안 계열의 리눅스 배포판의 경우에는 dpkg와 apt-get이라는 패키지 관리자를 제공하며 Centos로 대표되는 레드햇 계열의 리눅스 배포판의 경우에는 rpm과 yum을 제공한다. 또한 자주 사용되지 않는 리눅스 배포인 Suse의 경우에는 YaST와 zypper를 제공한다. 공부를 하며 왜 두 개씩 제공을 할까 하는 의문이 있었고 이를 찾아보다가 정답을 얻어 포스팅을 한다. 일단 패키지 관리자는 오프라인 패키지 관리자와 온라인 패키지 관리자로 나뉜다. 구분 데비안 레드햇 수세 오프라인 dpkg rpm YaST 온라인 apt-get yum zypper 오프라인 패키지 관리자는 패키지 설치 명령이 들어오면 로컬 저장소에서.. 2023. 3. 8.