목록2022/04 (16)
치춘짱베리굿나이스
signal이란? 프로그램 구동 중에 Interrupt가 발생했을 때, 프로세스에 어떠한 Interrupt가 발생했음을 알리는 간단한 메시지를 전송하는 것 signal을 받은 프로세스는 해당 시그널이 무엇인지에 따라 지정된 기본 동작을 수행하거나, 사용자가 정의한 함수에 의해 무시하거나, 또는 사용자 정의 함수를 통해 특별한 처리를 해 줄 수 있다 예시 프로세스 동작 중에 ctrl + c를 누르면 프로세스가 종료 (kill) 되는 현상도 Signal이 발생하였다고 볼 수 있다 Signal 함수 종류 헤더에 기본적인 동작들과 signal 관련 함수들이 정의되어 있음 기본적으로 정의된 동작은 주로 프로세스를 종료하거나, 코어 덤프를 생성 Kill int kill(pid_t pid, int sig); Kill..
eslint Javascript & JSX의 정적 분석 도구 Javascript는 코드 실행 후에 에러를 파악할 수 있는데 (동적 분석), 이를 실행 없이도 코드 내에서 바로 찾을 수 있도록 (정적 분석) 도와주는 도구이다 eslint는 코드 그 자체를 분석해 문법 오류나 안티 패턴 (패턴을 지키지 않은 부분) 을 찾아주어 일관된 코드 스타일을 유지하게 해 준다 설치하기 npm install eslint -D -D 옵션은 개발 단계에서만 해당 도구를 사용하겠다는 의미이다 (배포 단계에서는 적용되지 않는다는 뜻) 설정하기 npx eslint --init Javascript에서 React를 이용하여 개발하고자 한다면 다음과 같이 설정한다 세팅이 완료되면 eslintrc.js 파일이 생성된다 (json 형식을..
create-react-app으로 리액트 환경 세팅하기 npm 설치하기 (+ npx) Nodejs, npm, npx nodejs, npm, npx Node.js Node.js Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 오픈소스 자바스크립트 엔진에 비동기 이벤트 처리 라이브러리를 결합한 플랫폼으로, 자바스크.. blog.chichoon.com npm은 node.js 기반 패키지들을 쉽게 설치하고 관리하도록 도와주며, npx는 이러한 패키지들을 쉽게 실행시킬 수 있도록 돕는다 최신 버전 Node.js를 설치하면 npm과 npx가 따라온다 버전 체크 npm -v npx -v create-r..
Node.js Node.js Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 오픈소스 자바스크립트 엔진에 비동기 이벤트 처리 라이브러리를 결합한 플랫폼으로, 자바스크립트 코드를 브라우저 밖에서도 실행할 수 있도록 돕는 런타임 환경이다 자바스크립트를 브라우저 밖에서도 실행시킬 수 있는 덕에 자바스크립트 관련 도구들과 프레임워크들은 모두 node.js를 기반으로 동작하며, 입출력 처리 성능, 서버 확장, 자바스크립트로의 백엔드 서버 구축 등 다양한 장점으로 사용률을 높일 수 있었다 설치하기 brew install node # 업그레이드는 brew upgrade node node -v # 버전 ..
spread 문법 배열 또는 객체 안에 있는 내용물들을 전개하는 역할을 한다 배열에 스프레드 구문을 사용할 경우, 배열을 감싸는 대괄호가 사라지고 내용물만이 반환된다 배열 스프레드를 이용하여 배열 합치기 let arr1 = [var1, var2, var3]; let arr2 = [...arr, var4, var5]; //[var1, var2, var3, var4, var5] let arr3 = [...arr, ...arr] //[var1, var2, var3, var1, var2, var3]; 스프레드 구문은 한 배열을 만들 때 여러 번 사용 가능하다 객체 스프레드를 이용하여 객체 합치기 let obj1 = { var1: 'hello', var2: 'good afternoon'..
비구조화 할당 / 구조분해 할당 배열이나 객체의 속성을 해체하여 개별 변수에 그 값을 담을 수 있는 문법 구조를 분해해서 각각의 원소를 할당하기 때문에 구조분해 또는 비구조화 할당이라고 불린다 쉽게 말하면 오른쪽의 배열 / 객체 원소를 왼쪽의 [] 또는 {} 로 감싸진 변수들에 각각 할당해주는 문법이다 배열 비구조화 할당 let [a, b] = [1, 2] // a = 1, b = 2 좌측 배열의 길이와 우측 배열의 길이가 같을 경우, 순서대로 일대일 대응한다 let [a, b, c] = [1, 2, 3, 4, 5] // a = 1, b = 2, c = 3 좌측 배열의 길이가 우측 배열의 길이보다 짧을 경우, 좌측 배열 기준으로 값을 할당한다 let [a, b, c] = [1, 2]; // a = 1, ..
예쁜걸 다른 사람들과 나눌 수 있는 방법은 많다고 생각 굳이 보여주기식 sns에 매몰되어 감정을 낭비할 필요는 없는듯 그리고 결정적으로 인스턴트성 게시글에 너무 시간을 많이 쏟는 것 같다 하나씩 다 줄여야지 카카오톡도 뷰 탭에 뉴스나 게시글 나오는거 없는 라이트버전같은거 나오면 좋겠다 라인 라이트는 괜찮았던거같은데 나름 자꾸 안보려고 하면서도 슬쩍 들어가서 보게 됨 근데 카톡 특성상 지울수는 없고 그런데에 쏟는 시간과 에너지가 아깝다 인간관계도 비슷하게 나와 별로 중요한 사이도 아니고 어차피 곧 연락도 안될 사람들한테 그렇게 에너지 많이 쏟을필요 없는듯 그렇다 맨날 다짐은 하지만 못지키고있는 그것이다