Reviews

IT 대기업 알고리즘 유형별로 풀 수 있는 단계별 알고리즘 학습 플랫폼 코드 트리 사용 후기

코드 트리는 진단 평가를 기반으로 단계별 학습 가이드를 따라 알고리즘 실력을 증진시킬 수 있는 플랫폼입니다. 이 단계별 가이드 덕분에 처음 알고리즘을 접하거나 평소 해설을 읽어도 이해에 어려움이 있는 경우 큰 도움이 될 수 있습니다. 뿐만 아니라, 제목에서 언급했던 대로 네이버, 카카오, SK 등의 대기업 코테 문항이 유형별로 준비되어 있어 차근차근 따라가면서 유형을 익힐 수 있습니다. 코드 트리를 두 달간 사용해 본 후기를 공유하고자 합니다. 좋았던 점 확실히 실력이 쌓여가는 것을 체감할 수 있다. 이번 한 달간은 구현 능력을 기르기 위해 구현 파트에 집중해서 풀었습니다. 코드 트리 이전에는 백준에서 구현 실버~ 정도를 풀 때도 헤매고 있었다면, 이제 골드 이상을 풀 때 어느 정도 방향에 대한 감이 잡..

TypeScript

[TypeScript] 비동기 프로그래밍, 동시성과 병렬성

지금까지는 어떤 입력을 받아 이를 처리하고 완료하는 단계를 순서대로 수행하는 동기 프로그래밍을 다뤘다. 하지만 실제로는 네트워크 요청을 보내고, 데이터 베이스 및 파일 시스템과 상호작용하는 동작을 수행해야 하므로 비동기 API(콜백, 프로미스, 스트림)를 사용하게 된다. 자바스크립트는 이러한 비동기 작업을 처리할 때 멀티 스레드를 지원하는 자바나 C++와 다르게 스레드 하나로 비동기 작업을 처리한다. 자바스크립트는 이벤트 루프 기반의 동시성 모델을 이용해 멀티스레드 기반 프로그래밍에서 공통적으로 나타나는 문제점을 해결한다. (동기화된 데이터 타입의 오버헤드 등) 타입스크립트와 비동기 프로그래밍 비동기 프로그래밍은 코드를 한 줄 씩 따라가며 이해할 수 있는 구조가 아니기 때문에 이해가 어렵다. 타입스크립트..

BOJ

[알고리즘/백준/10828] 스택(자료구조)

문제 https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 풀이 class Stack { constructor() { this.stack = []; } push(newElement) { this.stack.push(newElement); } pop() { if (this.empty()) return -1; return this.stack.pop(); } size() { return this.stack.length; } empty()..

Test

프론트엔드 테스트 어떤 순서로, 무엇을 테스트하면 좋을까?

프론트엔드 프로젝트에 테스트를 적용하면서 가장 어렵게 느껴진 부분이 어떤 순서로, 무엇을 테스트하면 좋을지에 관한 것이었습니다. 이에 대해 Kent C. Dodds와 Tkdodo님의 블로그를 참고하여 이에 대한 생각을 정리해 보았습니다. 🤔 어떤 순서로, 무엇을 테스트할까? 테스트를 작성하는 목적 가운데 하나는 사용자, 즉 애플리케이션 사용자와 개발자가 애플리케이션을 사용할 때 애플리케이션이 제대로 동작할 것이라는 자신감을 주는 것입니다. 따라서 코드 커버리지 자체보다는 유저가 사용하는 유즈 케이스 모두를 코드가 지원하는지를 생각해보면 좋습니다. 무엇을 테스트하면 좋을까? React에서는 어떠한 유즈 케이스가 있을까요? 크게 아래의 3가지 경우를 생각해 볼 수 있습니다. 라이프사이클 메서드: rerend..

React

크롬 DevTools 리로드 문제 해결하기([Error] Looks like this page doesn't have React, or it hasn't been loaded yet.)

크롬 개발자 도구 사용 중에 실수로 불편을 겪을 수 있는 문제라고 생각되어 공유하게 되었습니다. 문제 상황 리액트 애플리케이션이 잘 동작하는데 리로드만 하면 자꾸 react-dev-tools에서 다음과 같은 에러가 발생하며 페이지가 무한 로딩 되는 문제가 있었습니다. Looks like this page doesn't have React, or it hasn't been loaded yet 그리고 네트워크 탭을 확인했을 때 아래와 같이 스크립트 로드가 실패하는 것을 확인할 수 있었습니다. 분명히 리액트로 만들어진 페이지고, DevTools를 끄면 잘 동작하는데 왜 이런 걸까요..? 해결 스택오버플로우의 이 글에 따르면 크롬 DevTools 디버거가 breakpoints에서 멈추는 경우 페이지를 리로드 하..

개발자 김비숑
김비숑과 프론트엔드