본문 바로가기

IT216

[Typescript] enum vs union 결론 enum 보다는 union type 이유 컴파일 해보면 객체가 생성됨 > typescript 사용 이유가 정적 타입을 사용하기 위함인데, 정적 타입 정보가 런다음에 영향을 준다는 사실이 썩 내키지 않는다. > const enum을 사용해도 되지만, import 구문이 추가됨 enum Fruite { Banana, Apple, Orange } complied "use strict"; var Fruite; (function (Fruite) { Fruite[Fruite["Banana"] = 0] = "Banana"; Fruite[Fruite["Apple"] = 1] = "Apple"; Fruite[Fruite["Orange"] = 2] = "Orange"; })(Fruite || (Fruite = {}).. 2024. 2. 5.
oh my zsh로 업무 생산성 높히기 소개 oh my zsh를 이용해서 엽무 편의를 위해 많은 기능을 제공해줍니다. 그중에 제가 사용하는 것들을 소개하려 합니다. 너무 많은 기능들을 추가하면 shell 실행 시 느려집니다. 꼭 필요한 것들만 사용하길 권장합니다. oh my zsh oh my zsh는 zsh 설정관리를 위한 프레임워크 입니다 plugins, theme 사용을 위해 설치가 필요합니다 설치 방법은 https://ohmyz.sh/ 참고해주세요 (zsh shell이 먼저 설치되어 있어야 합니다.) 작업중인 branch 이름 terminal에 표시 기본적으로 git plugin이 설치되어 있어 현 작업중인 branch 이름이 노출됩니다. 작업 바쁘게 하다보면 branch를 새로 생성해야 할 때 못하여 작업이 꼬인적이 몇번 있다. 이 t.. 2024. 1. 21.
CSS 우선순위 같은 속성이 동시에 부여 될 때 우선순위를 매김 기본 룰 - 뒤에 선언하는 css가 우선순위가 높다. (CSS 이름에서 부터 짐작 할 수 있음) - 높은것부터 나열 - !important - inline style - id - class - 다른 attribute - pseudo class ex) first-child - tag element - pseudo element ex) ::before - 우선순위가 같다면 개수가 많은 선언이 우선순위가 높다 (올림픽 랭킹 산정 로직) class 끼리 우선순위 현업에서 헷갈리는 케이스에 대해 좀더 설명하려 한다. class끼리 곂쳤을 때에도 우선순위를 결정해야한다. class 끼리 우선순위는 마치 올림픽 메달 개수에 따라 랭킹을 매기는 방식과 같다. 은메달 10.. 2024. 1. 9.
firebase web hosting 배포 시 node.js 버전 해결 방법 github action을 통해 잘 되던 자동 배포가 갑자기 안되어서 확인해보니 아래와 같은 에러가 노출되었다. 확인해보니 firebase-tools가 노드 16버전을 지원을 안한다고 한다. 에러 내용 Deploying to production site 18 /opt/hostedtoolcache/node/16.20.2/x64/bin/npx firebase-tools@latest deploy --only hosting --project portfolio-1a12f --json 19 npm WARN exec The following package was not found and will be installed: firebase-tools@13.0.2 20 npm WARN EBADENGINE Unsupport.. 2023. 12. 17.
[운영체제] 프로세스와 쓰레드 프로세스 명령어의 집합체. 즉, 작업이라고 이해하면 됨 최소 1개의 Thread 존재 PCB OS에서 프로세스 상태 관리 - pid (process id) - 실행중인 코드 (기계어) 명령어의 메모리 주소를 담고 있음 cpu core 8가 있다고 가정해보자. process는 100개 있고 process내 쓰레드는 3000개가 있다고 했을 경우, 3000개가 cpu를 쓰겠다고 할경우 병목현상이 날 수 있으니 줄을 새우고, 시분할 사용한다. 너무나 빠른 속도로 전환하니 마치 동시에 작업되는것 처럼 느껴진다. 쓰레드 Virtual Memory에서 Process 내에서만 명령어의 실행 흐름 쓰레드 마다 각자 Thread Local Storage를 고유하고 있음 멀티 쓰레딩 동시성과 동기화 이슈가 항상 생김 he.. 2023. 10. 29.
[운영체제] DMA (Direct Memory Access) 개요 인터럽트를 통해 I/O를 제어하기엔 소량의 데이터를 최적화 되어있기에 대량을 데이터를 한번에 보낼 때 높은 오버헤드를 유발 할 수 있다. 그래서 나온 기술을 DMA 이다. 개념 CPU의 직접적인 개입 없이 주변 장치(디스크 드라이브, 네트워크 인터페이스 또는 그래픽 카드 등)가 시스템 메모리와 직접 데이터를 블록 단위로 전송할 수 있도록 하는 기능 1btye 씩 전송되는 인터럽트와 다르게 데이터 블록 전송이 완료될 때마다 인터럽트가 발생한다. 디바이스가 전송작업을 하는 동안 CPU는 다른 작업이 가능하다. 2023. 10. 28.