전체 글 71

프론트엔드 개발자 면접 질문 모음

프론트엔드 개발자로 지원한 뒤 여러군데에서 면접을 보면서 받았던 질문을 정리해보았다. 특히 여러 번 받았거나 자주 나온 질문은 Bold와 //로 표시해놓았다. 알고있는 것이라 말하는 것의 격차가 커서 처음에는 질문 받았을 때 머리가 하얘지기도 했다. 계속 면접을 경험하다보니 단련되어서 대답봇처럼 대답을 수월하게 할수 있게 되었다. 또한, 면접을 통해서 다양한 개념과 기능, 문제해결방법에 대해서도 알수 있어서 좋았다. 이력서 기반 자기소개 최근 관심있는 기술은? 왜 비전공자인데 개발자가 되었는지?(직무전환 동기) /// 압박이 있었던 경험? 사수가 어떤 분이였으면 좋겠는지? 좋은 코드란? 새로운 기술을 어떻게 배우는지? // 회사내에 있으면 좋겠는 문화는? 의견을 직접적으로 말하는지, 간접적으로 말하는지 ..

면접후기 2022.03.01

chocolatey로 프로그램 쉽게 설치하는 법

chocolatey란? 윈도우 패키지 매니저라고 생각하면 쉽다. chocolatey 를 통해 다양한 프로그램을 쉽게 다운 받을 수 있다. 크롬을 다운받기 위해 혹은 어도비 리더를 다운 받기 위해 귀찮게 사이트에 갈 필요없이 chocolatey로 해결가능하다. 여기서는 chocolatey를 통해 Windows Terminal을 설치할 것이다. 1) chocolatey 설치 chocolatey 설치 안내 페이지에서 커맨드 코드를 복사한다. 편의를 위해 설치 페이지에서 커맨드를 복사해서 아래에 붙여놓았다. Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net...

카테고리 없음 2021.09.04

[Git] git clone 시 warning

git clone 시 파일들을 전부 다운하지 못하는 오류가 발생했다. 파일을 확인해보면 다운받지 못한 파일은 git 상에서 삭제된 상태로 나타나 있었다. Clone succeeded, but checkout failed. you can inspect what was checked out with 'git status' and retry with 'git restore --source=HEAD :/' 자세히 메세지를 뜯어보니 이라는"Filename too long" 이라는 메세지가 있었다. 이는 파일 경로 길이가 260자로 제한되어 생긴 문제로 해결하기위해서는 아래의 명령어를 통해 git의 core.longpaths 설정을 true로 지정하면 된다. git config --system core.longpa..

Error 2021.09.02

[React] state와 ref의 차이

state와 ref에 대한 차이는 당근마켓 면접 시 들었던 질문이다. state 와 props 의 차이는 기초 개념이자 프론트엔드 면접질문 중 자주 나오기에 쉽게 대답할 수 있는데 state와 ref에 대한 차이는 한번도 고민해보지 않아 당황스러웠다. 일단은 각각에 대해서 정리하면 State : "컴포넌트 내에서 관리되는 데이터 객체" Ref : "DOM에 이름을 다는 것으로, DOM에 직접 접근하고 싶을 때 사용" 질문에서 의도했던 대답은 State 리렌더링이 필요한, 즉 변경시 렌더링이 되어야 하는 값을 다룰 때이고, Ref 리렌더링을 발생시키지 않아도 되는 값을 다룰 때

Web 2021.09.02

REST API

API Server : 프로그래밍을 통한 요청에 응답(우리는 json)하는 서버를 제공 ex. Youtube Data AP API, TMDB API REST(Representational State Transfer) 웹 설계 상의 장점을 최대한 활용 할 수 있는 아키텍처 방법론 네트워크 아키텍쳐 원리의 모음 자원(데이터)을 정의 자원에 대한 주소를 지정하는 방법 REST 원리를 따르는 시스템 혹은 API - RESTful API 즉, 자원과 주소를 지정하는 방법 REST 구성 자원 URI 행위 HTTP Method 표현 Representaion URI 통합 자원 식별자 자원을 나타내는 유일한 주소 하위 개념 - URL, URN URL Uniform Resource Locator - 통합 자원 위치 네트워..

CS 2021.08.27

Redux 정리

