본문 바로가기

반응형

내직업은 IT종사자

(44)
[Docker] 도커 라이프사이클 lifecycle 1. push만든 도커 이미지를 docker hub에 옮겨 놓을때 사용됩니다. docker hub에 옮겨놓는 방법1. docker login2. docker push [만든 이미지] 2. pulldocker pull [image]# ex) docker pull nginx docker hub에서  pull [image] 하게 되면  image 가 다운로드 됩니다. 3. run docker run -d -p [host port]:[container port] --name [container name] [image]# ex) docker run -d -p 80:80 --name nx nginx run을  하면  container 생성 + 실행이 동시에 됩니다 * 여기서 -d 는 detached 모드로 컨테이너..
ealry return 은 좋은 것일까? Early Return 패턴코드를 작성할 때 기능에 따라 여러 조건문을  사용하게 되는데  그때마다  어떻게 하면 가독성 높게 코드를 짤 수 있을까 고민하게 됩니다 (매번... 너무어려워 ㅠㅠ)그 중에  Early Return패턴을 종종 사용하게되는데 문득  early return 을 사용하는 것이 좋을까? 안좋을까? 라는 고민을 하게 되었습니다.  1. Early Return 이란? Early Return은 함수에서 조건문을 만족할 때 일찍 반환하는 것을 의미합니다.  2. Early Return 의 장단점 2-1. 장점- early return은 들여쓰기  즉  중첩 조건문을 줄여 코드를 간결하고 읽기 쉽게 만들어 줍니다.- 코드의 비선형적인 흐름을 선형으로 바꾸어 주어 가독성을 높혀줍니다- 조건이 ..
블로킹(Blocking)과 논블로킹(Non-blocking) 그리고 동기(synchronous) 과 비동기(asynchronous)의 정의 및 차이점 (헷갈리지않기!) Blocking 과 Non-Blocking이란? 공부를 하다가 블로킹, 논블로킹, 동기, 비동기가 예전부터 너무너무 헷갈렸어요 머리속으로는 얼추 알겠는데 막상 구현 및 적용해볼때  헷갈리는..?그래서 찾아보다가 제가 이해하기 쉽게  잘 적어주신 두 능력자님 블로그을 보게 되었습니다!해당 내용을 기억하기 쉽게 짬뽕해서 정리해보고자 합니다  :) [요약]동기/비동기는 전체적인 작업에 대한 순차적인 흐름 순서에 관련이 있다면,블로킹/논블로킹은 전체적인 작업의 흐름 자체를 막을 것인가, 아닌가의 차이입니다. 1. 동기와 비동기의 정의동기와 비동기의 핵심 문구는  "결과값을 기다린 다는 것" 입니다 [동기/비동기 ]* synchronous 는 작업 시간을 함께 맞춰서 실행한다는 뜻동기(synchronous): 작..
m1맥북 brew install 오류(Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)!) brew install로 git을 설치하려고 brew install git 을 쳤더니 아래와 같은 오류가 나왔습니다. Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)! To rerun under ARM use: arch -arm64 brew install ... To install under x86_64, install Homebrew into /usr/local. brew도 깔려있고 .... 뭐지 하다가 찾아서 해결한 방법! brew install 앞에 arch -arm64 를 붙이니까 정상적으로 설치되었습니다! (뭐때문인지 이유는...잘 모르겠습니다 ㅠㅠ) arch -arm64 brew install
뷰(vue) options api와 composition api의 라이프사이클(lifecycle) lifecycle 이란 ? vue의 인스턴스가 생성, DOM 트리에 마운트, 불필요한 엘리먼트를 제거하는 일련의 과정을 생명주기(life cycle) 이라고 합니다. 여기서 vue는 각 생명주기를 hooking 할 수 있는 방법을 제공하는데 이를 life cycle hook 이라고 합니다. 라이프 사이클을 잘 이해하고 사용해야하는 이유는? 프로그램에 대한 통제권을 가지기 위해서 입니다. 라이프사이클을 이해하면 컴포넌트의 생성, 변화하는 프로세스를 통제할 수 있게 됩니다. 내가 만든 프로그램이 어떻게 동작되는지 모른다면 복잡하고 또, 예외상황에 맞닿는다면 통제하기 어렵게 될 수도 있습니다. 프로젝트가 실행될 때, 인스턴스를 생성, 데이터 초기화, 데이터 감시설정, 템플릿컴파일, 인스턴스를 DOM에 마운트,..
[vue] vue 프로젝트 빌드 과정, 브라우저에 로드되는 과정 VUE BUILD vue 프로젝트를 빌드하게되면 Javascript 번들링 Vue CLI는 webpack과 babel을 이용하여 javascript 코드를 번들링 합니다. 이 과정에서 프로젝트의 여러 파일들이 하나의 번들파일로 합쳐지고 코드의 최적화가 이루어집니다. CSS, 이미지, 폰트 등의 번들링 Vue CLI는 프로젝트에서 사용하는 스타일시트, 이미지, 폰트 등의 리소스들을 적절히 번들링하여 최종 결과물에 포함시킵니다. HTML 파일 생성 VUE CLI로 vue 프로젝트를 생성하게 되면 기본적으로 public이라는 폴더에 index.html 파일을 생성합니다. 근데 index.html에는 js를 import 하는 코드가 없는데 ???... >> dist라는 폴더가 있는데 dist/index.htm..
1차원 객체를 spread operator(스프레드 연산자)로 복사하면 얕은 복사 일까 깊은 복사 일까? ✍깊은복사와 얕은 복사 관련 게시글 https://joyhong-91.tistory.com/41 [javascript] 변수 참조타입 메모리 접근 방식, 참조타입 복사가 필요한 이유 (shallow copy, deep copy) 목차 원시값, 참조값이란? 그리고 복사가 필요한 이유 얕은 복사의 정의와 방법 깊은 복사의 정의와 방법 들어가기전에! 자바스크립트 엔진은 가상머신으로 돌아가는데 버츄얼 머신 메모리 모 joyhong-91.tistory.com ✔1차원 배열, 1차원 객체는 복사를 하면 깊은 복사(deep copy)가 됩니다 복사한 객체를 수정하면 기존 객체에 영향 없습니다. const arr1Dth = [1,2,3,4]; const obj1Dth = {key: 'key1', value: 'valu..
SPA 클라이언트 NICE API 본인인증 구현하는 방법 샘플페이지와 적용사례 정보가 부족해서 적용하면서 삽질한 부분들을 기록해보고자 합니다! 적용해보면 진짜 로직 간단한데 적용하기 까지 과정이 쫌 다사다난했던... ㅠㅠ NICE API 본인인증을 현재 프로젝트에 적용하는 방법 (2가지) 1. NICE API 를 이용해서 적용하는방법 NICE API 홈페이지에 NICE와 계약한 계정을 로그인하고 들어가면 마이페이지(?) 에서 API 호출을 위한 [시크릿 키값] 이 있습니다. 이 [시크릿 값]으로 최초 1회 계약한 회사에 1:1로 기관토큰을 발급받아서 이용할 수 있습니다. (반영구적 사용가능) 발급받은 기관인증 토큰으로 나이스 본인확인 호출하기 위한 암호화토큰을 발급받습니다. (본인확인을 호출할때마다 발급, 유효기간이 있습니다.) 2. NICE 모듈을 이용해서 ..

반응형