본문 바로가기

전체 글 59

[React] useState 동작 원리

useState의 동작 원리를 이해하면 개발을 하는데 도움이 될 것 같아서 useState 동작 원리를 정리해보았다. useState 동작 원리 useState는 상태를 변경하기 위해 setState를 호출하면, 호출 즉시 상태가 변경되지 않는다. 다시 말해서 비동기적(Asynchronous)으로 동작한다. 코드를 통해 자세히 살펴보자. 좋아요 버튼을 클릭하면 setLiked(liked + 1)을 두 번 호출하게 handleClick 함수를 구현했다. const App = () => { const [liked, setLiked] = useState(0); const handleClick = () => { setLiked(liked + 1); setLiked(liked + 1); }; return ( 좋아..

·
2022. 10. 24.
·

[React] useEffect

useEffect useEffect는 함수 컴포넌트에서 side effect(부수 효과)를 수행할 수 있는 Hook이다. useEffect를 사용하면 컴포넌트가 마운트 되었을 때, 언마운트 되었을 때, 업데이트 되었을 때 특정 작업을 수행할 수 있다. 기본 문법 useEffect의 기본 문법은 다음과 같다. useEffect(function, deps); function: 수행하고자 하는 작업 deps: 검사하고자 하는 배열 (배열에 특정 값을 넣으면 해당 값이 변경될 때만 function 실행) 컴포넌트가 마운트 되었을 때 컴포넌트가 마운트 되었을 때 특정 작업을 수행하고 싶은 경우, deps에 빈 배열을 넣는다. import React, { useEffect } from 'react' ..

·
2022. 6. 2.
·

[Git] Fork한 Repository 최신 상태 유지

fork한 repository가 변경되었을 때 최신 상태로 유지하기 위해서는 현재 repository에 remote repository로 추가해야 합니다. 다음 명렁어로 현재 추가되어 있는 remote repository를 확인합니다. $ git remote -v origin https://github.com/user_name/repository_name.git (fetch) origin https://github.com/user_name/repository_name.git (push) remote repository 목록에서 fork한 repository가 없다면 fork한 repository를 upstream이라는 이름으로 추가합니다. $ git remote add upstream https://gi..

Git
·
2021. 4. 7.
·

은행 코드

다음 표는 은행별 은행코드를 정리한 표입니다. 은행이름을 기준으로 오름차순 정렬되어 있습니다. Ctrl + F 또는 Command + F를 사용해서 원하는 은행을 찾으시면 됩니다. 은행명은행코드 (구)조흥은행021경남은행039광주은행034교보증권261국민은행004기술신용보증기금077기업은행003농축협조합(지역농협)012농협은행(중앙회)011대구은행031대신증권267대우증권238도이치은행055동부증권279리딩증권223메리츠종합금융증권287미래에셋증권230부국증권290부산은행032비엔피파리바은행061산림조합중앙회064산업은행002삼성증권240상호저축은행050새마을금고045수출입008수협007신영증권291신한금융투자278신한은행088신협048아이엠투자증권268에스케이증권266엘아이지투자증권292오픈은행097우..

·
2021. 4. 6.
·

터미널 유용 단축키

터미널에서 유용하게 사용할 수 있는 단축키입니다. ⌃: Control Key ⌥: Option Key ⌘: Command Key 단축키 설명 ⌃ + B 좌측으로 한칸 커서 이동 (←와 동일) ⌃ + F 우측으로 한칸 커서 이동 (→와 동일) ⌃ + A 라인 맨 앞으로 커서 이동 ⌃ + E 라인 맨 뒤로 커서 이동 Esc B (Esc 누른 후 바로 B 누름) 단어 기준 좌측으로 커서 이동 Esc F (Esc 누른 후 바로 F 누름) 단어 기준 우측으로 커서 이동 Esc T (Esc 누른 후 바로 T 누름) 현재 커서에 위치한 단어와 좌측의 단어의 위치를 변경 ⌃ + D 현재 커서에 있는 문자 삭제 ⌃ + U 현재 커서 부터 라인 맨 앞까지 문자 삭제 ⌃ + K 현재 커서 부터 라인 맨 뒤까지 문자 삭제 ⌃..

·
2021. 4. 2.
·

[알고리즘] 다익스트라 알고리즘(Dijkstra Algorithm)

다익스트라 알고리즘(Dijkstra Algorithm) 다익스트라 알고리즘은 그래프에서 정점 사이의 최단 경로를 찾는 알고리즘 입니다. 프림 알고리즘과 동작방식이 비슷하지만 다익스트라 알고리즘은 시작 정점에서 정점 V 까지의 경로의 길이를 기준으로 최단 경로를 연결합니다. (단 가중치가 음수인 경우 사용할 수 없습니다.) 다익스트라 알고리즘은 다음과 같은 원리로 동작합니다. 시작 정점으로부터 각 정점까지의 경로의 길이를 저장할 배열을 만들고 모든 정점을 ∞(무한대)으로 초기화 시작 정점의 경로의 길이를 0으로 초기화하고 시작 정점을 최단 경로에 추가 최단 경로에 추가된 정점의 인접한 정점을 확인해서 경로의 길이를 갱신하고 최단 경로에 추가. (단 추가하려는 정점이 이미 최단 경로 안에 존재할 경우 경로의..

·
2020. 9. 29.
·

[알고리즘] 최소 신장 트리(Minimum Spanning Tree)

최소 신장 트리(Minimum Spanning Tree) 신장 트리(Spanning Tree)는 그래프 내에 있는 모든 정점을 연결하고 사이클이 없는 그래프를 의미합니다. n개의 정점이 있다면 신장 트리의 간선 수는 n-1개가 됩니다. 최소 신장 트리는 각 간선이 가지고 있는 가중치의 합이 최소가 되는 신장 트리입니다. 가중치는 거리, 비용, 시간 등 여러가지로 응용할 수 있습니다. 최소 신장 트리의 대표적인 알고리즘으로는 프림 알고리즘(Prim’s Algorithm)과 크루스칼 알고리즘(Kruskal’s Algorithm)이 있습니다. 프림 알고리즘(Prim’s Algorithm) 프림 알고리즘은 로버트 프림(Robert C. Prim)이 만든 최소 신장 트리 알고리즘 입니다. 프림 알고리즘은 최소 신..

·
2020. 9. 25.
·

[알고리즘] 그래프(Graph)

그래프 정의 그래프는 정점(Vertex)의 집합과 간선(Edge)의 집합으로 이루어진 자료구조입니다. 정점의 집합을 V, 간선의 집합을 E, 그래프를 G라고 했을 때 G = (V, E) 입니다. 정점은 위치를 의미하고, 간선은 정점과 정점을 연결하는 선을 의미합니다. 간선으로 연결되어 있는 두 정점을 가리켜 서로 인접(adjacent)해 있다고 표현합니다. 인접한 두 정점은 경로를 형성하기도 하는데 위 그림을 보면 1, 2, 3, 4 가 경로를 형성합니다. 경로 1, 2, 3, 4 사이에는 간선이 (1, 2), (2, 3), (3, 4) 3개가 있으므로 길이는 3이 됩니다. 경로가 정점 하나를 두 번 이상 거치게 된다면 그 경로는 사이클(Cycle)이 있다고 표현합니다. 위 그림에서 1, 2, 3 경로가..

·
2020. 9. 21.
·

[C#] 인터페이스(Interface)

인터페이스(Interface) 인터페이스는 약속입니다. 차는 우측 방향으로 통행해야 하고, 초록불일때 통행을 해야하는 것 처럼 인터페이스는 클래스가 따라야 하는 약속을 정의합니다. 즉 인터페이스는 인터페이스로부터 파생된 클래스가 어떤 메소드를 구현할지를 정의합니다. 인터페이스에서 정의한 메소드는 파생된 클래스에서 반드시 구현해야 합니다. 인터페이스는 다음과 같은 특징을 가지고 있습니다. 인스턴스를 만들 수 없음 접근 제한자(Access Modifier)를 사용할 수 없고 모두 public으로 선언됨 메소드(Method), 이벤트(Event), 인덱서(Indexer), 프로퍼티(Property)만을 가짐 파생 클래스는 인터페이스에 선언되어 있는 모든 메소드(Method), 프로퍼티(Property)를 구현..

C#
·
2020. 5. 11.
·

워드(Word) 글자 간격 벌어짐 해제

다음과 같이 글자 간격이 벌어질 경우 해결하는 방법을 알려드리겠습니다. 페이지 영역에서 우클릭 -> 단락을 클릭합니다. 한글 입력 체계 탭에서 한글과 영어 간격을 자동으로 조절, 한글과 숫자 간격을 자동으로 조절을 체크 해제 한 후 확인을 클릭합니다. 설정을 완료하면 다음과 같이 글자 간격이 벌어지지 않습니다.

·
2020. 5. 7.
·
반응형