분류 전체보기
[github Action] working-directory cannot be used with uses , with
발생 에러코드 working-directory cannot be used with uses , with && error Couldn't find a package.json error Couldn't find a package.json github Action을 활용한 CI/CD 작업중에 위와같은 에러를 내보내면서 오류가 발생했따. GIT root 파일 ㄴ CRA 파일 ㄴ 기타 파일들.. 내 리액트 폴더는 git자체에 들어있지 않고 위처럼 root 파일에서 한번 파일을 파고들어가야 하는 문제였다. - name: Install dependencies run: npm install working-directory: [폴더 이름] 해당 경우 위처럼 working-directory 를 설정해주면 각 명령어를 실행..
[React] 리액트에서 tdd 개발하기 (with emotion)
만약 CRA를 통해서 리액트 프로젝트를 만들었다면 손쉽게 Test코드를 작성하는 것이 가능하다. testing-libray/react 와 jest는 CRA를 통해 리액트 프로젝트를 만들었다면 이미 설치가 되어있을 것이고 emotion을 적용한 프로젝트에서 테스트 코드를 작성하기 위해서 @emotion/jest 라이브러리를 추가적으로 설치해준다. npm install --save-dev @emotion/jest 이후 테스트 코드를 만들때 아래 항목을 추가하면 된다 import { matchers } from "@emotion/jest"; expect.extend(matchers); @emotion/jest와 다른 테스팅 라이브러리를 비교할 때, @emotion/jest의 강점은 다음과 같다. 간편한 구성:..
[React] DeepDive 모던리액트(2) 동등 비교
자바스크립트의 데이터 타입 자바스크립트의 모든 값은 데이터 타입을 가지고 있으며 원시타입과 객체 타입으로 나누어져 있다. 원시타입 : boolean,nulll,undefined,number,string,symbol,bigint 객체타입 : object 이 데이터 타입 중에서 true,false이외에도 조건문에서 마치 true와 false처럼 동작하는 truthy,falsy값이 존재함을 알아두자. false,0,-0,0n,0x0n,NaN,"",'',``,null,undefined 위 값들이 JS에서 falsy로 동작되게 된다. Number 정수,실수를 구분하는 일반적인 언어와는 달리 자바스크립트는 모든 숫자를 하나의 타입에 저장했었다. 지금은 보다 큰 숫자를 다룰 수 있는 BigInt 자료형이 추가되었다...
[JS] 스타 수열
스타수열을 만들기 위해서는 교집합이 될 숫자가 필요하다. 이 숫자를 star라고 생각해보자. 어떻게 보면 해당 문제는 이 star가 가장 많은 배열의 길이를 반환하는 문제라고 생각할 수 있다. 따라서 cnt배열을 하나 둔 후, 가장 많이 나온 숫자순으로 스타수열을 만들어서 만약 스타수열이라면 그 길이를 반환하면 된다. 이 과정을 일반 배열로 한다면 최대값을 찾을 때마다 n의 시간복잡도가 들어가므로 최대 힙을 활용하여 해결하였다. 1. cnt배열을 활용해서 a배열에서 나온 숫자들을 센다. 단, 연속해서 나온 부분은 빼준다. 2. cnt배열의 값들을 최대 힙에 하나씩 넣어준다. 3. 최대 힙을 하나씩 pop해나간다. 이때 star와 cnt에 담겨있는 숫자가 실제 스타수열을 만들었을때의 길이와 같다면 프로그램..
[React] DeepDive 모던 리액트 (1) 리액트의 역사
감명있게 읽었던 JavaScript DeepDive의 리액트 버전 책이 나와서 바로 구매해보았다. 마찬가지로 책을 읽으면서 정리해보려고 한다. 사실 리액트를 깊게 공부해야한다 생각은 했지만 정말 리액트란 라이브러리의 원리에 대해 깊게 파거나 리액트에 존재하는 여러 유용한 훅에 대해 공부할 필요성을 느껴서 구매해보기도 했다. 책은 900페이지가 넘어갈정도로 두껍지만 그만큼 배워갈 부분도 많을 것 같아 기대된다. Why React? 리액트는 2011년 페이스북에서 선보인 10년이 넘은 라이브러리이다. 심지어 리액트가 전자정부 표준 프레임워크의 프런트 엔드 개발도구로도 채택되었다. 그만큼 리액트라는 라이브러리의 안정성또한 보장되었음을 알 수 있다. jQuery또한 2018년도 리액트에 밀리기 시작하였으며 당분..
[JS] 합승 택시 요금
택시요금을 계산하는 다익스트라를 활용하는 문제이다. https://school.programmers.co.kr/learn/courses/30/lessons/72413 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 다익스트라 알고리즘을 활용하여 A를 넣으면 A에서 다른 곳으로 갈 수 있는 최소 거리를 얻어낼 수 있다. 만약 다익스트라에 4번 노드를 넣은 결과가 [1,2,3,4,0,6,7] 이 나왔다면 4번에서 5번으로 갈수 있는 최소거리는 6인 셈이다. 문제에서 제공한 그래프는 단방향이 아니라 양방향이다. 익스트라의 결과는 A -> 다른노드 로가는 최소거리..