728x90
반응형

Study/BackEnd 7

홈브류(Homebrew)란?

Homebrew란? Homebrew는 터미널에서 명령을 실행하여 패키지 설치 및 제거를 용이하게 하는 Mac OS용 패키저 매니저 기능을 담당합니다. Homebrew 설치 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 저는 설치 이후에 brew --version을 입력했는데 brew가 없다고 나왔습니다.. Warning: /opt/homebrew/bin is not in your PATH 라는 에러코드가 있었는데 PATH에 등록되어 있지 않아서 뜨는 에러입니다. echo 'export PATH=/opt/homebrew/bin:$PATH' >> ~/.zshrc 명령어를 입력하여..

Study/BackEnd 2021.09.29

동기 vs 비동기, 블로킹 vs 논블로킹

동기 (synchronous) 요청 후 응답을 받아야 다음 동작이 이루어지는 방식입니다. (작업완료 여부를 호출한 쪽에서 신경씁니다) 설계가 간단하고 직관적이지만 결과가 주어질 때까지 아무것도 못하고 대기해야합니다. // 동기적 코드 console.log('A'); console.log('B'); console.log('C'); /* 결과 1 2 3 */ 비동기 (asynchronous) 요청 후 응답을 받지 않아도 다음 동작이 이루어지는 방식입니다. (작업완료 여부를 호출된 쪽에서 신경을 씁니다.) 동기보다 복잡하지만 특정 결과가 주어지는 시간 동안 다른 작업을 할 수 있으므로 자원을 효율적으로 사용할 수 있습니다. // 비동기적 코드 function asyncFunc() { console.log('A..

Study/BackEnd 2021.08.31

NestJS란

NestJS는 효율적이고 안정적이며 확장성이 뛰어난 서버를 구축하기 위한 Node.js의 프레임워크 입니다. TypeScript 참고 타입스크립트(TypeScript)란? TypeScript란? TypeScript는 MS에 의해서 개발과 관리되고 있는 오픈소스 프로그래밍 언어입니다. 그리고 자바스크립트의 슈퍼셋입니다. (슈퍼셋이란 A >= 일 경우, A는 B의 슈퍼셋이라고 할 수 있습니다 ujam.tistory.com NestJS 특징 TypeScript 및 OOP (객체 지향 프로그래밍), FP (기능 프로그래밍), FRP (기능 반응성 프로그래밍) 요소를 결합합니다. Nest는 typescript를 사용하여 DI(Dependency Injection), IoC(Inversion of Control),..

Study/BackEnd 2021.08.30

객체 지향 프로그래밍(OOP, Object-Oriented Programming) 이란?

객체 지향 프로그래밍 이란? 객체 지향적인 프로그래밍(OOP, Object-Oriented Programming)이란, C와 같은 절차 지향적인 프로그래밍이 아닌 객체의 관점에서 프로그래밍을 한다는 것입니다. OOP는 절차지향에 비해서 사람의 사고방식과 더 가깝습니다. 그리고 OOP는 객체들의 유기적인 관계를 통해서 프로세스가 진행됩니다. OOP 특징 1. 캡슐화 (Encapsulation) - 특정한 객체에 대해서 해당 객체가 필요한 변수나 메소드를 하나로 묶는것을 의미합니다. 2. 추상화 (Abstraciton) - 객체들의 공통된 속성들을 파악하여 클래스를 정의하는 것입니다. 3. 상속성 (Inheritance) - 상위 개념의 특징을 하위 개념이 물려받는 것입니다. (부모클래스가 자손 클래스에게 ..

Study/BackEnd 2021.08.18

Sequelize 란? 설치 및 사용법

Sequelize 란? Sequelize는 node.js 라이브러리로써 mysql등 과 같은 관계형 데이터베이스를 쉽게 다룰수 있게 도와주는 라이브러리입니다. Sequelize는 node.js 대표적인 ORM입니다. ORM 이란? ORM (Object Relational Mapping) 이란? ORM이란? ORM이란 Object Relational Mapping의 약자로 관계형 데이터베이스 관리 시스템(RDBMS)(Relational Database Management System)과 객체 지향 프로그래밍 언어(OOP)(Object Oriented Programming) 사이에.. ujam.tistory.com Sequelize 설치 방법 sequelize와 mysql을 사용할거기 때문에 mysql2를 ..

Study/BackEnd 2021.08.14

Node.js 란?

Node.js란? 위키백과에 아래와 같이 정의되어 있습니다. Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다. 특징 Single-Thread의 non-blocking I/O 이벤트 기반 비동식 방식으로 작동한다. JavsScript 엔진(V8 Engine)로 빌드 된 JavaScript 런타임이다. 장점 자바스크립트를 사용하여 서버를 처..

Study/BackEnd 2021.08.10

MVC 패턴이란?

MVC란 MVC 는 Model, View, Controller의 약자 입니다. 하나의 애플리케이션, 프로젝트를 구성할 때 그 구성요소를 세가지의 역할로 구분한 패턴입니다. MVC패턴은 디자인 패턴 중 하나입니다. 디자인 패턴은 프로그램이나 어떤 특정한 것을 개발하는 중에 발생했던 문제점을 정리해서 상황에 따라 간편하게 적용해서 쓸 수 있는 것을 정리하여 특정한 규약을 통해 쉽게 쓸 수 있는 형태로 만든 것입니다. 어떠한 앱을 만들 때 앱을 유지보수를 하고 공유를 하면서 만들 때 더 쉽고 깔끔하게 만들 수 있는 방법을 고안해야 됩니다. 만약 이러한 방법들을 만들지 않는다면 클래스 함수들을 일일히 다 만들어야 할겁니다. M (model, domain) M은 Model 입니다. Model이란 프로그램이 작업하..

Study/BackEnd 2021.08.08
728x90
반응형