끄적끄적 코딩
article thumbnail
[C++] 프로그래머스 - 자물쇠와 열쇠
알고리즘 2021. 2. 6. 18:48

2020 KAKAO BLIND RECRUITMENT (2020 카카오 블라인드 채용 문제) Key를 회전시키거나 움직여서 Lock의 빈 부분을 모두 채우는 문제입니다. Lock를 90도로 회전시켜서 4개의 Lock를 생성하였습니다. (0도, 90도, 180도, 270도) Key를 4개의 Lock에 XOR연산자를 이용해서 맞추어봅니다. XOR연산자 대신 if문으로 처리도 가능합니다. 두개가 다를 경우를 체크하기 때문에 XOR연산자를 사용했습니다. (Lock - 0, Key - 0 이면 홈이 없는상태, Lock - 1, Key - 1 두 부분다 홈인 경우) (Lock - 1, Key - 0 홈이 맞는 상태 Lock - 0, Key - 1 홈이 맞는 상태) 탐색 과정 Key Key Key Key Key Key..

article thumbnail
[React] 라이프 사이클
React 2021. 2. 3. 09:53

일반적인 Lifecycle *mount : 컴포넌트가 처음 실행되는시기를 의미합니다. Mounting - 컴포넌트가 실행되고 constructor이 가장먼저 실행됨 - render가 되고 DOM과 refs가 업데이트됨 - componentDidMount가 실행됨 Updating - New props, setState, forceUpdate()가 실행됨 - render가 되고 DOM과 refs가 업데이트됨 - componentDidUpdate가 실행됨 Unmounting - componentWillUnmount가 실행됨 React Hook Lifecycle Mounting 함수가 실행되면 결과를 반환합니다. (만약 useMemo로 되어있는 함수라면 내부에서 발생하는 연산을 최적화합니다.) DOM과 refs..

[React] 주요 훅스
React 2021. 2. 3. 09:49

useState 가장 기본적인 Hook 으로서, 함수형 컴포넌트에서도 가변적인 상태를 지니고 있을 수 있게 해줌 useEffect - 리액트 컴포넌트가 렌더링 될 때마다 특정 작업을 수행하도록 설정 할 수 있는 Hook useContext - 함수형 컴포넌트에서 Context 를 보다 더 쉽게 사용 할 수 있음 useReducer - useState 보다 컴포넌트에서 다양한 상황에 따라 다양한 상태를 다른 값으로 업데이트해주고 싶을 때 사용하는 Hook useMemo - 함수형 컴포넌트 내부에서 발생하는 연산을 최적화 useCallback - 렌더링 성능을 최적화 useRef - 함수형 컴포넌트에서 ref 를 쉽게 사용 할 수 있게 해줌

article thumbnail
[React] Class Component, Function Component
React 2021. 2. 3. 09:41

클래스형 컴포넌트, 함수형 컴포넌트 비교 선언 방식 함수형 컴포넌트가 선언이 더 편함 class component - class 키워드 필요 - Component로 상속을 받아야함 - render() 메소드가 필요 일반적인 차이 - 클래스형 컴포넌트의 경우 state 기능 및 라이프 사이클 기능을 사용 (함수형 컴포넌트는 훅스로 해결) - 함수형 컴포넌트는 메모리 자원을 덜 사용한다는 장점 - state선언 방식, props를 가져오는 방식, event handling을 하는 방식이 조금씩 다름 *props : 상위 컴포넌트에서 하위 컴포넌트로 데이터를 전달할 때 사용 *hook : 함수컴포넌트에서 클래스 구성 요소처럼 및 를 사용할 수 있도록하는 함수 주요 hook : useState, useEffec..

article thumbnail
[React] Webpack, Babel, Create React App
React 2021. 2. 3. 09:38

웹팩이란 - Module bundler 라이브러리 *Module bundler : 여러개의 나누어져 있는 파일들을 하나의 파일로 만들어주는 라이브러리 웹페이지에서는 페이지를 보여주기 위한 수 많은 자바스크립트 파일을 서버에 요청 - 서버와 여러번 통신 - 비효율 => 여러개의 파일들을 Module bundler로 한번에 처리해서 위의 문제를 해결 Babel이란 - 최신 문법을 특정 이전 버전의 js로 변환하는 도구 Create React App이란 - Facebook의 공식 React 웹 개발을위한 보일러 플레이트 * 보일러 플레이트 : 변형이 거의 또는 전혀없이 여러 위치에서 반복되는 코드 섹션 - 모든 개발환경을 설정하지 않아도 되고 페이스북에서 지속적으로 업데이트를 해주기에 많은 사람들이 사용 - ..

article thumbnail
[React] 리액트 커뮤니티 사이트
React 2021. 2. 3. 09:28

레딧 : https://www.reddit.com/r/reactjs/ /r/ReactJS - The Front Page of React • r/reactjs A community for learning and developing web applications using React by Facebook. www.reddit.com Hsahnode : https://hashnode.com/n/reactjs #reactjs on Hashnode React (40878 followers · 5936 posts) - React is a JavaScript library for building user interfaces. hashnode.com stack overflow : https://stackoverflow..

article thumbnail
[React] One way data binding, Two way data binding
React 2021. 2. 3. 09:25

단방향 데이터 바인딩 - 처음 모델이 가진 값을 뷰에 표현하고 나중에 모델이 변경되더라도 업데이트 되지 않음 양방향 데이터 바인딩 - 모델을 뷰에 바인딩함과 동시에 이후 모델이 변경되는 경우를 감지하여 지속적으로 뷰를 업데이트 해줌 * 데이터 바인딩 : 화면에 보이는 데이터와 브라우저 메모리에있는 데이터를 일치시키는 방법 차이 - HTML에서 변경된 내용이 데이터 영향을 미치는가 리액트 - React와 같은 단방향 데이터 바인딩은 Javascript -> HTML로 데이터 바인딩만 가능 이벤트를 통해 다시 화면에 뿌려주는 과정이 필요 two way data binding 장점 모델, 뷰 동기화 - 데이터 변화를 감지하여 모델과 뷰가 같도록 만들어줌. (단방향은 같게하기위한 추가적인 코드가 필요) 코드량 ..

[React] JSX란?
React 2021. 2. 3. 09:13

JSX - 자바스크립트를 확장한 문법 const element = Hello, world!; - JSX에 표현식 포함 const name = 'Jeseong Lee'; const element = Hello, {name}; ReactDOM.render( element, document.getElementById('root') ); => JSX의 중괄호 안에 유효한 JavaScript 표현식을 넣을 수 있음 - JSX는 표현식 function getGreeting(user) { if (user) { return Hello, {formatName(user)}!; } return Hello, Stranger.; } => JSX 표현식은 JavaScript 객체로 처리됨 - JSX로 속성 정의 const ele..

검색 태그