본문 바로가기

전체 글

(41)
[Java] toString()에 대해서 어느 날 누가 내게 toString()은 언제, 어떻게 써야 하냐고 물었는데 대답할 수가 없었다. 그동안 생각 없이 toString()을 사용했구나! 생각이 들면서 마침 이펙티브 자바에 설명이 잘 되어있어서 정리 + 예제를 작성했다. 모든 하위 클래스에서 toString()을 재정의하라 toString의 규약은 "모든 하위 클래스에서 이 메서드를 재정의하라"고 한다. toString()을 재정의할 경우 이점으로는 아래와 같다. 로깅, 디버깅 또는 문자열로 만나는 모든 객체를 렌더링 할 수 있어야하는 상황에서 유용하다. 직접 호출하지 않더라도 다른 어딘가에서 쓰일 수 있다. 오류 메시지를 로깅할 때 자동으로 호출할 수 있다. (toString을 제대로 재정의하지 않는다면 쓸모없는 메시지만 로그에 남을 것이.. Java 2019. 12. 28. 17:37
2019년 상반기 회고 첫 회고로 무엇을 쓸지 고민한 결과 올해 한 일을 짧게 적고, 올해의 목표와 중간 점검을 작성하기로 했다. 회고 1~3월 올해 초에는 프로젝트를 진행하고 구직활동을 했는데 이 과정에서 많은 것을 느꼈다. 자기소개서를 쓰면서 내 글쓰기는 형편없구나 기술 면접 준비를 하면서 '아는 건데 왜 설명을 못 하겠지?' 내가 제대로 알지 못하구나 좀 더 열심히 할걸.. 이대로 취업을 해도 될까? 걱정되었다. 취직하고 부족한 부분을 채워 가도 되겠지만 많은 생각이 들었다. 4~6월 구직활동을 하면서 호기심에 우아한테코크스 프리코스에 참여했다. 프리코스는 본 과정과 비슷하게 진행되는데 참여 여부를 판단할 수 있는 단계다. 매주 미션을 받아서 필요한 부분은 스스로 공부하고 피드백을 받는 방식이 마음에 들었다. 이 교육이라.. 다이어리 2019. 12. 28. 17:21
[우아한테크코스 ] 1주차 미션 리뷰 후기 코드 : https://github.com/dpudpu/java-racingcar 리뷰 : https://github.com/woowacourse/java-racingcar/pull/19 우아한테크코스가 드디어 시작했고 첫 번째 미션은 프리코스 미션 중 하나인 자동차 경주였습니다. 이미 했고 요구사항까지 똑같은데 굳이 할 필요가 있을까? 의문이 들었지만, 이번에 큰 변화가 있었습니다. 3일 동안 페어 프로그래밍으로 진행하는 것이었는데요. 페어프로그래밍 경험이 두 번째여서 많이 낯설고 이견을 조율하는데 처음에 고생했지만, 다행히 좋은 페어를 만나서 좋은 결과를 얻을 수 있었습니다. 이번 미션에서 저의 리뷰어는 제이슨 코치님이셨는데요. 일단 너무 꼼꼼하게 (커밋 로그까지) 확인해 주셔서 감동하였습니다. 귀중.. 우아한테크코스 2019. 5. 18. 20:21
if문 없이 문자열 계산하기 (feat. 전략패턴, Enum) 우아한테크코스 첫 주차 서브미션은 문자열 계산기를 if문 없이 해결하기로 단위 테스트 연습을 위한 서브미션이었습니다. 문제는 간단합니다. 3 + 2 * 4 / 10 문자열을 space 기준으로 split하고 계산합니다. (사칙 연산 우선순위는 무시합니다) if문을 사용하면 쉽게 해결할 수 있습니다. 하지만, 'if문을 사용하지 말라'는 추가 미션을 받았고 해결한 과정을 적어보겠습니다. 코드의 구성 if문을 이용한 코드 전략 패턴 적용 enum 활용 Java8 활용 최종 완성본 먼저 if문을 사용한 기존 코드를 보겠습니다. if문을 이용한 코드 public class TextCalculator { public static double calculate(String inputText) { String tok.. Java 2019. 5. 12. 17:35
우아한테크코스 프리코스 참여 후기 자바 백엔드 개발자 양성 교육으로 우아한테크코스를 개설한다는 소식을 듣고 지원했는데요. 이번에 진행한 프리 코스의 진행 방식과 후기를 써보겠습니다. 프리코스는 본 과정을 미리 경험해 보는 단계로, 경험 후에 교육의 참여 여부를 결정하는 단계입니다. 프리코스는 3주간 매주 미션을 받아 구현한 뒤 제출하는 방식으로 진행되었고, 제출 후에는 피드백을 받았습니다. 1주차 미션의 목표는 코드 컨벤션 지키기, 함수를 분리하는 연습 2주차 미션은 1주차 목표 + 클래스 분리하는 연습 3주차 미션의 목표는 여러 개의 클래스를 분리한 후 서로 관계를 맺어 하나의 프로그램을 완성하는 것입니다. 이번 코스는 자기 주도 학습과 클린 코드를 작성하는 훈련이었고, 이 프로젝트를 진행하면서 책의 도움을 많이 받았는데요. 후기를 쓰.. 우아한테크코스 2019. 4. 19. 14:38
백준15685번: 드래곤 커브 자바 해설 (삼성 SW 역량 테스트 기출 문제) 문제 : https://www.acmicpc.net/problem/15685 정답은 맨 아래에 있습니다. 문제에서 가장 큰 힌트는 크기가 1×1인 정사각형의 네 꼭짓점이 모두 드래곤 커브의 일부인 정사각형의 개수 즉 변이 기준이 아닌 꼭짓점이 기준입니다. (문제에서 꼭짓점만 찾으면 된다는 거죠) 저는 3단계로 나눠서 풀었는데요. 방향 구하기 꼭짓점 그리기 1×1인 정사각형 구하기 1. 방향 구하기 먼저 드래곤 커브의 방향을 구합니다. 무슨 말인지 문제에 나와 있는 예시의 그림으로 보여드리겠습니다. 아래 그림은 (0, 0)에서 시작하고, 시작 방향은 오른쪽으로 3세대까지 그린 드래곤 커브입니다. 이 그림에서 화살표의 색깔이 다른 게 보이시나요? 세대가 증가할 때마다 이전의 드래곤 커브를 끝 점을 기준으로 .. Algorithm/백준알고리즘 2019. 4. 7. 02:12