분류 전체보기

CS/자료구조

1. Stack & Queue (스택과 큐)

리액트와 리덕스에 치이다 보니 내일 있을 알고리즘 스터디공부를 이제야... 이번 알고리즘 공부는 스택과 큐를 공부하기로했다. 이번 공부를 하다가 자료구조와 알고리즘에 차이를 알게 되었다. 자료구조 : 데이터의 표현과 저장 방법을 의미 알고리즘 : 저장된 데이터를 처리하는 과정 자주쓰는 배열이 자료구조에 포함되어 있다고 생각하면 된다. 스택 (Stack) 스택은 push와 pop만 할 수 있으며, 실행이 되는 특정한 순서를 따르는 선형적 데이터 구조 즉, 책을 쌓는 것처럼 차곡차곡 쌓아 올린 형태의 자료구조. 스택(Stack)의 특징 스택 내부의 데이터는 top을 통해서만 접근할 수 있다. 스택에 데이터를 삽입할 때는, top위에 쌓게 된다. (push) 스택에서 데이터를 삭제할 때는, top에 위치한 데..

백엔드/Node

4. 브라우저의 렌더링 과정

스터디에서 이번주제로 정해진 브라우저의 렌더링 과정을 블로그를 작성하며 공부를 해보려고한다. 평소에 아무생각없이 들락거렸던 웹사이트들이 어떻게 작동되고 얼마나 복잡한일을 거친뒤 나오는건지 알아보도록하자. 그럼 브라우저에서의 렌더링과 파싱 단어부터 간단하게 무엇인지 알아보자 렌더링 (rendering) HTML, CSS, Javascript 파일을 파싱해, 브라우저에 시각적으로 출력하는 과정 파싱 (parsing) 프로그래밍 언어로 작성된 파일을 실행시키기 위해 구문 분석(syntax analysis)을 하는 단계 브라우저의 렌더링엔 과정이 있으므로 그 과정을 순차적으로 알아보도록하자 브라우저 렌더링의 과정 1. 브라우저는 HTML, CSS, JS, 이미지, 폰트 등 리소스를 서버에 요청하고, 응답으로 받..

프론트엔드/React

10. state & event 문제 실습

오늘은 state와 event를 실습해볼 수 있는 문제를 풀어보았다. 이번 문제들을 풀어봄으로써 useState의 사용법, 부모 컴포넌트에서 자식 컴포넌트로 props를 넘겨주기, onClick, onChange 등과 같은 이벤트주는방법 등을 더 확실히 알 수 있던 계기가 되었다. 1번 1번 문제는 비교적 간단하였다. state와 이벤트를 이용하여 아래와 같이 출력이 되게 하면되었다. 1번 코드 풀이 먼저, 클릭횟수를 저장하기 위해 counter 상태값을 만들어준다. 클릭이라는 버튼을 클릭하면 counter가 1이 증가하도록 하는 increase라는 함수를 만들어준다. increase함수에는 상태변경함수인 setCounter를 통해 상태 counter에 변화(counter+1)를 주었다. 버튼 밖으로 커..

프론트엔드/Redux

2. 구독 페이지 (리액트 리덕스)

오늘은 툴킷을 사용하지 않은 리덕스와 리액트 리덕스로 간단하게 컴포넌트 2개의 페이지를 만들어서 리덕스 활용법을 연습해보았다. 먼저, 리액트 리덕스를 사용하기 위해서는 npx create-react-app . 을 통하여 리액트앱을 생성해주고, npm i redux react-redux 위의 명령어를 통해 리덕스와 리액트 리덕스를 설치해줍니다. 설치가 완료되었다면, 리덕스와 리액트 리덕스를 사용할 준비가 끝났다 이전의 리덕스 포스팅에서 봤다시피 리덕스에서는 store, action, reducer가 매우 중요하다. 1. Redux 리덕스란? 리덕스 공홈에선 리덕스를 이렇게 설명하고 있다. Redux는 자바스크립트 앱을 위한 예측 가능한 상태 컨테이너 Redux는 여러분이 일관적으로 동작하고, 서로 다른 환..

