IT 언어 연구소/코드 리뷰 모음집

React - 성능 최적화, 불필요한 렌더링 방지를 위한 코드 리뷰

오늘은 React에서 불필요한 렌더링을 방지하여 애플리케이션의 성능을 개선하는 방법에 대해 알아보려고 합니다. 제가 최근에 받은 코드 리뷰 요청 중에서 이 문제를 잘 보여주는 예시를 하나 골랐습니다. 요청 받은 코드 요청받은 코드는 아래와 같습니다. import React, { useState } from 'react'; function UserProfile({ user }) { const [age, setAge] = useState(user.age); return ( {user.name} {age} setAge(age + 1)}>Increase Age ); } export default UserProfile; 위 코드는 UserProfile 컴포넌트를 정의하고 있습니다. 이 컴포넌트는 user 객체를 ..

2023.07.30 게시됨

IT 언어 연구소/코드 리뷰 모음집

Python - 사용자 입력받아 피라미드 높이 구하는 코드 리뷰

원본 코드 # 피라미드 출력 코드 g = int(input("피라미드 높이를 입력하세요: ")) for i in range(g): for j in range(g-i): print(" ", end="") for k in range(i+1): print("* ", end="") print() 이 코드는 사용자로부터 입력받은 피라미드의 높이에 따라 해당 크기의 피라미드를 출력하는 간단한 코드입니다. 문제점 이 코드에는 한 가지 문제가 있는데, 만약 사용자가 음수나 0을 입력하면 올바른 실행 결과를 출력하지 못합니다. 수정 코드 # 피라미드 출력 코드 (Code Review by B) g = int(input("피라미드 높이를 입력하세요: ")) # 사용자 입력이 0 이하인 경우, 프로그램 종료 if g

2023.07.29 게시됨

IT 언어 연구소/Error 관리

TypeError: Cannot set properties of undefined의 원인과 해결방안

JavaScript 오류 해결하기: "TypeError: Cannot set properties of undefined" 오류 설명 이 오류는 JavaScript에서 발생하는 일반적인 에러 중 하나로, 객체가 정의되지 않은(undefined) 상태에서 해당 객체의 속성을 설정하려고 할 때 발생합니다. 즉, 값을 할당하거나 속성을 추가하려는 객체가 undefined인 상태에서는 속성을 설정할 수 없으므로 해당 오류가 발생합니다. 발생 원인 이 오류가 발생하는 주요 원인은 다음과 같습니다. 1. 객체가 정의되지 않은 상태에서 속성을 설정하려고 하는 경우: let obj; obj.name = 'Alice'; // TypeError: Cannot set properties of undefined 2. 객체의 중..

2023.07.26 게시됨

IT 언어 연구소/Error 관리

TypeError: obj is not iterable의 원인과 해결방안

JavaScript 오류 해결하기: "TypeError: obj is not iterable" 목차1. 오류 설명2. 발생 원인3. 해결책 1. 오류 설명 이 오류는 JavaScript에서 발생하는 일반적인 에러 중 하나로, 반복 가능한(iterable) 객체가 아닌데 반복문을 사용하려고 할 때 발생합니다. 반복 가능한 객체란 배열(Array), 문자열(String), Set, Map 등과 같이 for...of 반복문을 사용하여 요소들을 순회할 수 있는 객체를 말합니다. 하지만 반복 가능한 객체가 아닌 일반 객체나 null, undefined와 같은 값에 대해 for...of 반복문을 사용하면 해당 오류가 발생합니다. 2. 발생 원인 이 오류가 발생하는 주요 원인은 다음과 같습니다. 1. 반복 가능한 객..

2023.07.25 게시됨

IT 언어 연구소/Error 관리

RangeError: Maximum call stack size exceeded 오류 원인과 해결책

목차 1. 오류 설명 2. 발생 원인 3. 해결책 4. 결론 JavaScript 오류 해결하기: "RangeError: Maximum call stack size exceeded" 오류 설명 이 오류는 JavaScript에서 발생하는 일반적인 에러 중 하나로, 함수 호출 스택(call stack)이 최대 크기를 초과할 때 발생합니다. 함수 호출 스택은 함수가 호출될 때 해당 함수를 스택에 쌓고, 함수가 반환될 때 스택에서 제거되는 방식으로 동작합니다. 만약 너무 많은 재귀 함수 호출 또는 깊이가 너무 깊은 함수 호출이 발생하면 스택이 최대 크기를 초과하여 이 오류가 발생합니다. 발생 원인 이 오류가 발생하는 주요 원인은 다음과 같습니다. 1. 재귀 함수 호출이 너무 많은 경우 function recurs..

2023.07.25 게시됨

IT 언어 연구소/Error 관리

TypeError: Cannot read property '...' of null/undefined 원인과 해결 방안

목차 1. 오류설명 2. 발생원인 3. 해결책 4. 결론 JavaScript 오류 해결하기: "TypeError: Cannot read property '...' of null/undefined" 오류 설명 이 오류는 JavaScript에서 발생하는 일반적인 에러 중 하나로, null 또는 undefined인 객체의 속성에 접근하려고 할 때 발생합니다. 즉, 값이 null이거나 정의되지 않은(undefined) 객체의 속성에 접근하려고 하면 해당 오류가 발생하는 것입니다. 발생 원인 이 에러가 발생하는 원인은 객체가 null이거나 undefined인 상태에서 해당 객체의 속성을 읽으려고 할 때 발생합니다. 예를 들어, 아래와 같은 상황에서 오류가 발생합니다. 1. null인 객체의 속성에 접근하는 경우:..

2023.07.24 게시됨