리액트 컴포넌트와 JSX 문법: Virtual DOM의 기본 이해
·
웹개발/REACT
리액트(React)는 현대 웹 개발에서 중요한 역할을 하는 라이브러리입니다.리액트의 핵심 개념과 JSX 문법을 간단히 설명하겠습니다.리액트는 UI를 컴포넌트 단위로 나눕니다. 각 컴포넌트는 트리 구조를 형성하며, 이 구조는 실제 DOM과 유사합니다.컴포넌트 트리는 DOM과 같은 형태로 구성됩니다. 리액트는 Virtual DOM을 사용하여 성능을 최적화합니다.Virtual DOM에서 변경 사항을 적용한 후, 실제 DOM에 필요한 부분만 업데이트하여 효율적으로 렌더링합니다.리액트에서는 JSX(Java Script XML) 을 사용합니다.(강제는 아니지만 권장,, 매우매우 높은 빈도로 사용중입니다.)JSX는 JavaScript 안에서 HTML을 작성할 수 있는 문법입니다.컴포넌트를 정의하고, render 함수..
Redux, Recoil, 그리고 Zustand: 상태 관리의 진화 🚀
·
웹개발/REACT
리액트에서 상태 관리는 필수적인 부분이죠. 다양한 상태 관리 라이브러리 중에서 Redux, Recoil, 그리고 Zustand가 가장 많이 사용되고 있어요. 이 글에서는 이 세 가지 라이브러리를 차례로 소개하고, 최신 트렌드인 Zustand가 왜 주목받고 있는지 알아보겠습니다.recoil vs redux vs zustand | npm trends recoil vs redux vs zustand | npm trendsComparing trends for .npmtrends.comRedux: 전통적인 강자 🏆Redux는 리액트 애플리케이션에서 상태 관리를 위한 가장 오래된 라이브러리 중 하나예요. Redux는 전역 상태를 관리하기 위해 설계되었으며, 다음과 같은 특징이 있어요:단일 스토어: 모든 상태가 하..
React(리액트) vs Next.js(넥스트) 무엇을 써야하나요?
·
웹개발/Next.js
웹 개발을 하다 보면 한 번쯤 들어봤을 리액트(React)와 넥스트.js(Next.js)!이 둘의 차이점 중 하나는 바로 렌더링 방식이야. 그럼 이 두 강력한 툴의 렌더링에 대해 알아볼까? 🔥리액트: 클라이언트 사이드 렌더링(CSR)의 대표주자! 🌐리액트는 클라이언트 사이드 렌더링(CSR)을 사용해. 여기서 "렌더링의 주체가 클라이언트"라는 말이 무슨 뜻이냐고? 쉽게 말해, 웹 브라우저에서 모든 걸 처리한다는 뜻이지.리액트 렌더링 방식웹 브라우저에서 렌더링이 이루어짐페이지 소스를 보면 자바스크립트로 가득 찬 파일들만 보임검색엔진 최적화(SEO)에 불리할 수 있음 🤔리액트 공식 홈페이지에 가서 페이지 소스를 보면, 실제 화면에 보이는 텍스트나 버튼 등이 HTML 소스에는 없고, 자바스크립트 파일로만 ..
Next.js로 웹사이트 라우팅 완벽 가이드
·
웹개발/Next.js
라우팅(Routing)라우팅은 사용자가 요청한 URL에 따라서 어떤 페이지를 보여줄지 결정하는 과정을 말해요.Next.js에서는 앱 라우팅과 페이지 라우팅을 통해 URL 경로와 페이지 파일을 직접 연결합니다.사용자가 /about 경로를 입력하면, Next.js는 해당 경로와 맞는 페이지를 표시합니다. 일종의 웹 네비게이션이라고 생각하면 됩니다. 라우터(Router)라우터는 이러한 라우팅을 관리하고 처리하는 기능을 제공하는 도구입니다. Next.js에서 페이지 라우터는 next/router, 앱 라우터는 next/navigation이 라우터 관리 도구입니다. 저희는 해당 도구에서 제공하는 여러가지 훅과 컴포넌트를 사용하여 페이지를 탐색합니다. 간단히 말해서 라우터는 사용자의 URL을 해석하고 해당 URL에..
Next.js 이미지 삽입
·
웹개발/Next.js
Next.js 14에서 이미지를 효과적으로 관리하고 사용하는 방법을 알아보겠습니다.Next.js는 public 폴더를 사용하여 이미지를 관리하며, 내장된 Image 컴포넌트를 통해 성능 최적화된 이미지를 쉽게 사용할 수 있습니다.public 폴더에 이미지 저장Next.js에서는 이미지를 public 폴더에 넣어 사용합니다.// page.tsx// public/images 하위에 이미지를 넣었을 경우export default function Page() { return ( );}  Image 컴포넌트 사용Next.js는 이미지를 처리할 수 있는 Image 컴포넌트를 제공합니다.이를 통해 이미지 로딩 성능을 최적화할 수 있습니다. 로컬 이미지 사용로컬에 저장된 이미지를 Image..
Next.js 폰트 적용 방법
·
웹개발/Next.js
Next.js 14에서의 폰트 적용 방법을 알아보겠습니다.구글 폰트를 어떻게 설정하고 사용할 수 있는지 단계별로 설명드리겠습니다! 더보기font`와 `img`, `css` 같은 파일은 `public` 폴더 하위에 넣는 것을 권장합니다.  기본 폰트 추가Next.js는 구글 폰트에서 제공하는 폰트를 지원하는 ‘next/font/google’ 패키지를 제공합니다.import { 글꼴명 } from "next/font/google"; // 문법import { Nanum_Pen_Script } from "next/font/google"; // 예제  예시// public/fonts/google_fonts.tsimport { Nanum_Pen_Script, Noto_Sans_KR } from "next/font/..
Next.js 14 스타일 적용 알려드립니다
·
웹개발/Next.js
Next.js 14에서의 스타일링 방법을 알아보겠습니다.특히, Next.js 공식 팀이 권장하는 테일윈드 CSS를 중심으로 설명드리겠습니다. 테일윈드(Tailwind CSS)테일윈드는 Next.js 공식 팀이 권장하는 스타일링 방법 중 하나입니다. 설치 과정에서 테일윈드 설치 여부를 물어보며, 이를 통해 손쉽게 스타일링을 시작할 수 있습니다.Next.js 보일러 플레이트 생성 과정에서 테일윈드 사용 여부를 Yes로 선택하면, 별다른 설정 없이 자동으로 포함됩니다. 테일윈드는 처음부터 도입해서 사용하는 것을 권장합니다. 중간에 설치를 원한다면, 공식 문서를 참고해서 그대로 설치하면 됩니다. 테일윈드 공식 문서 - Next.js 가이드  Install Tailwind CSS with Next.js - Tai..
Next.js 설치하기
·
웹개발/Next.js
안녕하세요, 웹 개발자 여러분!오늘은 Next.js설치 방법을 알려드리려고 합니다.여러분도 아시다시피, Next.js는 요즘 대세죠? 저도 처음에는 살짝 어려워 보였지만, 실제로 해보니 너무 간단하고 강력하더라구요!Next.js 설치 방법먼저, 다음 명령어를 실행해 Next.js 프로젝트를 만듭니다:$ npx create-next-app@latest .령어를 입력하면 다음과 같은 질문들이 나옵니다. 하나씩 답해볼게요!Would you like to use TypeScript?: 원하시면 Yes, 아니면 No.Would you like to use ESLint?: 코드 품질을 위해 Yes 추천!Would you like to use Tailwind CSS?: 당연히 Yes! Would you like to..