프론트엔드/Redux

1. Redux

리덕스란? 리덕스 공홈에선 리덕스를 이렇게 설명하고 있다. Redux는 자바스크립트 앱을 위한 예측 가능한 상태 컨테이너 Redux는 여러분이 일관적으로 동작하고, 서로 다른 환경에서 작동하고, 테스트하기 쉬운 앱을 작성하도록 도와준다. 이게 무슨소리...?? 그냥 쉽게 데이터를 중앙집권화를 시켜서 데이터 사용 및 관리를 편하게 만들어주는 라이브러리 라고 생각하면된다. Redux에는 3가지의 원칙이 있다. 1. Single source of truth 동일한 데이터는 항상 같은곳에서 가지고 온다. 즉, 스토어라는 하나뿐인 데이터 공간이 있다는 의미 2. State is read-only 리액트에서는 setState 메서드를 활용해야만 상태변경이 가능 리덕스에서도 액션이라는 객체를 통해서만 상태변경이 가능..

CS/알고리즘

1. 정렬 알고리즘 [Sorting]

정렬 알고리즘 (Sorting Algorithm) 무작위로 섞여있는 데이터를 어떤 기준에 맞춰 정렬하는 알고리즘 정렬 알고리즘은 다양한 경우에 매우 유용하게 사용됨 각종 데이터 목록을 정리하고 싶을 때 분포도의 중위값을 알아내고 싶을 때 데이터에서 중복값을 잡아내고 싶을 때 이진 탐색을 하고 싶을 때 사실, 자바스크립트에서 정렬을 하고자할때 sort()라는 메서드를 사용하면 정렬을 해준다. 하지만 정렬 알고리즘을 배우는 이유는 데이터들의 양이나 상황에 따라 어떤 정렬을 사용하는 것이 좋은지를 알고 가리기 위해 몇몇 유명한 정렬 알고리즘을 알아보려한다. 알아볼 정렬 알고리즘: 버블 정렬 선택 정렬 삽입 정렬 퀵 정렬 힙 정렬 병합 정렬 먼저, 정렬의 Stable정렬, In-place정렬에 대해 알아보자 S..

프론트엔드/React

9. useReducer란??

이번엔 react 훅 중에 useReducer 훅에 대해 포스팅이다. useReducer란?? - useState를 대체할 수 있는 함수. - 보통 React에서 상태 관리를 위해 가장 많이쓰는 훅은 useState다. - 하지만 더 복잡한 상태관리를 해야할 경우에는 useReducer 훅을 사용 useReducer의 구조 import React, { useReducer } from "react"; const [state, dispatch] = useReducer(reducer, initialState, init) state : 컴포넌트에서 사용할 상태 dispatch 함수 : state 업데이트를 위한 요구 - 첫번째 인자인 reducer를 실행시키는 함수 - 컴포넌트 내에서 state의 업데이트를 일..

코테/koans, 코플릿, sprint

9. React Custom Component

이번 과제에서는 지금까지 배웠던 내용들을 토대로 Modal, Toggle, Tab, Tag UI을 구현해보았다. 🖥️ Modal 컴포넌트 Modal 컴포넌트에서 핵심은 새로운 창이 아니라, 레이어를 깔아야한다. 먼저, useState를 사용하여 isOpen 상태를 만들어주어, 모달창이 켜진상태와 꺼진상태의 상태를 만들어준다. 그리고, openModalHandler 함수를 통하여 함수가 호출되어 실행되면, 모달창의 켜짐여부인 isOpen의 상태가 바뀌게 만들어주었다. ModalBackdrop과 ModalView의 부모 컨포넌트인 ModalBtn에 이벤트 핸들러를 주어 자식 컴포넌트에도 같은 핸들러가 작동이 되기때문에 자식 컴포넌트에서는 작동이 되지않게 하기위해 해당 이벤트 핸들러 e에 stopPropaga..

plla2
'분류 전체보기' 카테고리의 글 목록 (7 Page)