분류 전체보기(313)
-
[백준] 1436 - 영화감독 숌
백준 사이트 바로가기 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net #Java API 메서드를 사용해도 되지만, 저도 그렇게 풀었습니다. 시간과 메모리 부하를 줄 수 있기 때문에 다른 분들의 코드를 참고했습니다. 그 중에 제 눈높이에 맞고 시간도 오래 걸리지 않는 코드를 가져와 보았습니다. 우선 제가 푼 방식입니다. String.valueOf(int)를 활용해도 됩니다. 1) String.valueOf 사용한 풀이 - 간단하지만 (시간 복잡도가)복잡하다. 1 2 3 4 5 6 7 8 9 10 11 12 1..
2020.10.06 -
[Spring] AOP ④ - (예제) HashMap으로 Cache 기능구현
AOP 시간 마무리로 HashMap을 이용한 Cache 기능 구현을 해보려 합니다. Factorial(팩토리얼) 메서드를 인터페이스에서 implements하여 클래스 두 가지로 나눠 담았습니다. ProceedingJoinPoint는 Java API JoinPoint Class인데 getArgs() 메서드는 execution 메서드. 즉 공통(횡단) 메서드의 매개변수를 배열로 반환해 줍니다. 메서드 return 값을 반환해주는 proceed() 메서드의 데이터 타입은 Object 이기 때문에 주의해야 합니다. 핵심은 cache 기능을 Map 인터페이스의 HashMap 클래스로 구현하는 부분입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2..
2020.09.30 -
[슬럼프] 꾸준함이 답이다.
잘 되는 것 같다가 또다시 잘 되지 않는다. 모르는 문제를 만났을 때 단기간에 해결책이 나오지 않으면 회피하는 습관이 배여있다. 그럴 때 대안 1,2,3을 정해서 하나를 택하고 최선을 다하기로 했다. 습관을 들이는 데에 시간이 들겠지. 포기해 편한 것보다 스트레스 받지만 넘어서는 경우가 아무래도 나을거다. 연습 과정이다. 평생 이어가는 연습일 뿐이다. 헬스장에서 운동이 안되는 날 자책하거나 실망을 크게 한 적 없다. 그저 헬스장에서 끝마치고 샤워하면 기분 좋게 넘어가졌다. 지금 하는 일도 똑같다. 안되는 날은 있기 마련이고 책상에 두고 나와야한다. 그리고 헬스장으로 가서 땀흘리고 씻고 읽고 싶은 책 읽다가 자면 꽉 찬 하루를 보낸거다. 내일 다시 책상에 앉아 다른 일을 하거나 어제 잘 안됐던 부분을 다시..
2020.09.29 -
[자전거 국토종주] 난항(이화령 고개) (2)
이튿 날이 밝았다. 코로나 때문에 리조트 조식은 뷔페가 아닌 미역국 정식으로 진행된다고 했다. 8천원에. 짐싸서 내려오는 길에 사진을 한 장 찍고 근처 백반집에 들렸다. 순두부찌개를 먹었던 것 같은데 나쁘지 않았다. 어제 새벽 1시가 넘어 숙소에 도착했던터라 아침까지 잘 수 밖에 없었다. 출발할 때 이미 햇볕이 따갑게 느껴졌다. 2일차 코스는 충주 - 수안보 - 이화령 고개 - 문경 - 상주 였는데 숙소는 상주 자전거 민박이라고 아마 국토종주 하신 분들은 한 번쯤은 들어보는 상당한 명소다. 개인적으로 기대와 달랐던 점도 있었지만... 확실히 하루가 지나고 나니 피로가 쌓였다. 아무렇지 않던 무릎이 출발한지 30분이 채 안되어 아파왔다. 첫 번째 목적지는 충주 탄금대였다. 그 날 날씨가 맑고 정말 좋았던 ..
2020.09.26 -
[정처기 실기] 4. 서버 프로그램 구현 - 공통 모듈 구현, 서버 프로그램 구현
정처기 실기 4회를 목표로 공부하고 있습니다. 중요개념 블로그 정리는 2회독 때 진행할 계획인데 지금 배우고 있는 Spring과 겹치는 부분이 있어 시간을 투자해 정리해보려 합니다. 교재는 '수제비'를 이용하고 있고 필기는 3회차 시험에 합격한 상태입니다. 모듈 모듈은 독립된 소프트웨어, 하드웨어 하나의 단위입니다. 저는 이 말이 어려워 어떠한 기능을 가진 실행 코드로 이해했습니다. 독립성은 중요한 특징이기 때문에 모듈 내부 간 응집도와 모듈 상호 간 결합도의 개념도 중요합니다. 공통 모듈이란 웹이든 앱이든 개발과정에 있어 필요한 기능들을 쪼개고 클래스를 생성하여 유지보수를 효과적으로 하기 위한 구현 기법입니다. 즉 Spring으로 웹사이트를 구현할 때 MVC패턴을 사용한다면 Controller, Ser..
2020.09.26 -
[Spring] AOP ③ - @Pointcut, @Around...
Interface를 이용한 자동 메서드 주입은 AOP를 몰랐기 때문에 제가 붙인 풀어서 쓴 이름이고 AOP에 대해 이어서 얘기해보겠습니다. 개발할 때 중복이 많다면 좋은 코드가 아니라고 합니다. 흔히 클린코드의 특성 중 하나도 중복성 최소화가 포함됩니다. 따라서 아노테이션과 XML 파일을 사용해 AOP 구현방법을 이전 글에서 다루어 보았는데 연장되는 내용으로 스프링의 추가 기능 @Pointcut이 있습니다. pointcut 지정 아노테이션 @Pointcut 해당 아노테이션을 사용하면 말이죠 핵심 메서드의 경로를 공통 메서드에 일일이 쳐넣을 필요가 없습니다. 단 @Pointcut를 선언한 메서드를 담아주기만 하면 될 뿐. 말로 설명하는 것보다 바로 코드를 보시죠. 보시면 @Before() 괄호 내에 일일이..
2020.09.24