분류 전체보기 70

2020년 회고록

《2020년 회고록》 2020년을 시작했을 때.. 나는 2019년 휴학하며 공부나 나의 삶의 여러가지 면에서 후회를 많이 했기 때문에, 2020년은 후회가 없는 한 해가 되었으면 좋겠다고 생각했다. 그래서 2020년도에는 내가 할 수 있는 것들을 최대한 해보려고 노력을 했다. 2020년도에 나는 이런 것을 했다. 1. 셜록홈즈 방탈출 알바 느낀 게 많은 알바였던 것 같다. 알바는 돈벌려고 하는거지! 이런 생각을 했던 나였는데 같이 알바했던 사람들을 보며 보고 배운 것이 많다. 본인의 책임에 최선을 다하는 사람, 밝고 명량하며 사람을 대하는 데 능숙한 사람, 일을 즐기는 사람 등 같이 일하고 대화를 나누며 '일'이란 무엇일까? 에 대해 많이 생각할 수 있는 기회였다. 또, 일을 하며 이렇게 정든 사람들이 ..

회고록 2020.12.28

[WebRTC] WebRTC란 무엇일까?

🎞 WebRTC란 무엇인가? Web Real-Time Communication의 약자로 웹/앱에서 별다른 소프트웨어 없이 카메라, 마이크 등을 사용하여 실시간 커뮤니케이션을 제공해주는 기술이다. 우리가 잘 알고있는 화상통화, 화상 공유등을 구현할 수 있는 오픈소스 비디오, 음성 및 일반 데이터가 P2P방식으로 피어간의 전송되도록 지원 JavaScript API로 제공 알아야할 용어 및 개념 data streams, STUN/TURN servers, signaling, JSEP, ICE, SIP, SDP, NAT, UDP/TCP, network socket 등 💁‍♀️ WebRTC의 장점과 단점 1. 장점 [1] Latency가 짧다. 우리가 흔히 알고있는 인스타라이브, 유튜브라이브, 트위치 등은 RTMP..

WebRTC 2020.12.22

[Git] GIT Repository 삭제하기

GIT Repository 삭제하기 - 깃을 사용하다보면 예전 코드를 보며.. 이건 절대 보여줘서는 안될 코드다..라는 생각이 들 때도 있고, 레파지토리를 여러개 판 경우도 있다. 이 때, git repository를 어떻게 삭제할지 알아보자! 1. 먼저 삭제할 Repository에 들어가서 Setting으로 들어갑니다. 2. Setting으로 들어가시고 스크롤을 맨 하단으로 내리면 Danger Zone이라는 것이 뜰 것입니다. 3. 빨간색으로 표시해둔 Delete this repository 버튼을 누릅니다. 4. 입력칸 바로 위에 보면 Please type '레파지토리 이름' 이라고 적혀있는데 강조표시 되어있는 것을 그대로 입력해주시면 됩니다. 5. 이렇게 입력을 하면 버튼이 활성화되고 그것을 누르면..

GIT 2020.12.20

[SpringBoot] Spring boot JPA 사용하여 회원가입 구현하기

🖐 Spring boot JPA 사용하여 회원가입 구현하기 - 데이터 저장하기 ▶ 들어가기 Server 개발하면서 빼놓을 수 없는 것이 데이터를 저장하고 관리하는 것이다. Spring Boot 에서 DB를 연결하는 여러 가지 방법이 있는데, 그 중 JPA를 사용하여 개발해보려고 한다. DB 연결 방법 1) JDBC Connection Pool 2) MyBatis 와 Mapper 3) JPA ▶ JPA란? JPA는 Java Persistence API의 약자로 관계형 데이터베이스의 관리를 표현하는 자바 API 이다. 이는 ORM(Object-Relational Mapping)기술을 사용하여 만들어진 것인데, 직접 쿼리를 작성하지 않고 메소드만 사용하여 DB를 조작할 수 있다. CASE1) ORM : fin..

SERVER/Spring Boot 2020.12.19

[Spring] Spring Boot 프로젝트 생성하는 방법

Spring Initializr Link를 통해 프로젝트를 생성해보자 링크 : https://start.spring.io 사이트를 들어가보시면 아래와 같은 창이 뜨신 것을 확인할 수 있습니다. 이제 우리는 필요한 것들을 추가해주면서 Generate를 해줄 건데요 Gradle Project 를 선택했습니다. ( Maven을 사용해도 무방합니다.) Language는 Java로 Spring boot version 2.4.1 사용할 Dependencies 를 넣어주고 Generate 하면 끝! 해당 프로젝트를 다운 받은 후, IDE를 사용하여 열면 끝입니다! successful하게 빌드가 완료된거 확인하시고 작업하시면 됩니다.

SERVER/Spring Boot 2020.12.14

[Vue.js] 웹페이지 만들기 - Vue.js 설치 및 프로젝트 생성 방법

