저번에 이어서 ES6의 특징을 알아본다.위의 코드를 보면 Array로 된 123을 각각 변수one, tow, three에 넣을 수 있다. 이러한 방식을 디스트럭쳐링이라한다.쉽게 변수 리스트에 값 리스트를 순서대로 넣는 것이다.위처럼 객체에도 사용할 수 있으며 할당 기준
이력서를 지원하면 항상 ES6에 대해 언급된다. 확실하게 어떠한 문법들이 있는지 확인하고 어째서 좋은 건지 확인하자.var : 재정의, 재선언 가능let : 재선언 가능const : 재선언, 재정의 모두 불가능 (불변)Why? var변수는 의도하지않은 변경이 일어날 가
React를 사용하다보면 정말 많이 들어본 이야기가 SPA일 것이다. 나도 어떤 느낌인지는 알겠지만 확실하게 알아보려 한다.위키에 검색해보면 "서버로부터 완전한 새로운 페이지를 불러오지 않고 현재의 페이지를 동적으로 다시 작성함으로써 사용자와 소통하는 웹 애플리케이션이
최근 실제 현업에서 일하시는 분들과 같이 일할 수 있는 기회가 되어서 빠르게 도움을 주었던 내용을 정리한다. "기존에 학생시절에 팀프로젝트를 진행할 때와는 너무 많은 부분이 달라 좋은 경험이였다 생각한다"내가 들어간 시점은 디자인이 어느 정도 잡히고 그것에 따른 퍼블리
이번에 새로이 팀프로젝트를 진행하며 진행상황을 공유하기위해 gitpage에 FE의 정적버전을 공유하기로 했다. 그 과정에서 있던 버그 수정방법이다.먼저 정적으로 nextjs를 빌드하기 위해서는 그냥 run build 로는 부족하다. package.json을 수정해야하는
이해가 편한 코드띄어쓰기 if else 삼항연산자 등 내가 아닌 누군가 보더라도 한번에 파악하기 쉬운 코드를 작성해야한다.중복이 없는 코드코드에서 중복을 최소화해 공통부분은 모듈화 하면 후에 재상용하기에 편하고 코드를 리펙토링할때 중복작업을 피할 수 있다.테스트가 용의
기존에 MSA아키텍쳐의 경우 정말 많은 기업에서 활용하기에 알아본적이 있지만 BFF는 처음 들어보기에 이번 기회에 새로이 공부하고자 한다.MSA의 가장 큰 특징은 독립적으로 배포가 가능한 작은 서비스의 모음이다.Why? Monolithic Architecture처럼
이번 문제 또한 복잡도에 관한 문제였다. (복잡도시치...)이번 문제는 2개의 숫자로 이뤄진 문자열에서 공통을 찾아내는 것이였다. 그리고 찾아낸 숫자로 만드는 가장 큰수를 알아 내는 것이다.문제만 보면 크게 어려움이 없지만 복잡도에서 문제가 발생했다.해법X in Y말
이번 문제는 효율성에 관한 문제이다.지도와 관련된 BFS문제였다 여느 지도 문제와 동일하게 한번 간 곳은 못가고 도착 지점까지 가장 짧은 길을 찾는 문제였다.가장 짧은 길을 찾아야하니 BFS인 것은 알았지만 효율성에서 계속 실패했는데 3가지 이유가 있었다.len()참
오늘은 BFS문제를 풀고난 후 회고이다.금주에 코딩테스트를 봐야해서 처음부터 다시 풀면서 준비 중이다.오랜만에 DFS, BFS 문제를 푸는 중 복잡도에 대해 생긴 의문점을 정리한다.문제는 n개의 숫자의 부호만 바꿔서 특정 수를 만드는 것이고 같은 수라고 index가 다
1주일 넘게 Nextjs Redux next-redux-wrapper에 redux persist까지 사용하면서 씨름한 과정이다.SSR, SSG, CSR 다양한 렌더링을 리액트로 가능하게 하고 SSR을 쓰면 첫화면을 빠르게 볼 수 있게 하니까 사용자도 좋고 SEO도 좋고
몇일 동안 Nextjs Redux를 이용한 사이트 제작을 공부 하면서 새로이 알게 된 점과 phryneas/ssr-experiments의 예를 통해 배운점을 정리한다. 먼저 계속 씨름 했던 부분은 Nextjs에서 서버사이드로 Redux를 사용하려 했던점이다. Next
백엔드로 django를 사용하며 rest로 구성하기 위해 공부 django는 풀스택 프레임워크이다. 즉 프론트, 백엔드를 전부 제공할 수 있다. 실제로 템플릿을 이용해 프론트를 보여주고 간단하게 그 값을 백엔드에서 활용할 수 있다. 하지만 본인은 개발 과정에서 프론트
Object.Keys()는 정말 자주 사용하는 함수로 객체에서 키 값을 string으로 가져와 다양하게 이용하는 함수이다.하지만 string으로 가져와서 TypeScript에서 키값을 이용해 객체에 접근할 때 에로 사항이 있다. 이럴때 사용하기 좋은 것이 바로 as A
13버젼의 AppRouter에서 조금은 혼동할 수 있는 Dynamic Routes를 정리한다. 먼저 이전 PageRouter방식이다.쉽게 생각하면 하위 url을 폴더로 그리고 그 속에params.name.js파일을 만들어 이를 변수 = useRouter() 함수로 가져
데이터를 표현하는 가장 단순한 방법이 테이블일 것이다. 생각보다 테이블은 많은 곳에 응용할 수 있고 많이 사용하는 만큼 정확한 디자인이 필요하다!그리드 : 모든 셀의 border를 준 스타일 셀간 구별이 편하지만 시각적 방해가 심하다.가로선 : 모든 셀의 border를
INNERJOIN 교집합LEFT/RIGHT JOIN 부분집합OUTER JOIN 합집합 (mysql=LEFT+RIGHT)위와 같은 종류가 있고 on속성명을 통해서 속성을 기준으로 테이블을 구한다.
Python의 다양한 라이브러리를 이용해서 백엔드를 구성하기위해 Django를 사용한다 > 기존 FastAPI는 사용해 보았다. 가장 많이 사용하는 python 백엔드 프레임워크 Django를 익히자 설치 > python -m pip install Django 확
기존 JS + Jquery로 진행한 프로젝트를 리뉴얼하면서 새로운 언어스킬을 늘리려고 한다. 그래서 Next.js + ReduxToolkit + TypeScript의 환경을 구성하게 되었는데 생각해보면 > Next.js : SSR, Redux : CSR 형태이기에 설
TypeScript는 정적 타입 검사기이다.올바르지 않은 타입을 사용할 때 생기는 오류입니다.위에서 message가 문자면 아래 호출이 오류일것이고 함수라면 위에 toLowerCase가 오류입니다.이와같이 잘못된 타입에 미리 오류를 호출 해주는 것이 TypeError입
Redux는 액션을 이용한 효율적인 상태관리 라이브러리 특히 전역으로 관리하기 편하다.Redux-Toolkit은 Redux를 만든 곳에서 공식적으로 효율적인 Redux 개발을 위해 만들어진 툴킷Redux 작성하는 코드를 간단하게 작성, Redux 보다 훨씬 효율적이므로
NextJS 세팅 중에 생긴 궁금증ESlint?ES(Ecma Script)+Lint 말그대로 Ecma에서 만들 표준을 지키도록하는 에러가이드!코드스타일을 정할 수 있어 후에 협업시에 유용하다.Prettier?문법적 오류를 체크하는 ESLint가 있다면 문법과 다르게 코
MySQL은 전 세계에서 가장 인기 있는 오픈소스 관계형 데이터베이스 중 하나이다.DB-Engines에서 전 세계에서 두 번째로 인기 있는 데이터베이스로 선정되었다.퀴리언어를 통해 데이터를 정의, 조작, 제어, 퀴리할 수 있다.RDBMS에 속하며 수직확을 통해 단일 인
칠판에 글쓰기코테 문제를 보고 그릴수 있는 그림을 그리는 것이다. 주어진 문제를 눈으로 볼수 있도록 하는 것이다. 또 문제에서 주어진 명제를 적어둠으로 조건을 찾을 수 있다.알고리즘을 생각하기가장좋은 방법은 문제를 통해 알고리즘을 떠올리는 상향식 전개지만 그럴 수 없는
논리적 순서, 물리적 순서 동일 index로 접근가능, index를 알면 O(1) 랜덤 엑세스 가능삽입 삭제 후 옮겨주는 과정으로 O(n)자신 다음이 누군지만 알고 있다삽입 삭제 O(1), 특정 원소 찾기에 O(n)하지만 트리의 근간이 된다!LIFO 나중에 들어온 원소
프로세스 : 실행중인 프로그램디스크 -> 메모리 -> CPU할당가능한 프로그램 + 동적할당 메모리 힙PCB : 프로세스의 중요 정보를 가짐 프로세스 생성 시 같이 생김PCB 저장정보 : 1\. PID2\. 프로세스 상태 (new, ready, running, waiti
네트워크 이야기 1. 네트워크의 탄생 > 흔하게 네트워크가 뭐냐고 불어보면 2개이상의 컴퓨터가 연결되 통신하는 것이라는 말을 한다. 하지만 그렇게 단순하게 넘어갈 수 없다..... A, B 두사람은 서로가 가진 정보를 공유해 더욱 성장하고 싶다. 하지만 매일 종이를
솔직하게 코드가 너무 스타게티다..중요점은 트리를 만들고트리를 순차적으로 돌면서 최소 횟수의 경우 수를 찾는다. 과정에서 일부 노드가 조건을 넘어가면 -1 아니면 1~3의 숫자중에 적절한 숫자로 나누어 결과에 표현한다.결과를 보낼때는 이전에 순차적으로돌며 떨어지는 숫자
\[4,5,4,8,10,14,11,13,5,12,3,7,1,4]2차원 공간에서 최소 횟수로 미사일 요격하기 각 미사일은 \[4,5, 4,8]과 같이 2차원 배열로 나타남 미사일은 사이 1칸 공간에서 발사됨(1~2, 4~5)답 :문제풀이:1\. 핵심은 2차원 배열 정렬
토이프로젝트를 혼자 진행하면 디자인의 중요성을 계속해서 느끼게 됩니다. 아무리 좋은 기능을 하는 사이트여도 눈에 들오지 않으면 사용하기 불편할 수밖에 없습니다. 그래서 디자인의 기초를 공부하면서 배운 팁을 공유하고자 합니다.여백은 넓게 잡고 서서히 줄여가면서 디자인하는