전체 글

개발이 즐거운 개발자 석이입니다~
카테고리 없음

구글 캘린더 API 뽀개기

시작하기 앞서 프로젝트에 구글 캘린더 API를 적용해야 하는데, 스스로의 검색 능력 한계로 적합한 가이드 자료를 찾을 수 없어 google developers에 있는 공식 문서를 읽으며 해당 기능을 사용하는 방법을 정리하기로 마음 먹었다. 영어로 된 문서라 빠르게 정보를 습득하는데 한계가 있어, 필요한 부분을 번역해서 나중에 필요할 때 참고하면 좋을거 같아 블로그에 공식 문서를 번역하는 글을 쓴다! * 전문적으로 교육받은 번역가가 작성한 글이 아니기 때문에 문서에 작성자가 인지하지 못한 오역과 의역이 다수 존재할 수 있습니다. 2022. 1. 8 (글을 쓴 다음 날) 첨언 아래의 글을 읽기 전, 만약 API, OAuth 2.0 혹은 인증/인가에 관한 지식이 없는 상태에서 구글 캘린더를 구동하려 하는 경우..

Spring Framework/스프링 시큐리티

[스프링 시큐리티 - 인증] 공식문서 번역하며 공부하기 - Authentication

일러두기 본 글은 스프링 공식 페이지의 Authentication 절을 한국어로 번역한 자료입니다. 전문적인 교육을 받은 번역가가 번역한 글이 아니기 때문에 다소의 번역 실수가 있을 수 있습니다. (아마 많을..) 해당 기능에 대해 전문적인 지식을 갖춘 엔지니어가 아니라, 스프링 시큐리티를 처음 공부하는 학생이 작성한 글이기 때문에 번역 간의 다수의 오역과 의역이 있을 가능성이 있습니다. 결론 : 이 문서는 신뢰할 수 없을 가능성이 높습니다. 번역이 매끄럽지 못하다고 판단되는 부분은 파란색으로 원본 문장을 첨부하여 원본을 확인할 수 있도록 하였습니다. 원본 출처 https://docs.spring.io/spring-security/reference/servlet/authentication/index.ht..

Spring Framework/스프링 시큐리티

[스프링 시큐리티] 공식문서 번역하며 공부하기 - 아키텍처

일러두기 본 글은 스프링 공식 페이지의 Architecture 절을 한국어로 번역한 자료입니다. 전문적인 교육을 받은 번역가가 번역한 글이 아니기 때문에 다소의 번역 실수가 있을 수 있습니다. (아마 많을..) 해당 기능에 대해 전문적인 지식을 갖춘 엔지니어가 아니라, 스프링 시큐리티를 처음 공부하는 학생이 작성한 글이기 때문에 번역 간의 다수의 오역과 의역이 있을 가능성이 있습니다. 결론 : 이 문서는 신뢰할 수 없을 가능성이 높습니다. 번역이 매끄럽지 못하다고 판단되는 부분은 파란색으로 원본 문장을 첨부하여 원본을 확인할 수 있도록 하였습니다. 원본 출처 https://docs.spring.io/spring-security/reference/servlet/architecture.html Archite..

Spring Framework/스프링 시큐리티

[스프링 시큐리티] 공식문서 번역하며 공부하기 - Hello Spring Security

일러두기 본 글은 스프링 공식 페이지의 Hello Spring Security 절을 한국어로 번역한 자료입니다. 전문적인 교육을 받은 번역가가 번역한 글이 아니기 때문에 다소의 번역 실수가 있을 수 있습니다. (아마 많을..) 해당 기능에 대해 전문적인 지식을 갖춘 엔지니어가 아니라, 스프링 시큐러티를 처음 공부하는 학생이 작성한 글이기 때문에 번역 간의 다수의 오역과 의역이 있을 가능성이 있습니다. 결론 : 이 문서는 신뢰할 수 없을 가능성이 높습니다. 번역이 매끄럽지 못하다고 판단되는 부분은 파란색으로 원본 문장을 첨부하여 원본을 확인할 수 있도록 하였습니다. 원본 출처 https://docs.spring.io/spring-security/reference/servlet/getting-started...

코딩 문제

[프로그래머스 level 2] 다리를 지나는 트럭 - Java

문제 트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 수 있으며, 다리는 weight 이하까지의 무게를 견딜 수 있습니다. 단, 다리에 완전히 오르지 않은 트럭의 무게는 무시합니다. 예를 들어, 트럭 2대가 올라갈 수 있고 무게를 10kg까지 견디는 다리가 있습니다. 무게가 [7, 4, 5, 6]kg인 트럭이 순서대로 최단 시간 안에 다리를 건너려면 다음과 같이 건너야 합니다. 경과 시간다리를 지난 트럭다리를 건너는 트럭대기 트럭 0 [] [] [7,4,5,6] 1~2 [] [7] [4,5,6] 3 [7] [4] [5,6] 4 [7] [4,5] [6] ..