웹페이지 만들기 - Vue.js를 설치하자! 1. Vue 설치 프로젝트 생성하고 싶은 곳에 들어가서 명령프롬프트(cmd)창을 킨다. npm install vue 입력 C:\Users\Desktop\Project>npm install vue npm WARN saveError ENOENT: no such file or directory, open 'C:\Users\Desktop\Project\package.json' npm notice created a lockfile as package-lock.json. You should commit this file. npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\Desktop\Project\pa..

Web-Front/Vue.js 2020.12.13

[ 백준 ] 1753번 최단경로 문제풀이 feat. 자바 JAVA

[ 백준 ] 1753번 최단경로 문제풀이 feat. 자바 JAVA 문제 문제풀이방법 이 문제의 특징을 알아보자. 1. 방향이 있는 그래프이다. 2. 시작점이 주어지고 그 점에서 다른 점으로 가는 최단 경로를 구하는 문제이다. 3. 가중치가 존재한다. ( w는 10 이하의 자연수 ) -> 가중치가 양수이고, 특정점이 주어지고 다른 점으로 가는 모든 최단 경로를 구하는 조건들을 봤을 때, 이 문제는 전형적인 다익스트라 문제이다. 생각해볼만한 것 1. Queue를 써서 풀어도 되는 것 아닌가? - Queue를 사용한다는 것은 결국 BFS 구현이 된다. - 값이 작을 때는 문제의 해는 올바른 값을 도출한다. - 하지만, 시간초과가 날 것이다. 2. visited를 꼭 써야하나? ( 방문한 노드를 체크하는 것 )..

알고리즘/백준 2020.12.05

[백준] 1655번 가운데를 말해요 문제풀이 feat.자바 JAVA

[백준] 1655번 가운데를 말해요 문제풀이 feat.자바 JAVA 문제 문제풀이방법 문제에서 요구하는 것은 수빈이가 어떤 수를 말할 때마다 그 수들의 가운데 있는 수를 찾아서 말하는 것이다. 그렇다면 어떻게 해야할까? 1. 단순히 생각했을 때, 입력값들을 저장해놓고 정렬을 한 후에, 가운데 있는 값을 찾아주면 된다. - 하지만, N의 범위가 100,000이고, 매번 정렬을 하는 것의 시간복잡도는 O(NlogN) -> 그러므로 총 시간복잡도는 N*N*logN이 될 것이고 시간초과 다. 2. 입력한 값 중에 중간 값들을 기억하고 있으면 어떨까? - 입력한 값의 작은값을 담는 공간 하나와, 큰 값들을 담는 공간 하나, 총 2개의 공간을 만들어 놓고, 두개의 공간에는 데이터의 수가 일정하게 유지시키면서 작은 ..

알고리즘/백준 2020.12.02

[백준] 1005번 ACM Craft 문제풀이 방법 feat. 자바

ACM Craft 문제풀이 방법 feat. 자바 문제 알아야 할 알고리즘 지식 위상정렬(Topological_Sort) 간단하게 말하자면, 방향이 있는 그래프를 정렬하는 것이다. 전후관계가 분명한 문제에서 방향이 있을 경우, 어떤 것이 먼저 사용될 수 있는지를 파악하여 문제를 풀어나가는 알고리즘이다. 추후, 위상정렬에 관한 알고리즘 포스팅 예정 문제풀이방법 글을 읽어보면, 건물을 건설하는데 순서가 있다고 한다. ex) 1번의 건물의 걸설이 완료되면, 2번과 3번의 건물을 건설할 수 있다. 이와 같은 경우, 방향이 존재한다. ( 1번다음엔 2번, 3번으로 가는 경우만 있다. 즉, 2번에서 1번으로 갈수 있는 경우는 없다. ) 전후관계가 분명하다. 전후관계가 없을 수도 있다. 이 경우에는, 언제 건설이 되어..

알고리즘/백준 2020.11.24

[백준] 19640번 화장실의 규칙 자바 코드 및 문제풀이 방법

[백준] 19640번 화장실의 규칙 자바 코드 및 문제풀이 방법 문제설명 * 더 구체적인 예시는 아래 힌트를 확인하면 된다. 생각해야 할 요소 1. 사람들을 차례대로 M개의 라인으로 집어넣어야 한다. 2. 비교를 할 대상은, M개의 라인 중 첫번째에 위치한 사람들이다. 2-1. 비교 기준은, 고용기간이 오래된 사람 2-2. 고용기간이 같다면, 화장실이 급한사람 2-3. 같다면, line의 숫자가 앞에 있는 것 순서이다. 문제풀이 방법 1. 사람들을 차례대로 M개의 라인으로 집어 넣기 위해서 LinkedList[] 배열을 만들어서, 차례대로 넣어주었다. 2. pq에 조건에 해당하는 것을 Comparator 을 사용하여 정렬해주었다. 문제에서 요구하는 것은 PQ를 적절히 사용할 수 있는지, PQ를 본인의 입..

알고리즘/백준 2020.11.11