본문 바로가기

분류 전체보기57

[React] Redux 와 Context-API의 비교, 사용 사례 및 코드 예시 리덕스(Redux)와 컨텍스트 API(Context API)는 리액트(React) 애플리케이션에서 상태 관리를 하기 위한 두 가지 대안적인 방법이다. 하지만 유사한 점들이 많다보니, 처음 봤을 때 어느 때에 더 적절한걸 써야 할지 몰라 Redux와 Context API를 비교하고, 각각의 사용 사례와 코드 예시를 기록하려 한다. 🤔 Redux vs. Context API Redux는 Flux 아키텍처 패턴을 구현한 라이브러리로, 전역 상태 관리를 위해 사용된다. Redux는 애플리케이션의 상태를 중앙 집중적으로 관리하고, 상태 변경을 예측 가능하도록 만든다. 이를 위해 Redux는 불변성을 유지하고, 상태 변경을 위한 액션(Action)을 사용하며, 이 액션들을 통해 상태를 변경하는 리듀서(Reducer.. 2023. 4. 5.
[코드이슈] if문에서 else와 else if를 지양하는 의견 정리 😎 Clean Code 원칙의 이해 Clean Code는 가독성, 재사용성, 유지보수의 용이성에 초점을 맞춘 코드 작성 방법론이다. Robert C. Martin은 이를 위한 다양한 원칙을 제시하였는데, 그 중 '제어문의 복잡성을 줄이는 것'이 하나로, 이 원칙에 따르면 if문에서 else와 else if문을 최대한 지양하도록 권장한다. 이 원칙의 배경에는 어떤 이유가 있는지 살펴보자. ✅ if문에서 else와 else if문 사용의 문제점 if문에 else와 else if문을 사용하게 되면, 코드의 복잡성이 증가하는 문제가 있다. 특히 여러 조건이 복합적으로 얽혀있는 경우, 코드의 가독성이 저하되며 디버깅의 어려움이 생긴다. 또한, 이러한 구조는 코드의 흐름을 파악하기 어렵게 만들어 실수를 유발하는 원.. 2023. 4. 4.
[프로그래머스] 완주하지 못한 선수 자바스크립트 풀이 👁‍🗨 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. ❌ 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 participant completion return ["leo".. 2023. 3. 29.
[프로그래머스] 위장 자바스크립트 문제 풀이 ❓ 문제 지문 스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다. 예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다. 종류이름 얼굴 동그란 안경, 검정 선글라스 상의 파란색 티셔츠 하의 청바지 겉옷 긴 코트 스파이가 가진 의상들이 담긴 2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수를 return 하도록 solution 함수를 작성해주세요. ❌ 제한사항 clothes의 각 행은 [의상의 이름, 의상의 종류]로 이루어져 있습니다. 스파이가 가진 의상의 수는 1개 이상 30개 이하입니다. 같은 이름을 가진 의상은 존재하지 않습니다. cl.. 2023. 3. 28.