MapleStory Finger Point
[Spring] AOP 맛보기
·
SPRING
오늘은 AOP와 관련한 내용을 다루고자 한다. 순서는 AOP를 도입해야겠다고 생각한 계기, AOP란 무엇인지 그리고 간단한 실습을 통해 AOP의 2%를 맛볼 예정이다. 왜 AOP를 도입!? 작년 대외활동에서 진행한 프로젝트에 대해 자체적으로 코드리뷰를 수행하고 있다. 그런데, 각 기능을 수행하기 전 JWT 보안 인증을 거치는 중복 코드가 존재했다. 좀 더 자세하게 그림으로 설명하겠다. 위 그림을 참고해보면 게시글 작성, 조회, 삭제할 때 사용자 검증을 위한 사전 작업이 필요하다는 것을 확인할 수 있다. 물론, 이렇게 개발을 진행해도 크게 문제될 것은 없다. 그러나 요즘 clean code가 트랜드 아니겠는가!? 그래서 현재 프로젝트 구조에서 어떻게 하면 가독성 좋은 깔끔한 구조가 될지 고민하게 되었다. ..
[Spring] @Setter vs @Builder
·
SPRING
Entity, Dto를 개발하다보면 @Setter를 써야할지 @Builder를 써야할지 고민된적이 있을 것이다. 그리고 강의나 블로그에 보면 Setter 사용을 지양하라고 되어있다. "그래 Setter 사용 안할게,, 근데 왜 사용하면 안돼?" "..." 이처럼 이유에 대해 명확하게 정리한 곳이 없었다. 그래서 내가 개발을 진행하면서 개인적으로 느꼈던 이유에 대해 소개하고자 한다. 이게 수정이야? 생성이야? 우선 코드로 설명을 하겠다. @Entity @Setter @Getter public class Temp { @Id @GeneratedValue private Long id; private String name; } 해당 코드는 entity로 database의 table이다. 즉, 해당 테이블은 id와..
[Spring] Exception Custom
·
SPRING
최근에 개발을 많이 놓아서 블로그에 Spring 관련 지식을 정리하지 못했다. 이제부터 다시 개발을 진행해보고자 한다. 이번에는 개발을 진행하면서 가장 중요한 부분인 Spring Exception 처리에 대해 소개하고자 한다. Exception 소개 뿐만 아니라 RuntimeException을 상속받아 customizing 하는 과정을 상세하게 소개하겠다. Exception 왜 필요한가? API를 개발하면서 Exception 처리가 왜 필요할까? 정답은 없지만 필자가 생각하는 것은 크게 두 가지이다. 1. 클라이언트와 서버에서 어떤 오류인지 파악하여 바로 트러블 슈팅이 가능하다. 2. 잠재적 위험을 Exception 처리를 통해 방지한다. (ex. return null, parameter issue ....
소프트웨어 마에스트로 13기 회고
·
ETC
https://swmaestro.org/sw/main/contents.do?menuNo=200033 SW마에스트로 교육 프로그램 SWM 과정소개 창의력과 재능을 겸비한 연수생을 선발, SW전문가 멘토링, 기본소양 교육, 자기주도형 학습 등을 통해 교육성과 극대화 선발(2개월) 235명 예비 과정 (2개월) 예비교육, swmaestro.org 소프트웨어 마에스트로 13기를 수료한지 벌써 2개월이 지나가고 있는데.. 우연히 14기 모집 공고를 보았다! 작년에 엄청 열심히 준비했던 기억이 나면서 6개월의 활동이 주마등처럼 지나갔다. 그래서 이를 정리해보고자 한다. [STEP 1] 소프트웨어 마에스트로 합격 22년도에 진로에 대한 고민을 굉장히 많이 했다. 그러던 중 소프트웨어 마에스트로 모집공고를 보았고 마지..
[PROGRAMMERS] Level 3 야근 지수(Heap, C++)
·
코테준비
https://school.programmers.co.kr/learn/courses/30/lessons/12927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🎁 문제 문제 설명 회사원 Demi는 가끔은 야근을 하는데요, 야근을 하면 야근 피로도가 쌓입니다. 야근 피로도는 야근을 시작한 시점에서 남은 일의 작업량을 제곱하여 더한 값입니다. Demi는 N시간 동안 야근 피로도를 최소화하도록 일할 겁니다.Demi가 1시간 동안 작업량 1만큼을 처리할 수 있다고 할 때, 퇴근까지 남은 N 시간과 각 일에 대한 작업량 works에 대해 야근 피로도를 최소화한 ..
[PROGRAMMERS] Level 3 불량 사용자(카카오 기출, C++)
·
코테준비
https://school.programmers.co.kr/learn/courses/30/lessons/64064 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🎁 문제 문제 설명 개발팀 내에서 이벤트 개발을 담당하고 있는 "무지"는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 사용자라는 이름으로 목록을 만들어서 당첨 처리 시 제외하도록 이벤트 당첨자 담당자인 "프로도" 에게 전달하려고 합니다. 이 때 개인정보 보호을 위해 사용자 아이디 중 일부 문자를 '*' 문자로 가려..
킹명주의 일기장을 개발했다리..
·
ETC
내년부터 본격적으로 취업을 준비할 것 같다. 그래서 취업 준비를 하면서 느끼는 감정이나 사소한 일을 정리하면서 진행을 할 예정이다. 해당 블로그에는 주로 기술에 관련한 내용이나 지식, 코딩 준비 등의 내용만 담을 것이기 때문에 새롭게 취준일기장을 개발해야겠다고 결심했고 현재 개발 중이다. https://kingmj.tk/home.html 킹명주일기장 kingmj.tk 프론트 경험이 없기 때문에 react나 vue를 사용할줄모른다 ㅎㅎ.. 그래서 예전 기억을 떠올려 html로 웹을 개발했다. 구조는 다음과 같다. 서버는 AWS의 EC2를 활용해서 배포한 것을 확인할 수 있는데 웹은 ...???🙄 웹은 바로 github에서 배포했다 ㅎㅎ... github-page라는 것을 활용했는데 간단하게 소개하고 넘어가..
[PROGRAMMERS] Level 3 단속카메라(구현, C++)
·
코테준비
https://school.programmers.co.kr/learn/courses/30/lessons/42884 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🎁 문제 문제 설명 고속도로를 이동하는 모든 차량이 고속도로를 이용하면서 단속용 카메라를 한 번은 만나도록 카메라를 설치하려고 합니다. 고속도로를 이동하는 차량의 경로 routes가 매개변수로 주어질 때, 모든 차량이 한 번은 단속용 카메라를 만나도록 하려면 최소 몇 대의 카메라를 설치해야 하는지를 return 하도록 solution 함수를 완성하세요. 제한사항 차량의 대수는 1대 이상 10,00..
📌 공지사항

1. 광고 댓글 자제 부탁드립니다😭😭

2. 업무 중에는 질문 답변이 늦을 수 있습니다!

3. 초보자라 잘못된 부분이 많습니다
     많이 알려주세요😊

4. 이 블로그가 성공하더라도 광고로 수익 창출
     하지 않겠습니다🫡


📧 mjoo1106@naver.com