분류 전체보기(1085)
-
ETC./Git
2020.12.26
12
[Git] Git 레파지토리 생성 & 소스 올리기 (Git Bash활용)
GitHub에서 원격저장소를 만든 뒤 Git Bash를 활용하여 Push하는 방법입니다. GitHub Repository 생성 1. 아래 URL을 클릭하여 GitHub로 들어간 뒤 로그인 하고 좌측 상단에서 저장소 NEW 버튼을 클릭합니다. https://github.com/ 2. 생성 할 Repository의 주소와 설명등 상세 설정을 한 뒤 저장소 생성을 클릭하여 Repository를 생성합니다. git bash에서 소스 push 1. 원하는 소스폴더에서 git bash를 실행시킵니다. 2. $ git init/p> 깃을 init 시켜줍니다. (로컬저장소 만들기) 3. $ git status 올라가 파일이 있는지 현재 폴더에 있는 파일들을 확인합니다. 지금은 파일들이 빨간색으로 되어있지만 add작업을..
-
ETC./Git
2020.12.25
11
[Git] 윈도우 Git 설치하기 (Git for Windows)
GIt을 사용하려면 먼저 Git이 PC에 설치되어 있어야합니다. Git설치방법에 대해 알아봅니다. 윈도우버전 Git설치하기 1. Git 설치파일을 다운로드 받습니다. 아래에 링크되어 있는 페이지에 들어가서 자신의 OS에 맞는 Git 설치버전을 받아주세요. Git다운로드 링크 바로가기 2. 약관을 읽어주고 Next를 눌러줍니다. 3. 설치경로를 선택하고 Next를 눌러줍니다. 4. 설치할 Component들을 선택합니다. 저는 기본으로 선택되어 있는것 이외에는 추가로 설치하지않고 Next를 눌러 진행하겠습니다. 5. 시작 메뉴에 폴더를 만듭니다. 시작메뉴에 폴더를 추가하고 싶지 않다면 Don't create a Start Menu folder 체크박스를 클릭하고 Next를 눌러주세요. 6. 깃의 기본에디터..
-
ETC./IDE
2020.12.17
3
[IDE] Visual Stdio 콘솔창 사라지는 현상 해결하기
비쥬얼 스튜디오에서는 Ctrl + F5를 사용하여 디버깅 하지 않고 시작할 수 있습니다. 이렇게 하면 바로 명령 프롬프트(cmd)창이 실행되면서 결과값을 확인할 수 있죠. 하지만 어떠한 이유인지는 모르겠으나 비쥬얼 스튜디오를 켜고 빈프로젝트를 하고 실행을 시켰는데 콘솔창이 시작과 동시에 계속 꺼졌습니다. 본래는 프로그램이 시작되고 프로그램이 종료되면 cmd창은 꺼지는것이 맞습니다. 하지만 이렇게 콘솔창이 사라지게 되면 짜놓은 소스코드의 결과물을 확인할 수 없기때문에 Visual Studio는 자동으로 프로그램이 종료되기 직전에 프로그램을 멈추어주는것으로 알고 있었는데 어떠한 이유인지는 모르겠으나 이 부분이 제대로 작동이 되지 않고 있었던 것 같습니다. system("pause"); 코드를 마지막에 삽입하..
-
DB
2020.11.23
[DB] MySQL 다운로드 / 설치 방법 (for Windows)
MySQL이란? MySQL은 전세계에서 많이 사용하는 빠른 작동과 경쾌함이 장점인 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다. MySQL은 오픈소스로 이루어져있고 여러 운영체제에서 동작이 가능하며 많은 프로그램 언어를 지원한다는 장점이 있습니다. 유료버전도 따로 있으나 대부분은 무료버전을 사용하셔도 큰 무리가 없습니다. MySQL 설치 / 다운로드 방법 1. 오늘은 윈도우 10에서 MySql을 한번 설치해보려고 합니다. 아래에 링크된 사이트로 접속하여 최신버전의 MySql Install 파일을 다운 받습니다. 최소용량으로 설치하려면 2.5M의 installer를 설치해주세요. dev.mysql.com/downloads/installer/ 2. 오라클 계정에 로그인 하라고 하는데 로그인 ..
-
ETC./Spring
2020.11.22
2
[Spring] Spring Tools 4 (Spring Boot) 설치 및 환경설정 방법
스프링 부트(Spring Boot)란? 스프링 부트는 스프링 설정에서 반복되는 코드를 싹 빼고 간편하게 이용할 수 있도록 확장된 버전입니다 스프링은 스프링부트와 비교하여 여러가지 장점이 있습니다. 개발을 하며 가장 와닿는 장점은 설정이 매우 간편해졌다는 점입니다. 스프링의 경우 많은 XML설정 파일등을 작성하는 등 설정하기도 힘들고 웹을 구축하기 위해 많은 Dependency 설정을 추가해주는 등 설정을 위한 코드의 양도 굉장히 많았지만 스프링부트에서는 starter 라이브러리 사용으로 많이 간소화 되었습니다. 이렇게 스프링 부트는 반복되는 개발환경 구축을 위한 코드작성등의 노력을 줄여주고 쉽고 빠르게 프로젝트를 설정할 수 있도록 도와줍니다. 또한 Maven보다 강력한 Gradle이라는 빌드배포 툴을 제..
-
ETC./Algorithm
2020.11.21
7
[Algorithm] 각 정렬의 특징 및 장단점 & 시간복잡도
정렬 별 특징 선택정렬 (Selection Sort) 선택정렬은 앞에서부터 차례대로 정렬하는 방법입니다. 먼저 주어진 리스트 중에 최소값을 찾고 그 값을 맨 앞에 위치한 값과 교체하는 방식으로 진행하는 정렬방법입니다. 코드가 직관적이기에 구현도 비교적 간단합니다. n개 원소에 대해 n개의 메모리를 사용하기에 데이터를 하나씩 정밀 비교가 가능하며 정렬을 위한 비교 횟수는 많으나 교환 횟수는 상당히 적다는 것이 장점인 정렬 방식입니다. 따라서 교환이 많이 이루어져야하는 자료 상태에서 가장 효율적으로 적용될 수 있는 정렬 방식입니다. 선택 정렬이 가장 적합한 자료 상태는 역순 정렬입니다. 즉, 내림차순으로 정렬되어 있는 자료를 오름차순으로 재정렬할 때 최적의 효율을 보여줍니다. 반대로 이미 정렬된 상태에서 소..
-
Web/Web Programming
2020.11.14
8
[Network] TCP / UDP의 개념과 특징, 차이점
전송 계층에서 사용되는 프로토콜 (TCP / UDP) TCP와 UDP는 OSI 표준모델과 TCP/IP 모델의 전송계층에서 사용되는 프로토콜입니다. 전송계층은 송신자와 수신자를 연결하는 통신 서비스를 제공하고 IP에 의해 전달되는 패킷의 오류를 검사하며 재전송 요구 제어등을 담당하는 계층입니다. 쉽게 말해 데이터의 전달을 담당한다고 생각하시면 됩니다. TCP와 UDP는 포트 번호를 이용하여 주소를 지정하는것과 데이터 오류검사를 위한 체크섬 존재하는 두가지 공통점을 가지고 있지만 정확성(TCP)을 추구할지 신속성(UDP)을 추구할지를 구분하여 나뉩니다. 데이터를 중요하게 생각하여 확실히 주고받고 싶을 때는 ‘TCP(Transmission Control Protocol)’를 사용합니다. TCP는 통신할 컴퓨터..
-
Web/Web Programming
2020.11.13
5
[Network] TCP / IP란 무엇인가?
TCP / IP란? TCP/IP(Transmission Control Protocol/Internet Protocol)는 데이터가 의도된 목적지에 닿을 수 있도록 보장해주는 통신 규약입니다. TCP / IP는 이름에서 알 수 있듯 TCP / IP에는 두가지 프로토콜로 이루어져 있으며 인터넷으로 디바이스를 연결하는 네트워크 프로토콜의 집합이며 개별적인 네트워크 프로토콜로 사용될 수도 있습니다. TCP / IP는 인터넷의 기본 통신 언어입니다. 기본적으로 TCP / IP를 사용하면 한 컴퓨터가 데이터 패킷을 컴파일하고 올바른 위치로 전송하여 인터넷을 통해 다른 컴퓨터와 통신 할 수 있습니다. 프로토콜이란? 컴퓨터와 네트워크 기기가 상호간에 통신하기 위해서는 서로 같은 방법으로 통신하지 않으면 안됩니다. 어떻..
-
ETC./Algorithm
2020.10.09
2
[Algorithm] BFS 알고리즘 (Breadth-First Search)
너비 우선탐색 (BFS)란? BFS는 그래프 전체를 탐색하는 방법 중 하나로써 루트 노드(혹은 다른 임의의 노드)에서 시작해서 인접한 노드를 먼저 탐색하는 방법입니다. 시작 정점으로부터 가까운 정점을 먼저 방문하고 멀리 떨어져 있는 정점을 나중에 방문하는 순회함으로써 노드를 넓게(wide) 탐색합니다. 주로 두 노드 사이의 최단 경로 혹은 임의의 경로를 찾고 싶을 때 이 방법을 사용합니다. 주로 구현은 큐라는 자료에 이웃하는 정점을 다 담아놓고 차례대로 POP을 하는 방식으로 구현합니다. [Algorithm] 자료구조 그래프(Graph)란 무엇인가? BFS의 장점 1. 노드의 수가 적고 깊이가 얕은 경우 빠르게 동작할 수 있다. 2. 단순 검색 속도가 깊이 우선 탐색(DFS)보다 빠름 3.너비를 우선 탐..
-
ETC./Algorithm
2020.10.08
3
[Algorithm] DFS 알고리즘 (Depth First Search)
깊이 우선탐색 (DFS)란? DFS는 그래프 전체를 탐색하는 방법중 하나로써 시작점 부터 다음 분기로 넘어가기 전에 해당 분기를 완벽하게 탐색하고 넘어가는 방법입니다. 스택이나 재귀함수를 통해서 구현할 수 있는데 재귀함수가 구현이 간편하기에 대부분 재귀함수로 구현하는것 같습니다. 구현시 주의할점은 노드를 방문시 방문 여부를 반드시 검사해야합니다. 그렇지 않다면 무한루프에 빠질 수 있습니다. [Algorithm] 자료구조 그래프(Graph)란 무엇인가? DFS의 장점 1. 현재 경로상의 노드들만 기억하면 되므로, 저장 공간의 수요가 비교적 적음 2. 목표 노드가 깊은 단계에 있는 경우 해를 빨리 구할 수 있음 3. 구현이 너비 우선 탐색(BFS) 보다 간단함 DFS의 단점 1. 단순 검색 속도는 너비 우선..
-
ETC./Git 2020.12.26 12[Git] Git 레파지토리 생성 & 소스 올리기 (Git Bash활용) GitHub에서 원격저장소를 만든 뒤 Git Bash를 활용하여 Push하는 방법입니다. GitHub Repository 생성 1. 아래 URL을 클릭하여 GitHub로 들어간 뒤 로그인 하고 좌측 상단에서 저장소 NEW 버튼을 클릭합니다. https://github.com/ 2. 생성 할 Repository의 주소와 설명등 상세 설정을 한 뒤 저장소 생성을 클릭하여 Repository를 생성합니다. git bash에서 소스 push 1. 원하는 소스폴더에서 git bash를 실행시킵니다. 2. $ git init/p> 깃을 init 시켜줍니다. (로컬저장소 만들기) 3. $ git status 올라가 파일이 있는지 현재 폴더에 있는 파일들을 확인합니다. 지금은 파일들이 빨간색으로 되어있지만 add작업을..
-
ETC./Git 2020.12.25 11[Git] 윈도우 Git 설치하기 (Git for Windows) GIt을 사용하려면 먼저 Git이 PC에 설치되어 있어야합니다. Git설치방법에 대해 알아봅니다. 윈도우버전 Git설치하기 1. Git 설치파일을 다운로드 받습니다. 아래에 링크되어 있는 페이지에 들어가서 자신의 OS에 맞는 Git 설치버전을 받아주세요. Git다운로드 링크 바로가기 2. 약관을 읽어주고 Next를 눌러줍니다. 3. 설치경로를 선택하고 Next를 눌러줍니다. 4. 설치할 Component들을 선택합니다. 저는 기본으로 선택되어 있는것 이외에는 추가로 설치하지않고 Next를 눌러 진행하겠습니다. 5. 시작 메뉴에 폴더를 만듭니다. 시작메뉴에 폴더를 추가하고 싶지 않다면 Don't create a Start Menu folder 체크박스를 클릭하고 Next를 눌러주세요. 6. 깃의 기본에디터..
-
ETC./IDE 2020.12.17 3[IDE] Visual Stdio 콘솔창 사라지는 현상 해결하기 비쥬얼 스튜디오에서는 Ctrl + F5를 사용하여 디버깅 하지 않고 시작할 수 있습니다. 이렇게 하면 바로 명령 프롬프트(cmd)창이 실행되면서 결과값을 확인할 수 있죠. 하지만 어떠한 이유인지는 모르겠으나 비쥬얼 스튜디오를 켜고 빈프로젝트를 하고 실행을 시켰는데 콘솔창이 시작과 동시에 계속 꺼졌습니다. 본래는 프로그램이 시작되고 프로그램이 종료되면 cmd창은 꺼지는것이 맞습니다. 하지만 이렇게 콘솔창이 사라지게 되면 짜놓은 소스코드의 결과물을 확인할 수 없기때문에 Visual Studio는 자동으로 프로그램이 종료되기 직전에 프로그램을 멈추어주는것으로 알고 있었는데 어떠한 이유인지는 모르겠으나 이 부분이 제대로 작동이 되지 않고 있었던 것 같습니다. system("pause"); 코드를 마지막에 삽입하..
-
DB 2020.11.23[DB] MySQL 다운로드 / 설치 방법 (for Windows) MySQL이란? MySQL은 전세계에서 많이 사용하는 빠른 작동과 경쾌함이 장점인 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다. MySQL은 오픈소스로 이루어져있고 여러 운영체제에서 동작이 가능하며 많은 프로그램 언어를 지원한다는 장점이 있습니다. 유료버전도 따로 있으나 대부분은 무료버전을 사용하셔도 큰 무리가 없습니다. MySQL 설치 / 다운로드 방법 1. 오늘은 윈도우 10에서 MySql을 한번 설치해보려고 합니다. 아래에 링크된 사이트로 접속하여 최신버전의 MySql Install 파일을 다운 받습니다. 최소용량으로 설치하려면 2.5M의 installer를 설치해주세요. dev.mysql.com/downloads/installer/ 2. 오라클 계정에 로그인 하라고 하는데 로그인 ..
-
ETC./Spring 2020.11.22 2[Spring] Spring Tools 4 (Spring Boot) 설치 및 환경설정 방법 스프링 부트(Spring Boot)란? 스프링 부트는 스프링 설정에서 반복되는 코드를 싹 빼고 간편하게 이용할 수 있도록 확장된 버전입니다 스프링은 스프링부트와 비교하여 여러가지 장점이 있습니다. 개발을 하며 가장 와닿는 장점은 설정이 매우 간편해졌다는 점입니다. 스프링의 경우 많은 XML설정 파일등을 작성하는 등 설정하기도 힘들고 웹을 구축하기 위해 많은 Dependency 설정을 추가해주는 등 설정을 위한 코드의 양도 굉장히 많았지만 스프링부트에서는 starter 라이브러리 사용으로 많이 간소화 되었습니다. 이렇게 스프링 부트는 반복되는 개발환경 구축을 위한 코드작성등의 노력을 줄여주고 쉽고 빠르게 프로젝트를 설정할 수 있도록 도와줍니다. 또한 Maven보다 강력한 Gradle이라는 빌드배포 툴을 제..
-
ETC./Algorithm 2020.11.21 7[Algorithm] 각 정렬의 특징 및 장단점 & 시간복잡도 정렬 별 특징 선택정렬 (Selection Sort) 선택정렬은 앞에서부터 차례대로 정렬하는 방법입니다. 먼저 주어진 리스트 중에 최소값을 찾고 그 값을 맨 앞에 위치한 값과 교체하는 방식으로 진행하는 정렬방법입니다. 코드가 직관적이기에 구현도 비교적 간단합니다. n개 원소에 대해 n개의 메모리를 사용하기에 데이터를 하나씩 정밀 비교가 가능하며 정렬을 위한 비교 횟수는 많으나 교환 횟수는 상당히 적다는 것이 장점인 정렬 방식입니다. 따라서 교환이 많이 이루어져야하는 자료 상태에서 가장 효율적으로 적용될 수 있는 정렬 방식입니다. 선택 정렬이 가장 적합한 자료 상태는 역순 정렬입니다. 즉, 내림차순으로 정렬되어 있는 자료를 오름차순으로 재정렬할 때 최적의 효율을 보여줍니다. 반대로 이미 정렬된 상태에서 소..
-
Web/Web Programming 2020.11.14 8[Network] TCP / UDP의 개념과 특징, 차이점 전송 계층에서 사용되는 프로토콜 (TCP / UDP) TCP와 UDP는 OSI 표준모델과 TCP/IP 모델의 전송계층에서 사용되는 프로토콜입니다. 전송계층은 송신자와 수신자를 연결하는 통신 서비스를 제공하고 IP에 의해 전달되는 패킷의 오류를 검사하며 재전송 요구 제어등을 담당하는 계층입니다. 쉽게 말해 데이터의 전달을 담당한다고 생각하시면 됩니다. TCP와 UDP는 포트 번호를 이용하여 주소를 지정하는것과 데이터 오류검사를 위한 체크섬 존재하는 두가지 공통점을 가지고 있지만 정확성(TCP)을 추구할지 신속성(UDP)을 추구할지를 구분하여 나뉩니다. 데이터를 중요하게 생각하여 확실히 주고받고 싶을 때는 ‘TCP(Transmission Control Protocol)’를 사용합니다. TCP는 통신할 컴퓨터..
-
Web/Web Programming 2020.11.13 5[Network] TCP / IP란 무엇인가? TCP / IP란? TCP/IP(Transmission Control Protocol/Internet Protocol)는 데이터가 의도된 목적지에 닿을 수 있도록 보장해주는 통신 규약입니다. TCP / IP는 이름에서 알 수 있듯 TCP / IP에는 두가지 프로토콜로 이루어져 있으며 인터넷으로 디바이스를 연결하는 네트워크 프로토콜의 집합이며 개별적인 네트워크 프로토콜로 사용될 수도 있습니다. TCP / IP는 인터넷의 기본 통신 언어입니다. 기본적으로 TCP / IP를 사용하면 한 컴퓨터가 데이터 패킷을 컴파일하고 올바른 위치로 전송하여 인터넷을 통해 다른 컴퓨터와 통신 할 수 있습니다. 프로토콜이란? 컴퓨터와 네트워크 기기가 상호간에 통신하기 위해서는 서로 같은 방법으로 통신하지 않으면 안됩니다. 어떻..
-
ETC./Algorithm 2020.10.09 2[Algorithm] BFS 알고리즘 (Breadth-First Search) 너비 우선탐색 (BFS)란? BFS는 그래프 전체를 탐색하는 방법 중 하나로써 루트 노드(혹은 다른 임의의 노드)에서 시작해서 인접한 노드를 먼저 탐색하는 방법입니다. 시작 정점으로부터 가까운 정점을 먼저 방문하고 멀리 떨어져 있는 정점을 나중에 방문하는 순회함으로써 노드를 넓게(wide) 탐색합니다. 주로 두 노드 사이의 최단 경로 혹은 임의의 경로를 찾고 싶을 때 이 방법을 사용합니다. 주로 구현은 큐라는 자료에 이웃하는 정점을 다 담아놓고 차례대로 POP을 하는 방식으로 구현합니다. [Algorithm] 자료구조 그래프(Graph)란 무엇인가? BFS의 장점 1. 노드의 수가 적고 깊이가 얕은 경우 빠르게 동작할 수 있다. 2. 단순 검색 속도가 깊이 우선 탐색(DFS)보다 빠름 3.너비를 우선 탐..
-
ETC./Algorithm 2020.10.08 3[Algorithm] DFS 알고리즘 (Depth First Search) 깊이 우선탐색 (DFS)란? DFS는 그래프 전체를 탐색하는 방법중 하나로써 시작점 부터 다음 분기로 넘어가기 전에 해당 분기를 완벽하게 탐색하고 넘어가는 방법입니다. 스택이나 재귀함수를 통해서 구현할 수 있는데 재귀함수가 구현이 간편하기에 대부분 재귀함수로 구현하는것 같습니다. 구현시 주의할점은 노드를 방문시 방문 여부를 반드시 검사해야합니다. 그렇지 않다면 무한루프에 빠질 수 있습니다. [Algorithm] 자료구조 그래프(Graph)란 무엇인가? DFS의 장점 1. 현재 경로상의 노드들만 기억하면 되므로, 저장 공간의 수요가 비교적 적음 2. 목표 노드가 깊은 단계에 있는 경우 해를 빨리 구할 수 있음 3. 구현이 너비 우선 탐색(BFS) 보다 간단함 DFS의 단점 1. 단순 검색 속도는 너비 우선..