2021-03-23 스터디를 시작했다. 하루하루의 기록을 다시 남겨보자! 프로그래머스의 아주아주아주우 쉬운난이도부터 2문제씩 꾸준히 풀어보자(너무쉬워서몹시민망하기도하다히히) 또한, 면접대비문제들도 하나씩 정리해보려한다. 다시 스따뜨-! 2개의 코드 문제, 2개의 면접대비 문제 1. 문자열을 정수로 바꾸기(Programmers) 문제 설명 문자열 s를...
2021-03-24 2개의 코드 문제, 2개의 면접대비 문제 1. 두 정수 사이의 합(Programmers) 문제 설명 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b...
2021-03-25 2개의 코드 문제, 2개의 면접대비 문제 1. 완주하지 못한 선수(Programmers) 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completi...
2021-03-26 2개의 코드 문제, 2개의 면접대비 문제 1. 서울에서 김서방찾기(Programmers) 문제 설명 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는...
2021-03-29 2개의 코드 문제, 2개의 면접대비 문제 1. 문자열 다루기 기본(Programmers) 문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 조건 s는 길이 1 ...
2021-03-30 2개의 코드 문제, 2개의 면접대비 문제 1. 나누어떨어지는숫자배열(Programmers) 문제 설명 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반...
2021-04-01 2개의 코드 문제, 2개의 면접대비 문제 1. 약수의합(Programmers) 문제 설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 조건 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수는...
2021-04-12 코드, 면접문제중 아무거나 2문제씩 [Javascript Question] 1. closure에 대해 설명해 주시고 example이 있다면 이야기해 주세요 Answer. 클로저는 함수와 함수가 선언된 어휘적 환경의 조합입니다. 이 환경은 클로저가 생성된 시점의 유효 범위 내에 있는 모든 지역 변수로 구성됩니다. 쉽게 설명하자면, ...
2021-04-13 코드, 면접문제중 아무거나 2문제씩 [Node.js Question] 1. nodejs에서 module 이란 무엇인가요? Answer. 노드에서 모듈이라는 개념은 노드로 개발한 애플리케이션을 이루는 기본 조각이라고 할 수 있습니다. 물건을 만들 때 쓰는 부품이라 생각하면 쉽습니다. 어떤 큰 물건을 만들 때, 재료 하나로만 만들 수...
2021-04-14 코드, 면접문제중 아무거나 2문제씩 [Javascript Question] 1. ES6에 대해서 알고 계신가요? 사용하고 있는 ES6 feature들을 설명해 주세요 Answer. ecma script 6번째 버전으로, let, const, 화살표함수, template literal 등등 새로운 문법이 추가가 되었습니다. let과...
2021-04-14 ~ 2021-04-21 일주일동안의 과제가 있었고, 1주일이라는 시간이 주어졌다. 카드와 텍스트박스 만들기였고, 카드 안에는 별점매기는 기능도 추가였다. 아주 디테일한 내용이 적혀있는 것이 아니었어서 최대한 내가 할 수 있는 부분까지 구현해보았다. 카드는 이미지와 내용만 있는 카드, 이미지,내용,별점까지 다 들어가있는 카드, 가로로 ...
2021-04-22 코드, 면접문제중 아무거나 2문제씩 [Javascript Question] 1. 자바스크립트 Prototype에 관해 설명해주세요 (상속) Answer. 자바스크립트에는 클래스가 없고 프로토타입이 존재합니다. 어떠한 객체가 만들어지기 위해 그 객체의 모태가 되는 것을 프로토타입이라고 합니다. 자바스크립트는 프로토타입을 기반으로 상...
2021-04-23 코드, 면접문제중 아무거나 2문제씩 [Frontend Question] 1. 브라우저 동작 원리에 대해 설명해 보세요 Answer. 브라우저 주소창에 주소를 치면 서버를 찾아가고, DNS(실제 서버가 어디에있는지 알고 있는 서버)가 연결해줄 곳을 찾습니다. 여기서 주소 앞에 https가 붙었다면 https방식으로 통신합니다. 서버...
2021-04-26 코드, 면접문제중 아무거나 2문제씩 1. 콜라츠추측 문제 설명 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 ...
2021-04-27 코드, 면접문제중 아무거나 2문제씩 [Frontend Question] 1. Describe the difference between a cookie, sessionStorage and localStorage Answer. 쿠키는 서버가 웹브라우저에 정보를 저장하고 불러올 수 있는 수단으로써, 서버측과 클라이언트측 양쪽에서 쿠키 ...
2021-04-28 코드, 면접문제중 아무거나 2문제씩 [Frontend Question] 1. CSRF가 무엇이며 어떻게 하면 막을 수 있나요? Answer. 주소가 다른 사이트(cross-site)에서 유저가 보내는 request를 조작하는 공격입니다. request만 바꾸는 것이기 때문에 직접적으로 데이터에 손댈 수 없습니다. CSRF를 막기 ...
2021-04-30 코드, 면접문제중 아무거나 2문제씩 [Frontend Question] 1. react immutable 에 대해 설명해 보세요 Answer. React는 immutable이 유지가 되는데 변경 불가성이란 객체가 생성된 이후 그 상태를 변경할 수 없는 디자인 패턴을 의미합니다. React는 편하게 상태를 관리하기 위해 객체 타입을...
2021-05-03 코드, 면접문제중 아무거나 2문제씩 1. 문자열내맘대로 정렬하기 문제 설명 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "...
2021-05-07 코드, 면접문제중 아무거나 2문제씩 1. 두 개 뽑아서 더하기 문제 설명 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 조건 numbers의 길이는 2 이상...
2021-05-10 코드, 면접문제중 아무거나 2문제씩 [Frontend Question] 1. React-redux 3가지 특징 Answer. react-redux에서는 3가지 규칙을 지켜야하는데 단일 스토어야 하고, 읽기전용상태여야 한다. 즉 기존의 객체는 건드리지 않고 새로운 객체를 생성해서 사용하여야한다. 리듀서는 순수한 함수여야한다. 즉, ...
2021-05-11 코드, 면접문제중 아무거나 2문제씩 [Frontend Question] 1. react router 와 같은 client side routing에 대해 설명해 주세요 Answer. SPA는 단일 페이지 어플리케이션으로 모던 웹의 패러다임이며, 단일 페이지로 구성되어 있는 구조를 말합니다. SPA는 처음에 모든 정적 리소스들을 처음...
2021-05-12 코드, 면접문제중 아무거나 2문제씩 [Frontend Question] 1. redux에 대해 설명해 보세요 Answer. 리액트를 사용하면서, 상태 관리를 하는 것은 매우 중요한 요소 중 하나입니다. 리액트로 만들 수 있는 단일 페이지 애플리케이션(SPA, Single Page Application)는 data 혹은 UI의 변화...
2021-05-14 코드, 면접문제중 아무거나 2문제씩 [Personal Question] 1. 지원하는 직군과 관련한 본인의 가치관, 경험, 경력 등을 자유롭게 작성해주세요. Answer. #1%의 성장 안녕하세요. 매일 1%씩 성장하는 프론트엔드개발자 최정완입니다. 책을 좋아하시는 분들이라면, 한 번쯤 들어보셨을 법한 '아주 작은 습관의 힘'이라...
2021-05-17 코드, 면접문제중 아무거나 2문제씩 1. 정수 제곱근 판별 문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 제한 조건 n은 1이상, 5000000...
2021-05-18 코드, 면접문제중 아무거나 2문제씩 [Frontend Question] 1. Map/Reduce에 대해서 설명하세요 Answer. Map은 배열 안의 요소들이 callback함수를 실행한 결과를 새로운 배열로 반환해줍니다. 예를 들어 let arr = [1,2,3] 일때, arr.map(x ⇒ x\*2) 으로 arr 요소들에 각각...
2021-05-20 코드, 면접문제중 아무거나 2문제씩 1. 제일 작은 수 제거하기 문제 설명 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고,...
2021-05-21 코드, 면접문제중 아무거나 2문제씩 1. x만큼 간격이 있는 n개의 숫자 문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 x는 -10000000...
2021-05-24 코드, 면접문제중 아무거나 2문제씩 1. 모의고사 문제 설명 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍...
2021-05-25 코드, 면접문제중 아무거나 2문제씩 1. 3진법 뒤집기 문제 설명 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한 조건 n은 1 이상 100,000,000 이하인 자연수입니다. 입출력 예 n result ...
2021-06-18 1. OSI 7계층의 이해 및 정의 OSI 7계층이라는 단어를 처음 들어보았다. 그래서 먼저 정의를 찾아보자. > OSI 모형(Open Systems Interconnection Reference Model)은 국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다. 일반적...
2021-06-14 오늘은 랜더링에 대해서 알아보자! 1. Rendering 랜더링이 뭘까? 사전적 정의를 먼저 찾아보면, > 렌더링은 컴퓨터 프로그램을 사용하여 모델 또는 이들을 모아놓은 장면인 씬 파일(scene file)로부터 영상을 만들어내는 과정을 말한다. (출처:위키백과) > 좀 더 쉽게 말해보자면, 서버로부터 HTML로 입력받아 해석해서 ...
2021-06-10 자바스크립트에서 코드가 실행될때 어떻게 실행이 되는 것일까? 자바스크립트를 사용하면서 한번쯤 궁금했을 것이다. 한번 자바스크립트가 어떻게 돌아가는지, 거기에서 Event Loop은 어떤 역할을 하는지 구체적으로 알아보자. 1.Javascript Engine 자동차가 움직이려면 무엇이 필요할까? 너무 당연한 질문같겠지만, 당연히 기름...
2021-06-01 막상 무엇에 대해 기술블로그를 시작해야할지 정하지 못해 이것저것 기웃거리다가 역시 뭐든 시작은 가장 근본부터 해야하지 않는가 라는 생각에 Data structure부터 찾아보자 생각했다. 물론 data structure에 대한 글이 나의 블로그에 있지만, reset하고 다시 시작한다는 마음으로 글을 적어본다. 1. Data Struct...
2021-06-30 학생때를 돌이켜보면, 시험기간에 항상 각 과목의 시험범위를 보며 한숨을 쉬곤했다. '뭐가 이리 많아-!!'라고 생각하면서 매번 시험기간에 툴툴거렸던 기억이 남아있다. 무언가를 공부하고 테스트를 할 때, 흔히 생각하는 범위. 그렇다면 자바스크립트에도 범위라는 개념이 있을까? Scope에 대해서 알아보자. 1. Scope 보아하니, ...