전체 글
-
백엔드 프레임워크 Nest.js란?Nest.js 2026. 5. 27. 13:38
1. 등장 배경Nest.js 등장 전 Node.js 생태계는 Express가 사실상 표준이었으나, 서비스 규모가 커지면서 구조적 한계에 직면했습니다.자유가 초래한 아키텍처 부재Express는 폴더 구조나 라우팅 규칙에 대한 강제성이 없어 초기 구축이 매우 빠릅니다.문제점: 프로젝트가 커지고 협업 인원이 늘어나면 개발자마다 코딩 스타일이 파편화되어 유지보수가 불가능한 스파게티 코드가 되기 쉽습니다.결론: Java의 Spring처럼 대규모 프로젝트를 안정적으로 지탱해 줄 '정형화된 표준 아키텍처'가 간절해졌습니다.2. Nest.js란?Nest.js는 Node.js 환경에서 구조적이고 확장 가능한 서버 측 애플리케이션을 구축하기 위한 프레임워크입니다. Express의 높은 자유도 대신 정형화된 모듈 시스템을 ..
-
Node.js란? 노드 개념 이해하기Node.js 2026. 4. 23. 00:30
노드란 무엇인가?공홈에는 이렇게 나와있다.Node.js는 V8 Javascript 엔진을 기반으로 구축된 Javascript 런타임입니다. 과거에 자바스크립트는 웹 브라우저 안에서 애니메이션을 만들거나 버튼을 클릭하는 등의 용도로 쓰였지만,Node.js의 등장으로 서버 구축, 앱 개발 등 다양한 분야에서 쓰이게 되었다. 즉 Node.js는 자바스크립트를 브라우저 밖에서도 실행할 수 있게 해주는 환경이다. 🌟 특징- V8 엔진 기반: 구글 Chrome에서 사용하는 V8 엔진을 사용하여 매우 빠름- 이벤트 기반, 비동기 I/O: 한 작업이 끝날 때까지 기다리지 않고 다음 작업을 바로 수행함- 싱글 스레드: 한번에 하나의 작업 흐름을 가지지만 비동기 처리를 통해 마치 여러 작업을 동시에 하는 것처럼 효율적으..
-
화살표함수와 일반함수 차이점& 호이스팅html.css.js/javaScript 2024. 6. 24. 22:59
화살표 함수 (Arrow Function)렉시컬 스코프화살표 함수는 자신이 정의된 위치에서의 this 값을 상속받습니다.따라서 화살표 함수 내에서 this를 사용할 때, 이는 화살표 함수가 정의된 외부 스코프의 this와 동일합니다.문법적 특징function 키워드를 사용하지 않고, 더 간결한 문법을 사용합니다.const myArrowFunction = () => { console.log(this); }일반 함수 (Regular Function)동적 스코프 일반 함수의 경우, this는 함수가 호출될 때 결정됩니다. 이는 해당 함수가 어떻게 호출되었는지에 따라 달라집니다.문법적 특징function 키워드를 사용하여 정의합니다.function myRegularFunction() { console.log(t..
-
MariaDB Server설치하기and so on 2024. 6. 15. 16:43
오늘은 울고싶은날ㅜㅜ백엔드의 길은 멀고도 험난하다...1. 설치 환경MacBook Air 15macOS 13.4 2. 설치 방법자세하게 나와있어서 차례대로 설치해나가면 된다!https://mariadb.com/kb/ko/installing-mariadb-on-macos-using-homebrew/ Homebrew로 macOS에 MariaDB Server 설치Homebrew 패키지 매니저를 이용해서 MariaDB Server를 macOS (이전 Mac OS X) 설치할 수 있습니다. MariaDB Server는 미리 컴파일된 Homebrew "bottle" 패키지로 이용 가능하며, 소스 빌드가 필요 없어 시간을 절약해mariadb.com Homebrew 설치후에는Homebrew로 MariaDB server..
-
1과목 데이터 모델링의 이해SQLD 2024. 5. 10. 19:21
⬛ 제 1장 데이터 모델링의 이해🌓 데이터 모델링의 특징추상화현실세계를 일정한 형식에 맞추어 표현하는 추상화의 의미단순화복잡한 현실을 제한된 언어나 표기법을 통해 이해하기 쉽게 하는 단순화의 의미를 가지고 있음명확화애매모호함을 배제하고 누구나 이해가 가능하도록 정확하게 현상을 기술하는 정확화(=명확화) 🌓 데이터 모델링이란?정보시스템을 구축하기 위한 데이터 관점업무 분석기법현실세계의 데이터에 대해 약속된 표기법에 의해 표현하는 과정데이터베이스를 구축하기 위한 분석,설계의 과정🌓 데이터 모델링을 할 때 유의할 점 ( 중복, 비유연성, 비일관성 )여러 장소의 데이터베이스에 같은 정보를 저장하지 않도록 하여 중복성을 최소화한다. (중복)데이터의 정의를 데이터의 사용 프로세스와 분리하여 유연성을 높여 ..
-
[노마드] 당근마켓 클론코딩 # 초기 셋팅카테고리 없음 2024. 2. 1. 02:32
NextJS 셋팅하기 npx create-next-app@12.0.7 --typescript npm i next@12.0.7 react@18.0.0-rc.0 react-dom@18.0.0-rc.0 > nextJS 최신 버전이 14인데 , 처음에 노마드코더는 nextJS 12 버전을 사용하고 있어서 폴더 구조가 좀 달라서 많이 당황했다;; 레포지토리 생성 rm -rf .git git init git remote add origin 원격 레포지토리 주소 Tailwind 설치하기 npm install -D tailwindcss postcss autoprefixer npx tailwindcss init -p 이렇게 입력하면 postcss.config.js와 tailwind.config.js 파일이 생김 tail..
-
[ 알고리즘]문자열을 반복하는 아주 간단한 메서드 repeat()Algorithm 2024. 1. 11. 00:18
문제 문자열 str과 정수 n이 주어집니다. str이 n번 반복된 문자열을 만들어 출력하는 코드를 작성해 보세요. const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); let input = []; rl.on('line', function (line) { input = line.split(' '); }).on('close', function () { str = input[0]; n = Number(input[1]); }); 입력값 string 5 생각과정 console.log(input)을 하니 [ 'string', '5' ] 라는 결과값..
-
[알고리즘] 기초부터 갈고 닦기Algorithm 2024. 1. 9. 23:03
리액트를 공부를 하다가 리액트가 지금이야 대세이긴 하지만 몇년이나 갈 줄 모른다는 글들을 보았다. 그만큼 기술이 빠르게 변화한다고 하니 자바스크립트는 평생 쓰기 때문에 리액트개발자가 아니라 자바스크립트를 쓸 줄 아는 리액트 개발자가 되어야한다!는 생각이 들었다. 그래서 자바스크립트 공부도 할겸 알고리즘도 풀면서 차근차근 공부해보려고한다. 아주 쉬운 문제부터 하루에 풀 수있는 데까지 풀어나갈 생각이다. 최소 1문제 이상은 풀어보도록 해야겠다. 문제는 프로그래머스 코딩테스트 기초 문제에서 가져온 문제이다. https://school.programmers.co.kr/learn/challenges/training?order=acceptance_desc 코딩 기초 트레이닝 | 프로그래머스 스쿨 프로그래밍 언어를 ..