최신 글 목록
-
깃 커밋 되돌리기 명령어
git reset [옵션] HEAD~[N] 프로젝트 작업 도중 실수로 커밋 메시지를 잘못 입력하거나 최근 커밋을 되돌리고 싶을 때가 있는데 그럴 때 사용하면 되는 명령어 입니다. 커밋을 어떤 옵션으로 되돌릴까? 우리가 로컬 변경 내역을 원격 저장소로 등록하기 위한 과정은 크게 4가지로 나눌 수 있습니다. 파일 수정 (Change) -> git add (Stage) -> git commit -> git push (원격 저장소 등록) 위 과정을 reset 명령어와 옵션으로 순차적으로 되돌린다고 생각하시면 됩니다. 위에 표시된 명령어에서 골치아픈 부분은 [옵션] 부분입니다. 3가지만 기억하면 됩니다. 1. --soft git reset --soft HEAD~ 가장 마지막 커밋을 Stage (Staged Cha..
2022.12.30
-
SSR과 SEO가 웹 서비스에서 왜 중요할까?
0. SSR이 필요한 이유? SSR(Server Side Rendering)은 왜 해야하는 것일까? 에 대한 답을 우선 해야 현재 프로젝트에 알맞는 기술스택을 선정하고 도입을 고려해볼 수 있다. 그 대답은 SEO로 요약할 수 있다. 1. SEO에 관하여 SEO 란 무엇일까? (Search Engine Optimization) 위키백과 정의는 다음과 같다. 검색 엔진으로부터 웹사이트나 웹페이지에 대한 웹사이트 트래픽의 품질과 양을 개선하는 과정이다 - Wiki - 그럼 검색 엔진이 왜 중요할까? 1-1. 국내 인터넷 이용률 → 93% 1-2. 국내 인터넷 이용자 중에서 검색엔진을 통해 웹사이트에 방문하게 되는 비율 1) 차트를 보면 (구글 + 네이버)를 통해 웹사이트로 유입되는 비율이 전체의 약 90% 정..
2022.12.18
-
생산성 향상을 위한 Hygen 도입
컴포넌트 제작 생산성을 높이고 싶을 때는 컴포넌트 제너레이터 Hygen을 도입해보자 1. Hygen 이란? 1-1. 특징 1) 디자인 시스템과 코딩 컨벤션이 그라운드룰로 정해져있는 경우 유용함 2) 자바스크립트 기반의 코드 제너레이팅 툴 3) 특정 프레임워크나 라이브러리에 의존적이지 않음 1-2. 장점 1) 같이 개발하는 사람들과 컴포넌트 구성요소 및 디렉터리 구조를 통일 시킬 수 있다. 2) 반복적으로 작성해야 하는 코드를 쉽게 만들어 개발 생산성을 향상 시킬 수 있다. 3) 약간의 node.js 지식을 가지고 있으면 쉽게 템플릿 생성자를 만들 수 있다. 1-3. 단점 1) react snippet extension 을 추가하는 것 처럼 명령어를 추가로 기억해야한다. 2) 코딩 컨벤션이 바뀌게 되면 지..
2022.12.14
-
패키지 전략 모노레포(Monorepo) 알아보기
모노레포가 등장하게 된 배경에 대해서 정리해볼 필요가 생겨서 글을 작성하게 되었습니다. 모노레포의 등장 배경, 모노레포 도구, 참고 블로그, 시작하기 위한 지식을 습득할 수 있습니다. 1. Repository Strategy Git을 통한 레포지터리 구성 전략은 크게 3가지로 나누어 볼 수 있습니다. http://dsparch.sciomagelab.com/2022/03/12/monorepo-vs-multirepo/ dsparch.sciomagelab.com 1-1. Monolith 1) 한 레포지터리 내에 모듈화 없이 모든 서비스(프론트, 백엔드 등)가 들어가 있는 것 2) 관심사의 분리(separation of concerns)가 되어있지 않음 => 모듈화를 통해 한계 해결 => 멀티레포 등장 1-2...
2022.11.25
-
백오피스 개발에 도움되는 사이트 모음
백오피스 및 관리자 사이트를 제작하는데 도움이 되는 라이브러리를 리서치 또는 직접 사용해 본 도구들을 모아서 정리하였습니다. * ⭐️ 평점 : 제일 프로젝트에 적용하면 좋아보이는 기술이 가장 높은 별점으로 1점부터 3점까지 존재한다. 1. 디자인 프레임워크 1. Chakra UI ⭐️ Chakra UI - A simple, modular and accessible component library that gives you the building blocks you need to build your React a Simple, Modular and Accessible UI Components for your React Applications. Built with Styled System chakra-ui...
2022.11.23
-
프론트엔드 개발에 도움되는 사이트 모음
이때까지 개발하면서 참고하거나 도움되는 모든 웹 사이트들을 모아봤습니다. 꾸준하게 업데이트 될 예정입니다. 1. 정보성 블로그 1-1. 카카오 FE 블로그 - 카카오 FE 지식 블로그 1-2. 네이버 DEVIEW 1-3. 서핏 - 기획, 디자인, 마케팅, 개발 등 모든 분야 지식 1-4. 토스트UI - 개인적으로 웹 FE 관련 블로그 중에 가장 실무에 도움이 되는 내용이 많은 블로그 1-5. Javascript.info - 모던 JS를 제대로 배우고 싶다면 좋은 사이트 1-6. Chrome Developers - 크롬 개발자 도구에 대한 지식을 얻기 좋은 사이트 1-7. Typescript - 한글 번역 공식 문서도 있지만 아직은 번역이 이해하기에는 부족한 부분이 꽤 있어서 차근차근 공식 문서를 보는게 ..
2022.11.20
-
반응형 웹 폰트 크기 설정
html { font-size: 62.5; } 반응형 웹을 만드는 방법 반응형 웹을 만드는 방법은 여러가지가 있는데 그 중 하나는 css의 media-query 속성을 사용하여 브라우저 뷰포트의 크기가 태블릿, 모바일 디바이스 크기가 되었을 때 대응해주는 방법이 있습니다. 이 방법의 단점은 브라우저 특정 뷰포트 크기가 되었을 때 설정이 바뀌기 때문에 뚝 뚝 끊기며 반응하며 유연하지 않습니다. 모바일 시안의 브라우저 뷰포트의 가로 크기를 360px, 데스크탑 시안의 가로 크기를 1200px로 설정했다고 가정하였을 때 361px의 가로 크기부터는 모두 데스크탑 크기의 폰트 사이즈가 적용됩니다. 가로 크기가 361px 이상인 모바일 디바이스가 있다면 데스크탑 폰트 사이즈가 적용되어 매우 불편한 사용자 경험을 ..
2022.07.11
-
깃 커밋 컨벤션 VSCode에 적용하기
깃 커밋 컨벤션 (Git Commit Convention) ? 개인 프로젝트를 하거나 여러 사람들과 협업할 때 무조건 커밋로그를 남기게 되어있습니다. 사람마다 커밋을 작성하는 방식이 모두 다릅니다. 서로 의미를 정하지 않은 의미의 이모지를 넣거나, 무조건 소문자로 쓰거나, fix code 와 같이 매우 추상적으로 작성하는 경우도 있습니다. 그렇게 작성하다 나중에 특정 커밋을 취소하거나 누가 어떤 파일 수정하였는지 추적하고 싶을때가 종종 생깁니다. 하지만 작성되어 있는 커밋로그가 fix code, refactor code 의 연속이라면..? (절망에 빠지게 됩니다.) 그런 상황을 방지하고 원활한 협업을 위해서는 커밋 컨벤션이 필요합니다! 그럼 어떤 컨벤션을 선택해야할까? 제가 위와 같은 질문을 받았다면 ..
2022.07.09
인기 글 목록
-
백오피스 개발에 도움되는 사이트 모음
백오피스 및 관리자 사이트를 제작하는데 도움이 되는 라이브러리를 리서치 또는 직접 사용해 본 도구들을 모아서 정리하였습니다. * ⭐️ 평점 : 제일 프로젝트에 적용하면 좋아보이는 기술이 가장 높은 별점으로 1점부터 3점까지 존재한다. 1. 디자인 프레임워크 1. Chakra UI ⭐️ Chakra UI - A simple, modular and accessible component library that gives you the building blocks you need to build your React a Simple, Modular and Accessible UI Components for your React Applications. Built with Styled System chakra-ui...
2022.11.23
-
타입스크립트 설치 및 타입 정의해보기
이번 포스팅에서는 타입스크립트 소개와 간단한 사용법에 대해 알아보겠습니다. 1. 타입스크립트란? Javascript의 변수에 형(Type)을 부여해주고 그와 관련된 문법 검사를 해주는 것 특징 1) Javascript에 타입 기능을 추가하는것 (string, boolean, int 등) 2) 실시간 에러 처리 3) 오픈소스이며 정적타입 추가에 가장많이 사용되는 툴 4) 브라우저, OS에 독립적 5) .js 코드나 .ts 코드는 결과적으로는 동일하게 작동함 2. 왜 사용해야 할까? 1) Javascript에는 변수에 타입을 명시 할수있는 기능이 없다는 단점을 해결 가능함 ex) 함수나 변수명만으로는 그 타입을 한번에 알기 어렵다 2) 에디터에서 코드를 작성하면서 동시에 자동으로 문법오류 체크가 가능함 3...
2020.08.31
-
프로그래머스 고양이와 개는 몇 마리 있을까 (GROUP BY)
- 문제 핵심 조건 1. 동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회 => 동물 중 고양이와 개가 각각 몇 마리인지 조회 : COUNT, GROUP BY * 예제 테이블에는 Cat, Dog 이외의 animal_type 은 없음 2. 고양이를 개보다 먼저 조회해주세요. => 시간대 순으로 정렬 : ORDER BY (알파벳 순, Cat > Dog) - 정답 코드 SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE - 문제링크 : programmers.co.kr/learn/courses/30/lessons/59040 코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ..
2020.12.04
-
프로그래머스 역순 정렬하기 (SELECT)
- 문제 핵심 조건 1. 동물 보호소에 들어온 모든 동물의 이름과 보호 시작일을 조회 => 모든 동물의 이름과 보호 시작일을 조회 : SELECT 2. 결과는 ANIMAL_ID 역순으로 보여주세요. => ORDER BY, DESC * 칼럼명 : NAME(이름), DATETIME(보호 시작일), ANIMAL_ID - 정답 코드 SELECT NAME, DATETIME FROM ANIMAL_INS ORDER BY ANIMAL_ID DESC; - 문제링크 : programmers.co.kr/learn/courses/30/lessons/59035 코딩테스트 연습 - 역순 정렬하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ..
2020.11.16
-
프로그래머스 모든 레코드 조회하기 (SELECT)
- 문제 핵심 조건 1. 모든 동물의 정보를 ANIMAL_ID순으로 조회 => 모든 동물의 정보를 조회 : *, SELECT => ANIMAL_ID순으로 조회 : ORDER BY - 정답 코드 SELECT * FROM ANIMAL_INS ORDER BY ANIMAL_ID; - 문제링크 : programmers.co.kr/learn/courses/30/lessons/59034 코딩테스트 연습 - 모든 레코드 조회하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 pro..
2020.11.15
-
AbortController를 사용해 API 비동기요청 취소하기
최근 Javascript 웹 페이지 제작을 하면서 fetch를 통한 비동기요청이 진행되는 동안에 요청을 취소해야하는 기능구현이 필요하게 되었다. 페이지 이동, 취소 요청과 같은 이벤트가 발생하게 되면 이전 비동기요청을 취소하는 방법에 대해서 알아보다 이를 더 잘 이해하기 위해 포스팅을 작성하게 되었습니다. 1. AbortController 개요 Fetch 객체는 promise 객체를 리턴하는 비동기함수입니다. 원래 promise 객체는 자체 abort 기능이 없기 때문에 abortcontroller 를 통해서 비동기 동작 중단 기능을 구현 할 수 있습니다. - 사용해야 하는 이유 1) 필요하지 않은 API 호출을 취소하여 웹페이지 성능개선 2) API 호출로 인해 발생하는 비용 절감 2. 기본적인 사용방..
2020.10.03
-
Jest 시작해보기
Javascript 테스트 도구인 Jest에 대해서 학습하였고 그에 대해서 포스팅을 하였습니다. 1. Jest 란 무엇일까? Jest는 단순성에 초점을 둔 Javascript 코드 테스팅 프레임워크 입니다. 2. 왜 Jest를 써야할까? Javascript로 작성한 코드가 올바르게 작동하는지 테스트를 하기위해서 사용합니다. Jest 의 공식 홈페이지에 따르면, 문서화가 잘 되어있고 간단한 설정을 통해 테스트 요구사항을 달성할 수 있다고 합니다. 3. Jest 설치하기 Jest를 시작하기 전에 테스팅을 실행할 디렉토리에 package.json 파일을 생성합니다. npm init -y 그 후 Jest를 개발 의존성으로 설치합니다. npm install --save-dev jest 설치가 완료 되었으면 pac..
2020.08.20
-
일관성 있는 코드 포맷팅을 위한 ESLint 톺아보기
Javascript 소스코드를 더욱 정확하고 일관성 있게 작성하기 위해 도움이 되는 ESLint라는 도구가 있음을 알게 되었고 포스팅하게 되었습니다. 1. ESLint의 개념 우선, ESLint가 무엇인지 알기 전에 ES와 Lint에 대해서 알 필요가 있습니다. 1-1. ES란? ES는 ECMA Script 와 동일하며, ECMA Script란 ECMA-262 기술 규격에 정의된 표준화된 스크립트 프로그래밍 언어이다. 자바스크립트를 표준화하기 위해 만들어진 규격이다. 이 포스팅에서는 (ES = ECMA Script) => Javascript 언어를 가리킨다고 보면 됩니다. 1-2. Lint란? 린트(lint) 또는 린터(linter)는 소스 코드를 분석하여 프로그램 오류, 버그, 스타일 오류, 의심스러운..
2020.08.19
-
트랜스파일을 위한 바벨(Babel) 예제 만들어보기
VSCode 사용법을 익히면서 바벨의 사용법을 알 필요가 생겨서 알아보았고 개념과 사용법에 대해 공유하고자 글을 쓰게 되었다. 1. 바벨(Babel) 이란? - 바벨 공식 홈페이지 Babel · The compiler for next generation JavaScript The compiler for next generation JavaScript babeljs.io 공식홈페이지의 설명에 따르면 자바스크립트 컴파일러라고 한다. 컴파일러(compiler, 순화 용어: 해석기, 번역기)는 특정 프로그래밍 언어로 쓰여 있는 문서를 다른 프로그래밍 언어로 옮기는 프로그램을 말한다. 컴파일러 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 컴파일은 여기로 연결됩니다. 일본의 기업에 대해서는..
2020.08.13
-
깃 커밋 되돌리기 명령어
git reset [옵션] HEAD~[N] 프로젝트 작업 도중 실수로 커밋 메시지를 잘못 입력하거나 최근 커밋을 되돌리고 싶을 때가 있는데 그럴 때 사용하면 되는 명령어 입니다. 커밋을 어떤 옵션으로 되돌릴까? 우리가 로컬 변경 내역을 원격 저장소로 등록하기 위한 과정은 크게 4가지로 나눌 수 있습니다. 파일 수정 (Change) -> git add (Stage) -> git commit -> git push (원격 저장소 등록) 위 과정을 reset 명령어와 옵션으로 순차적으로 되돌린다고 생각하시면 됩니다. 위에 표시된 명령어에서 골치아픈 부분은 [옵션] 부분입니다. 3가지만 기억하면 됩니다. 1. --soft git reset --soft HEAD~ 가장 마지막 커밋을 Stage (Staged Cha..
2022.12.30
-
반응형 웹 폰트 크기 설정
html { font-size: 62.5; } 반응형 웹을 만드는 방법 반응형 웹을 만드는 방법은 여러가지가 있는데 그 중 하나는 css의 media-query 속성을 사용하여 브라우저 뷰포트의 크기가 태블릿, 모바일 디바이스 크기가 되었을 때 대응해주는 방법이 있습니다. 이 방법의 단점은 브라우저 특정 뷰포트 크기가 되었을 때 설정이 바뀌기 때문에 뚝 뚝 끊기며 반응하며 유연하지 않습니다. 모바일 시안의 브라우저 뷰포트의 가로 크기를 360px, 데스크탑 시안의 가로 크기를 1200px로 설정했다고 가정하였을 때 361px의 가로 크기부터는 모두 데스크탑 크기의 폰트 사이즈가 적용됩니다. 가로 크기가 361px 이상인 모바일 디바이스가 있다면 데스크탑 폰트 사이즈가 적용되어 매우 불편한 사용자 경험을 ..
2022.07.11
-
React JSX 개념부터 적용까지
React 를 사용해 웹 프로그래밍 개발을 시작하게 된다면 만나게 될 JSX 가 무엇인지에 대해서 알아보겠습니다. 1. JSX 란? 1) JSX 의 Full name 은 Javascript XML 입니다. 2) JSX 는 React 코드에서 HTML 을 쉽게 사용할 수 있도록 만들어 줍니다. 2. JSX 를 쓰면 좋은점? ex) 3 가지 방법으로 'lets use the JSX' 라는 글자를 가진 p 태그를 만들어 보겠습니다. 1) Vanilla Javascript const target = document.querySelector('.target'); const p = document.createElement('p'); p.innerText = 'lets use the JSX'; target.appen..
2020.12.10