분류 전체보기 153

깃 커밋 메시지 컨벤션 (Git Commit Message Convention)

깃 커밋 메시지 컨벤션 (Git Commit Message Convention) 이란? 버전 관리 시스템에서 여러명의 개발자와 함께 코드를 구현하고 여러 작업물들을 관리 할 떄 각 팀원들 끼리 커밋 내역을 명시적으로 확인할 수 있고 쉽게 관리 될 수 있도록 지켜지는 메세지 규약이다. 커밋 메시지 컨벤션 규약은 여러 가지로 나뉘어져 있지만 필자는 AngularJS Git Commit Message Conventions을 토대로 메시지 컨벤션에 대한 글을 작성하려 합니다. AngularJS Git Commit Message Conventions 커밋 메세지는 header, body, footer로 이루어져 있으며, 공백줄을 기준으로 구분 됩니다. Commit Message 규약 (): | header | b..

카테고리 없음 2022.04.13

Markdown 작성법

블로그를 자주 쓰기 위해 다시 한 번 마음을 잡은 이때 이왕이면 정리정돈 되게 보여지는 글을 쓰기 위해 Markdown 작성법을 파악하여 작성하기 위해 작성법을 정리 해보기로 하였다. 큰 제목 큰 제목 =========작은 제목 작은 제목 ---------글자 크기 #(1~6) # H1 글자 크기 ## H2 글자 크기 ### H3 글자 크기 ### H4 글자 크기 #### H5 글자 크기 ##### H6 글자 크기 ---------H1 글자 크기 H2 글자 크기 H3 글자 크기 H4 글자 크기 H5 글자 크기 H6 글자 크기 블럭 인용 문자 > 블럭 인용 문자, 문자 앞에 | 블럭이 들어간다. > > 블럭을 두개 사용하면 안쪽으로 블럭이 더 들어가지요 > > > 하나 더하면 안쪽으로 계속 들어간다 > >..

카테고리 없음 2022.04.11

이메일 보내기 (SMTP 방식)

