본문 바로가기

개발33

Next.js 시작하기 - Drag and Drop 만들기 (1) IndexedDB 시작하기...Trello 클론 코딩의 가장 메인 기능이라고 할 수 있는 드래그앤드롭 기능을 구현할 차례다. 라이브러리를 사용하는 방법도 있지만, 사용하지 않고 개발을 해볼 예정이다. 그냥 Drag and Drop은 간단하지만, Trello에서 제공하는 Drag and Drop 기능은 생각보다 복잡하다. 각각의 카드별로 드래그앤드롭이 가능한 것 뿐만 아니라 내부에 있는 카드 또한 자유롭게 이동이 가능한 구조로 되어있다. 우선, 간단하게 UI를 만들어보자. Draggable"use client";import React, { useState, useEffect } from "react";import { Card, Button } from "@mui/material";import { useMutation } f.. 2024. 8. 4.
AWS EC2와 ECS 그리고 Docker AWS, 아는 만큼 보인다전 직장에서는 클라우드 서비스를 사용하지 않았다. 언제 샀는지 알 수 없고, 더 이상 부품조차 구할 수 없는 오래된 물리 서버로 모든 것을 해결했다. 하지만 이제 AWS를 사용하는 곳으로 왔으니, 다시 클라우드 서비스의 대표 AWS의 개념을 오랜 기억속에서 꺼낼 때가 되었다. ECS, EC2 뭐가 다른가? Amazon Elastic Container Service란 무엇입니까? - Amazon Elastic Container ServiceAmazon Elastic Container Service란 무엇입니까? Amazon Elastic Container Service(Amazon ECS)는 컨테이너 애플리케이션을 쉽게 배포, 관리 및 확대할 수 있도록 도와주는 완전 관리형 컨테이.. 2024. 7. 29.
Next.js 시작하기 - 간단한 Login 페이지 만들기 (4) React-Query React Query를 더 관리하기 좋게 만드는 법은 없을까?코드를 쪼갤 수 있을 만큼 쪼개고 관리하기 좋은 형태로 리팩토링하는 것은 어쩔 수 없는 프론트엔드 개발자의 고민이다. React-Query는 정말 좋은 기능들을 제공하지만, 많은 기능이 있는 만큼 코드가 굉장히 길어질 수도 있다. 어떻게 보면 React Query 또한 API 호출 함수와 같이 한 곳에 저장해뒀다가 필요할 때 마다 호출한다면 참 좋을 것 같은데, 더 나은 관리 방법은 없는 것일까? 기존의 React-Query를 개선해보자동일한 react-query문을 하나의 파일에서 필요할 때 마다 생성해서 사용하는 것은 코드를 길게 만들고 불필요한 반복 작업을 요구한다. 또한 기능이 변경될 필요가 있을 때, 해당 기능이 적용된 페이지마다 작업.. 2024. 7. 15.
Next.js 시작하기 - 간단한 Login 페이지 만들기 (3) React-Query React-Query 사용하기지금부터 간단한 Login api를 React-query를 사용하여 구현해볼 예정이다. 앞서 언급했듯이, React-Query는 프론트엔드 api 사용에 있어 다양한 편의기능을 제공해 준다. 대표적으로 data가 갱신되면 useState를 사용할 필요 없이, 해당 data의 상태 변화를 확인하고 랜더링이 되는 기능부터, 페이지별 데이터 호출, loading 감지 등의 기능을 제공한다. 더 자세한 내용은 아래의 카카오 기술 블로그를 참고하면 좋을 것 같다. 카카오페이 프론트엔드 개발자들이 React Query를 선택한 이유 | 카카오페이 기술 블로그카카오페이 프론트엔드 개발자들이 React Query를 선택한 이유에 대해 설명합니다. 이 글은 연작 중 1편에 해당합니다. 1편:.. 2024. 7. 6.
기술 면접 준비 - React (5) 完 라이브러리와 프레임워크의 차이라이브러리는 특정 목적을 수행하기 위해 개발됨. 제어권이 개발자에게 있음프레임워크는 건축 설계도를 그릴 수 있는 도구와 같은 목적으로 개발됨. 제어권이 개발자에게 있지 않으며, 프레임워크의 규칙을 따라야 함.리액트를 선언형 프로그래밍이라 하는 이유는? 프로그래밍 패러다임에 대해(선언형 vs 명령형)프로그래밍 패러다임은 프로그래머에게 프로그래밍의 관점을 갖게 하고 코드를 어떻게 작성할 지 결정하는 역할을 한다. 새로운 프로그래밍 패러다임을 통해서 새로운 방식으로 생각하는 법을velog.io 선언형어떤 로직으로 어떻게 코드를 짜야 페이지가 그려질 수 있는지에 대하여 생각하기 보다, 컴포넌트나 데이터의 배치를 통해 무엇이 렌더링될지에 대해 고려하는 것이 선언형 ui의 특징이다. R.. 2024. 6. 29.
기술 면접 준비 - Typescript 기본 (4) 다형성디형성이란 제네릭과 같이 특정 객체가 하나의 타입이 아닌 여러 가지 타입으로 표현될 수 있어서 재사용 가능한 형태로 구현될 수 있는 것을 말한다.대표적 예시:제네릭 : 데이터 타입을 일반화한 것으로 선언 시점이 아니라 생성 시점에 타입을 명시하여 다양한 타입을 사용할 수 있도록 하는 기법이다.오버라이드 : 오버라이드는 상위 클래스의 메서드를 하위 클래스에서 재정의하는 것을 말한다. 메서드의 이름과 파라미터 개수, 타입이 동일해야 한다. 주로 상위 클래스의 동작을 상속받은 하위 클래스에서 변경하는 용도로 사용된다.오버로딩: 같은 이름의 메서드나 생성자를 여러개 정의하는 것을 말한다. 이름은 같지만 매개변수의 개수나 타입이 다르게 정의된다.타입 시그니쳐란 무엇인가function functionName .. 2024. 6. 24.
728x90
반응형