목록전체 글 (48)
이재호
오랜만에 블로그에 글귀를 작성하는거 같다 미리 고백할게 있다면 이제 나의 블로그는 더이상 개발 블로그로 활용되지 않을것이라는것이다 그저 지난 시간동안 작성했던 글은 아름다운 나의 발자취로 기억되길 바란다 개발자가 되겠다는 결심또한 많은 고민뜻에 내린 결정이였고 숱한 고민이 들어간 선택이였다 간절한 바램 끝에 좋은 부트캠프에서 교육을 들었으나 수료했을때 나의 모습을 보면 그리 좋은 미래가 보여지지 않았다 많은 노력을 했다고 절대 생각하지 않는다, 포기라고 말하기엔 해당 단어를 꺼낸다는거 자체가 너무 부끄럽다 그저 수없이 많은 성공을 향하는 길중에 하나의 선택지를 경험해봤다고 스스로에게 위안을 주고 싶다 해보지도 않고 후회하는것보다 해보고 후회를 하는게 성격인지라 더이상에 미련또한 없다 난 부자가 되고 싶고..
리액트 컴포넌트에는 함수형 컴포넌트와 클래스형 컴포넌트 두가지가 존재한다 과거 함수형에는 상태를 관리하는 기능이 없었기때문에 클래스형 컴포넌트를 이용해 리액트를 구축했는데 현재 함수형컴포넌트에도 훅이라는게 등장으로 다양하게 상태를 관리할수 있는 기능이 생겼다 레거시 코드가 아니라면 새 프로젝트에서 함수형 컴포넌트를 쓰는게 보다 더 직관적으로 편리하다 재목에는 useEffect와 clas에 생명주기를 작성하였다 생명주기란 앱이 실행되고 종료되는 과정을 특정 시점 별로 나눠둔 것을 말합니다 class 에는 핵심적인 3가지 생명주기가 존재합니다. ComponetDidMount() ComponetDidUpdate() ComponetWillUnmount() 첫번쨰부터 컴포넌트가 최초로 랜더링 될때 실행되는 메서드..
리액트는 상태나 props가 변경될떄마다 모든 컴포넌트를 재랜더링 합니다 만약 app.js라는 컴포넌트에서 상태를 변경한다고 하면 app.js와 상태가 연결되어있는 하위 컴포넌트들까지 재랜더링이 되면서 성능저하를 일으킵니다 작은단위의 프로젝트면 괜찮지만 큰 규모의 컴포넌트단위 프로젝트 같은 경우에는 큰 리소스를 차지할뿐만 아니라 불필요한 성능저하를 일으킬수 있습니다 그래서 나온것이 useMemo입니다. useMemo는 props가 실제로 변경되었을때, 새로운 값이 들어올때만 컴포넌트 함수를 재 실행하고 새값이 없다면 재랜더링을 하지 않습니다. 하지만 useMemo도 부족한 점이 있습니다 함수 컴포넌트 안에 함수를 생성해서 props 객체로 넘겨주면 useMemo는 이를 인식하지 못합니다. 그 이유는 객체..
탐욕 알고리즘은 간단합니다, 각각의 단계에서 최적의 수를 찾아내면 됩니다. 집합 커버링 문제 라디오쇼를 시작했다고 가정했을때 미국 50개의 주에 있는 모든 사람에게 이 라디오 쇼를 들려주고 싶다 하나의 방송국을 톨해 청취할수 있는 지역이 한정되어 있기 때문에 전국에 흩어져 있는 몇개의 라디오 방송국들을 방문해서 라디오쇼를 진행할 예정이다, 전국의 모든사람들이 최소한 한번은 쇼를 들을수 있도록 하려면 어떤 방송국을 방문해야할지 계산해한다 또 방송국을 방문하여 한번 쇼를 하는데 돈이 들기 때문에 최대한 적은 수의 방송국을 돌아야 한다. 근사 알고리즘 아직 방송하지 않은 지역중 가장 많은 지역에 방송할수 있는 방송국을 고릅니다. 이미 방송되고 있는 지역이 일부 포함되어 있어도 상관없습니다. 모든 주에 방송이 ..

프로미스란 내용이 실행은 되었지만 결과를 아직 반환하지 않은 객체 then 을 붙히면 결과를 반환함 resolve(성공리턴값 ) : then으로 연결 reject(실패리턴값) : catch로 연결 finally 는 무조건 실행 const promise = new Promise((resolve, reject)=>{ setTimeOut(()=>{ resolve() }, 1000) }) promise.then(()=>{ console.log('a') }) const codition = true; const promise = new Promise((resolve, reject)=>{ if(codition){ resolve('성공') } else { reject('실패'..
ref란 reference 의 약자로 참조라는 뜻을 가지고 있다. ref는 아주 강력한 도구로 기본적인 기능으로는 다른 DOM에 접근하여 그것들로 작업을 할수 있습니다. ref는 함수 컴포넌트 안에서만 사용이 가능하며 ref 프롭은 key 프롭과 마찬가지로 내장 프롭입니다. 따라서 어떤 HTML요소도 넣을수 있습니다. ref값은 항상 객체입니다, 항상 current 프롭을 가지고 있습니다, current 프롭은 ref가 연결된 실제 값을 갖습니다 실제로 이렇게 ref와 연결된 값은 실제 DOM NODE 이며 여러가지 작업을 만지고 조작할수 있습니다. 그러나 DOM을 조작하기 위해 Ref를 사용하는일은 정말 드문일입니다. 만약 값만 바꾸고 아무것도 바꿀일이 없다면 Ref를 사용하는것도 하나의 방법입니다 보..