SMTP (Simple Mail Transfer Protocol) 프로토콜 이란? - 인터넷에서 이메일을 보내기 위해 이용되는 프로토콜 - 송신자와 수신자 간의 연결이 성립되면 이메일을 보낼 수 있다. 사용중인 이메일 (필자는 naver 사용) 에서 SMTP 설정 사용으로 변경 javax.mail pom.xml javax.mail mail 1.4.7 Email Properties 설정 Properties props = new Properties(); props.put("mail.smtp.starttls.enable", "true"); props.put("mail.smtp.host", "호스트 정보"); props.put("mail.smtp.ssl.enable", "true"); props.put("mai..

JAVA 2022.04.03

Retrofit2 (Java)

Retrofit 이란 - 네트워크 통신 라이브러리 OKhttp 기반으로 만들어진 서버와 클라이언트 간 http 통신을 위한 라이브러리 - 다른 서버에서 http통신을 통하여 데이터를 가져오기 위하여 필자는 사용 사용방법 maven pom.xml 설정 com.squareup.retrofit2 retrofit 2.6.1 com.squareup.retrofit2 converter-gson 2.4.0 - retrofit : Retrofit 라이브러리 - converter-gson : Json데이터를 Java객체로 자동 변환하여 데이터를 넣어주는 라이브러리 import retrofit2.Call; import retrofit2.http.Body; import retrofit2.http.GET; import ret..

JAVA 2022.04.02

패스트캠퍼스 챌린지 최종 후기

패스트 캠퍼스 한번에 끝내는 코딩 테스트 369 Java 편 초격차 패키지 최종 후기 드디어 패스트캠퍼스와의 50일간의 대장정? 의 일주를 마치고 최종 후기를 쓰게 되었다. 이 챌린지를 시작하기 전에 마침 코딩테스트를 대비해서 공부 및 강의를 알아보던 도중에 해당 챌린지가 진행되어 뒤도 보지않고 바로 신청서를 작성하여 챌린지를 진행한거 같다 ㅋㅋㅋㅋ 해당 강의를 통해서 완전한 알고리즘 마스터라는 거대한 목표를 가지고 시작하지 않았기 때문에서 그런지 큰 부담없이 강의를 들으면서 자료구조와 알고리즘이라는 개념에 대해서 알아보고 이해할 수 있는 계기가 되었던거 같다 또한 하루하루 공부를해가며 꾸준함을 얻게된 좋은 계기라고 생각한다 물론 돈이 걸렸기에 더 열정적이였을지도 모르겠다 ㅎㅎ 해당 강의를 통해 얻은 지..

JSON 변환 라이브러리 (Gson,Jackson)

Gson과 Jasckson 는 둘 다 Java 객체를 JSON을 표현으로 변환할 수 있도록 사용하는 라이브러리이다 Java 객체 -> JSON : 직렬화 (Serialize) JSON -> Java객체 : 역직렬화 (Desrialize) 간단히 정의하자면 이렇지만 상세한 내용은 따로 정리 해보도록 하자 (중요한 개념이므로) 여기서 JSON이란?! - JavaScript Object Notation의 약자로 key : value 값으로 데이터를 통신하는 표현 방법이다 - 데이터를 표현 하는 방식은 XML과 JSON 유형 주로 두가지가 있지만 특정 언어에 구애받지 않으며 간단한 데이터 표현 방식을 사용하는 JSON 형태의 표현방식을 많이 쓴다. • Gson 이란? - Google에서 만든 Java 객체와 J..

JAVA 2022.03.17

패스트캠퍼스 챌린지 50일차

끝나지 않을것 같던 패스트 캠퍼스 챌린지가 이제 끝이 났다.. 시작했을떄 완주 할 수 있을까라는 생각을 했지만 50일은 생각보다 짧았으며 습관을 기르기에 적합한 기간이라고 생각한다 집에 늦게들어갔을때 챌린지를 하지 못하는 그 불안감... ㅋㅋㅋ 그래도 어떻게 잘 해왔다 강의를 다 완주하여서 마지막으로 자료구조와 알고리즘 정리를 통해 기본 개념들을 한번 더 복습하는 시간을 가진다 자료구조 1. 배열 (Array) : 같은 유형의 데이터를 여러개 넣어 관리하는 데이터구조 2. 큐 (Queue) : 가장 먼저 넣은 데이터를 가장 먼저 꺼내는 구조 (FIFO) 3. 스택 (Stack) : 가장 나중에 쌓은 데이터를 가장 먼저 빼낼 수 있는 데이터구조 (LIFO) 4. 링크드 리스트 (Linked List) - ..

패스트캠퍼스 챌린지 49일차

류호석배 코딩테스트 3회 문제 1 : 빌런 호석 • 출제 의도 - 올바른 접근 방법을 떠올리는가? - 시간 & 공간 복잡도는 제대로 계산 하였는가 - 문제를 편하게 구현하였는가 • 총 정리 - diff_one 함수 구현 - 이를 이용한 diff 함수 구현 - Y를 1부터 N까지 바꿔보면서 변환 횟수가 P이하인지 확인 - 총 시간 복잡도는 O(N * K) 이다 문제 2 : 정보 상인 호석 • 출제 의도 - 문제가 요구하는 상황을 이해 했는가? - 문자열을 잘 다루는가? - 필요한 연산을 정의할 줄 아는가? - 자료구조를 나열하고 시간 복잡도를 따져서 최선의 자료구조를 선택할 수 있는가? • 접근 방법 - 먼저 고릴라의 이름을 어떻게 다룰 것인가? 1. 문자열 그 자체를 이용하는 경우 2. 숫자로 변경해서 ..

패스트캠퍼스 챌린지 48일차

류호석배 코딩테스트 2회 문제 1 : 폰 호석만 ( BOJ 21275 ) • 출제 의도 - 완전 탐색 접근을 통해서 모든 경우를 직접 하나하나 찾아내 보자 - 본 문제에서 경우란, 조건을 만족하게 A,B를 모두 결정해보는것 - 진법 변환을 구현 할 수 있는가?! 완전 탐색 접근 - 가능한 A,B의 조합 : (2,2) (2,3) ... (36,36) 매 조합 마다 진법 변환을 수행 주의할 점 1. 변환시에 2^63을 넘어가지 않는가 2. 등장하는 문자가 진법으로 올바른가 문제 2 : 계보 복원가 호석 ( BOJ 21276 ) • 출제 의도 - 관련 강의 : 그래프, 트리 - 그래프의 정점이 문자열인 경우는 어떻게 하는가 - 그래프, 그 중에서도 Rooted Tree에 대한 올바른 이해를 했는가 • 생각의 ..

패스트캠퍼스 챌린지 47일차

패켐 제작문제 해설 8,9 문제 내용 링크 참조 문제 1 : 가희의 고구마 먹방 (https://www.acmicpc.net/problem/21772) - 난이도 중, 완전탐색, 백트래킹, DFS • 핵심 아이디어 - 전형적인 완전 탐색 문제 - 깊이 우선 탐색(DFS)을 이용하여 모든 경우의 수 계산 - 각 위치에서 상,하,좌,우 이동 가능 - 입력 조건 상 10칸 까지도 이동할 수 있으므로, 최대 약 4^10개의 경우의수 존재 문제 2 : 가희와 프로세스 1 (https://www.acmicpc.net/problem/21773) - 난이도 중, 우선순위 큐, 자료구조 • 핵심 아이디어 - 우선순위 큐를 활용한 스케줄러 구현 문제 - 우선순위는 다음과 같이 정의되며, 이를 위해 별도 클래스 구현 필요 ..