메모 & 삽질기록보관소

[JPA] 연관관계 주인과 CASCADE 옵션

김영한님의 실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 수업을 듣고 혼자 수업 내용을 복습을 하는데 기존에 내가 이해했었던 부분과 충돌이 되는 듯한 부분을 발견했다. @OneToMany(mappedBy = "order", cascade = cascadeType.ALL) private List ... 뭐지 이거..? 하는 생각이 순간 들었다. 그 이유는 다음과 같다. 첫 번째, 연관관계를 매핑하는 애노테이션에 mappedBy 속성이 들어가게 되면 해당 필드는 데이터를 조회하는 기능만을 갖게 된다. 즉, 해당 필드는 반대편 연관관계 주인을 비추는 거울의 역할만을 담당하게 되는 것인데 이로서 이 필드는 데이터를 데이터베이스 내에 삽입하거나 수정하는 기능을 상실하게 된다. 두 번째, 반대로 ca..

코딩 문제

[프로그래머스 level 2] 문자열압축 - Java

문제 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 "aabbaccc"의 경우 "2a2ba3c"(문자가 반복되지 않아 한번만 나타난 경우 1은 생략함)와 같이 표현할 수 있는데, 이러한 방식은 반복되는 문자가 적은 경우 압축률이 낮다는 단점이 있습니다. 예를 들면, "abcabcdede"와 같은 문자열은 전혀 압축되지 않습니다. "어피치"는 이러한 단점을 해결하기 위해 문자열을 1개 이상의 단위로 잘라서 ..

국비학원

[중간점검] 자바 국비학원 50% 진행상황 후기

국비학원이 개강한지도 벌써 3개월이 지났다. 9월 초에 시작되었던 과정인데, 벌써 12월이라는게 새삼 시간이 참 빠른 것 같아 놀랍다. 국비학원 진행이 50% 이상 진행된 지금의 시점에서 나는 과연 어떤 생각을 하고 있을까. 또 앞으로 어떻게 해야 할까. 그러한 부분을 정리해보기 위해 이 글을 쓰게 되었다. 이 글은 내가 나 스스로에게 쓰는 글이기 때문에(나는 글을 쓰면서 생각을 정리하는 타입이다) 국비학원에 대한 정보를 전달하는 측면에서는 다소 부족한 부분이 있을 수 있다. 만약 국비학원을 알아보시는 분이나 국비학원 생각을 가지신 분이 이 글을 읽게 된다면, 그냥 가볍게 '이런 사람은 이렇게 느끼는구나' 하고 읽어주셨으면 좋겠다. 지금까지 학원에서는 어떤걸 했어? 초반 한달 가량은 자바를 배웠다. 그리..

코딩 문제

[프로그래머스 level 2] 오픈채팅방 - Java

문제 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오픈 채팅방을 개설한 사람을 위해, 다양한 사람들이 들어오고, 나가는 것을 지켜볼 수 있는 관리자창을 만들기로 했다. 채팅방에 누군가 들어오면 다음 메시지가 출력된다. "[닉네임]님이 들어왔습니다." 채팅방에서 누군가 나가면 다음 메시지가 출력된다. "[닉네임]님이 나갔습니다." 채팅방에서 닉네임을 변경하는 방법은 다음과 같이 두 가지이다. 채팅방을 나간 후, 새로운 닉네임으로 다시 들어간다. 채팅방에서 닉네임을 변경한다. 닉네임을 변경할 때는 기존에 채팅방에 출력되어 있던 메시지의 닉네임도 전부 변경된다. 예를 들어, 채팅방에 "..

Spring Framework

모델의 일생 | MVC 아키텍처 중 Model의 생명주기

일러두기 본 글은 자바 백앤드 국비과정 교육을 받고 있는 학생이 김영한님의 '스프링 MVC 1편'과 이일민님의 토비의 스프링을 읽고 공부한 내용을 정리하기 위해 쓴 글입니다. 학생이 쓴 글이기에 내용에 오류가 있을 수 있습니다! 본문 스프링 MVC를 구성하는 세 가지 컴포넌트(모델, 뷰, 컨트롤러) 중에서 컨트롤러와 뷰는 주로 DispatcherServlet의 기본 전략을 바꾸거나 재설정함으로써 결정할 수 있다. 반면에 모델은 컨트롤러와 뷰보다 훨씬 다이내믹한 생명주기를 갖고 있다. 따라서 모델이 준비되고 사용되는 흐름과 그 과정에 참여하는 여러 구성요소를 잘 파악하고 이를 관리할 수 있어야 한다. 모델과 관련된 이런 과정이 처음에는 복잡하게 보일지 모르겠지만 조금만 익숙해지면 이보다 편한 모델 관리는 ..

석이
기록으로 채워가는 개발자 이야기