목록Backend (4)
Zero To One

1. MVC 패턴이란? - 모델 (Model), 뷰(View), 컨트롤러 (Controller)로 이루어진 디자인 패턴 - 애플리케이션의 구성 요소를 3가지 역할로 구분하여 개발 프로세스에서 각각의 구성 요소에만 집중해서 개발 가능 - 장점 : 재사용성, 확장성 - 단점 : 애플리케이션이 복잡해질수록 모델과 뷰의 관계가 복잡해짐 2. 구성요소 2-1. 모델 - 데이터와 비즈니스 로직을 관리 - 앱이 포함해야할 데이터가 무엇인지를 정의한다. (데이터베이스, 상수, 변수 등) - 뷰 (View)에서 데이터를 생성하거나 수정하면 컨트롤러를 통해 모델을 생성하거나 갱신한다 2-2. 뷰 - 레이아웃과 화면을 처리 - 뷰는 항목이 사용자에게 보여지는 방식을 정의하며, 표시할 데이터를 모델로부터 받는다 - 모델이 가..

디버깅이란? : 코드에 어디서 문제가 초래되었는지 예상하면서 문제가 되는 부분을 찾아 버그를 찾은다음 잡아나가는 과정 우리가 예상하는 (원하는) 문제나 목표를 정확하게 정의하고, 현재 어떻게 버그가 발생하는지의 갭을 매꾸어 나가는 과정 갭(Gap)을 매꾸는데 있어서, unit testing, integration testing, control flow analysis, log ifle analysis/print logs, interactive debugging, memory dumps, profiling이 포함된다. Visual Studio에서 디버거를 사용하는 법 보고자 하는 코드라인에 숫자 옆에 빨간색으로 표시한다. 왼쪽 벌레표시를 누르고 Run current file을 선택하고 run and deb..
1. buffer : 메모리에서 고정된 사이즈의 메모리 덩어리, 배열의 형태, byte of data const buf = Buffer.from('Hi'); console.log(buf) // 48 : H, 69: i -> 유니코드 console.log(buf.length) // 2 console.log(buf[0]); //72 : H , 배열로 접근하면 아스키코드로 나옴 console.log(buf[1]); //105 : i console.log(buf.toString('utf-8')); // Hi, 문자열 형태로 변환 // creat buffer const buf2 = Buffer.alloc(2); //사이즈가 2개인 버퍼를 만듬, 메모리에서 가용가능한 덩어리를 찾아서 초기화 시켜줌 const buf..
1. os 정보 : 다양한 운영체제에서 내 서버가 동작하고 있는 환경에 대한 정보를 얻어올 수 있다. const os = require('os') console.log(os.totalmem()); console.log(os.freemem()); console.log(os.type()); console.log(os.userInfo()); console.log(os.cpus()); console.log(os.homedir()); console.log(os.hostname()); 출력 결과 > node app.js 16507834368 10154803200 Linux { uid: 1000, gid: 1000, username: 'jaehyeok', homedir: '/home/jaehyeok', shell: ..