Redux란? Redux는 자바스크립트 앱을 위한 예측 가능한 상태 컨테이너이다. 자바스크립트 상태 관리 라이브러리이다. Redux는 React 뿐만 아니라, Angular,vanilla javascript, Vue 등 다른 프레임워크/라이브러리도 함께 쓰일 수 있다. 보통은 react랑 많이 사용된다. Redux 사용해야 되는 이유? 아래 사진이 리덕스를 설명할 때 가장 많이 사용되는 사진인데, 프로젝트가 커서 컴포넌트의 depth가 많아지게 되면 데이터 흐름이 점점 복잡해진다. 이때 redux가 데이터를 store 란 곳에 저장해놓고 필요할 때마다 얻어올 수 있기에 더욱 복잡한 데이터 흐름이 없어지게 되서 오른쪽과 같이 흐름이 간단해진다. Redux 구성요소 Store 프로젝트당 1개만 등록한다. 모..

Web 2021.08.27

[백준 알고리즘] 17471. 게리맨더링

💻 문제 풀이 방법 1. 가능한 경우의 수(조합) 구하기 (재귀 + 백트래킹 사용) 2. 1의 정보를 바탕으로 그룹을 나누고 3. 나눈 그룹 각각 DFS로 방문할 수 있는지 체크, 방문하지 못하는 노드가 있을 경우 제외 처음에는 인접정보를 판단하면서 경우의 수를 구하기 위해, 그래프를 사용하며 방문표시를 했는데, 경우의 수에서 제외되는 경우가 있어 정답을 구할 수 없었다. 경우의 수는 역시 완전 탐색을 하는 게 확실하다... 아래 주소는 문제 풀면서 참고했던 반례들인데 유용했다! https://www.acmicpc.net/board/view/54133 반례들 # DFS def check_areas(check): for i in range(1, N+1): if check[i] == 0: start = i ..

[백준 알고리즘] 13549. 숨바꼭질 3

처음에는 BFS로 풀려고 했으나 순간이동은 시간을 세지 않는 다는 점에서 최단 시간을 확정하기 어렵다는 생각이 들었다. 그래서 다익스트라로 접근했다. from collections import deque def find_K(): D = [0xfffffffffff] * 100001 D[N] = 0 Q = deque() Q.append((0, N)) while Q: time, loc = Q.popleft() if D[K] n_loc or 100000 n_time: D[n_loc] = n_time Q.append((n_time, n_loc)) return D[K] N, K = map(int, input().split()) # 수빈, 동생 # 순간이동은 ..

[백준 알고리즘] 1504. 특정한 최단 경로

✔ 주의할 점 가능한 경로 2개 1 -> v1 -> v2 -> N 1 -> v2 -> v1 -> N 다익스트라 함수를 만들어 놓고, (1, v1), (v1, v2), (v2, N) (1, v2), (v2, v1), (v1, N) 각 지점 사이의 최단 경로를 구한 뒤, 두가지의 경로 중 최단 거리를 구했다! import sys # 1번 부터 N까지의 최단거리 v1, v2 거쳐서 # 경로없을 때는 1 from heapq import heappop,heappush INF = int(1e9) def dijkstra(start, end): D = [INF] * (N+1) D[start] = 0 Q = [(0, start)] while Q: d, u = heappop(Q) if D[u] < d: continue i..

[백준 알고리즘] 1283. 파티 _ 파이썬

SWEA 1795 인수의 생일파티와 유사한 문제이다. 각자의 집 -> 파티하는 집 -> 각자의 집으로 가는 최단경로를 구해야 한다. 한 점에서 여러 점 갈 때는 다익스트라를 한 번 돌리면 되지만, 여러 점에서 한 점으로 갈 때는 각 시작점마다 다익스트라를 돌려야 한다. 불필요하게 다익스트라로 구하는 것을 방지하고자 아예 경로를 여러 점에서 한점으로 가는 것 -> 한 점에서 여러 점을 방문하도록 그래프를 추가했다. 그래서 가는 방향 경로 GO, 오는 방향 경로 COME을 나눠서 다익스트라르 2번 돌려 구했다. from heapq import heappush, heappop INF = 0xffffffffffffffffff # 어떤 시작점에서 모든 정점까지의 최단거리 def dijkstra(start, gra..

카테고리 없음 2021.05.11