전체 글
-
[우테코 프리코스] 2주차 회고카테고리 없음 2024. 10. 28. 21:26
프리코스 2주차가 종료되었습니다.2주차 미션은 자동차 경주 였습니다.2주차에 배운 것은 다음과 같습니다.어떤 클래스로 함수들을 나눠야 할까 -> (디자인 패턴을 쓰지 않는다면) 현실상황에 대입해 생각해보자고민해도 답이 안나올 땐 나만의 기준을 세워보자.접근제어자를 이용해 최대한 보수적으로 작성하기잘 세운 계획은 수정도 쉽다.리팩토링 정리를 야무지게 하자.정해진 시간에 코딩하는 연습을 하는 중. 1. (디자인 패턴을 쓰지 않는다면) 현실 상황에 대입해 생각해보자가장 고민했던 부분은 각 기능에 해당하는 메서드들을 어떤 클래스로 나눠야 보기도 좋고 이해하기도 편할까 였습니다. 코드가 길어질수록 클래스를 분리할 필요성을 느꼈고, 이해하기 편한 코드를 위해 자동차 경주 게임을 현실세계에 대입해 생각해보았습니다...
-
[Java] leetcode 819. Most Common WordcodingTest 2024. 10. 28. 19:50
https://leetcode.com/problems/most-common-word/description/문제 분석금지된 단어를 제외하고 가장 자주 언급된 단어를 출력한다.(대소문자 구분X, 구두점은 무시한다.)입출력 예시Input: paragraph = "Bob hit a ball, the hit BALL flew far after it was hit.", banned = ["hit"]Output: "ball"사고의 흐름금지 단어 replaceAll공백으로 splitMap에 넣기풀이개수를 세기 쉽도록 Map을 이용하였다.banned 배열은 금지하는 단어에 해당되는지 비교가능하도록 Set으로 만들어준다.public static String mostCommonWord(String paragraph, Str..
-
[Java] leetcode 937. Reorder Data in Log FilescodingTest 2024. 10. 28. 13:29
어제 푼 문제인데, 간단한듯 하지만 java 메서드에 대해 잘 모르는 나에겐 신기한 문제였다.문제 분석로그를 배열하는데, 다음과 같이 두 종류가 있다.Letter-logs : 모두 영어 소문자Digit-logs : 모두 숫자재정렬하여 반환하는 문제인데, 아래와 같은 규칙을 따라야 한다.letter-logs가 digit-logs보다 앞에 와야 한다.letter-logs는 사전순으로 배열한다.동일한 경우, idx 순digit-logs는 입력 순서를 유지한다.입출력 예시Input: logs = ["dig1 8 1 5 1","let1 art can","dig2 3 6","let2 own kit dig","let3 art zero"]Output: ["let1 art can","let3 art zero","let2..
-
[Java] 내가 잊어버릴까봐 쓰는 자바 컨벤션Language/Java 2024. 10. 22. 21:59
중괄호 시작 전, 종료 후에 공백 삽입public void func1(int num1, int num2) { if (num==2) { ... } else { ... }} 제어문(if, for, while, catch ...) 후에 소괄호 사용할 때 공백 삽입if (maxNum > minNum) { return maxNum;} 콤마/구분자 세미콜론 뒤에만 공백 삽입for (int i = 0; i 이항/삼항 연산자 앞뒤에 공백 삽입total += num1 + num2; 주석문 기호 전 후 공백 삽입//(띄고) 어쩌구 주석 1/*(띄고) 어쩌구 주석 2(띄고)*/ IDEA 스타일 포메팅 단축키 사용IntelliJ IDEA: ⌥⌘L, Ctrl+Alt+L
-
[IDEA] 디버깅 모드Language/Java 2024. 10. 22. 21:44
우테코 1주차 공통 피드백에서 IDEA의 디버깅 모드를 활용해보라는 조언이 있었다.평소에 vscode 쓸 때도 디버깅 모드를 너무 좋아했던 탓에 IDEA의 디버깅 모드를 잘 사용해보고 싶다는 생각이 계속 있었는데,이 기회에 IDEA의 디버깅 모드에 대해 알아보려 한다. 내가 참고한 영상은 https://www.youtube.com/watch?v=gkutTlwi70s 이것이다. IDEA의 디버깅 모드디버깅 모드는 ⌃D 단축키 또는 귀여운 벌레 모양처럼 생긴 아이콘을 통해 진입할 수 있다. IDEA의 디버깅 툴바Resume Program (⌥+⌘+R) : 다음 breakpoint로 넘어갑니다.Pause Program : 멈춥니다. (잘 사용하지 않음)Step Over (F8) : 다음 줄로 넘어갑니다.St..
-
[Java의 정석] 2-2. 변수의 타입Language/Java 2024. 10. 21. 22:17
Java의 정석을 읽으며 Java라는 언어의 기초에 대해 차근차근 탐색해보는 시간을 가져보기로 했다.변수는 어떤 값을 대입해줄지에 따라 값의 타입을 정해주면 된다.기본형과 참조형Java에서 자료형은 '기본형', '참조형' 이렇게 두 가지로 크게 나눌 수 있다.기본형 : 실제 값 저장참조형 : 주소 값 저장(참조형 간 연산 불가능) 기본형(primitive type; 원시형)논리형 - boolean문자형 - char정수형 - byte, short, int(기본), long실수형 - float, double(기본) 책에 기본형의 크기를 외우는 문장들이 나와있다.boolean은 true와 false 두 가지 값만 표현할 수 있으면 되므로 가장 작은 크기인 1bytechar은 자바에서 유니코드(2byte 문자 ..
-
[Java] 다형성과 바인딩Language/Java 2024. 10. 21. 21:10
최근 정보처리기사 실기 시험을 보았다.문제집에서 풀던 기출 문제보다 어려웠다. 허점이 많은 상태에서 시험을 봤던 것 같다.Java 문제 중 기억에 남는 문제가 하나 있어서 궁금해서 찾아보다가 정리를 해보면 좋겠다는 생각을 했다.해당 문제는 다형성에 대한 것이었다(참고로, 틀렸다).정확한 숫자는 기억이 안나지만, 아래와 같은 문제였다.class Parent { int b = 2; public int print() { return b * 4; }}class Child extends Parent { int b = 3; @Override public int print() { return b * 7; }}class Main { public sta..
-
[우테코 프리코스] 1주차 회고Language/Java 2024. 10. 19. 14:47
우테코 프리코스 1주차 회고미션 : 문자열 덧셈 계산기1주차가 벌써 마무리되고 있습니다. 구현을 시작할 때는 분명 쉬울거라고 생각했는데, 이것저것 생각하다보니 예상보다 시간이 오래 걸렸습니다. 구현과 리팩토링, 기록의 과정까지 회고를 진행해보려 해요. 1주차 회고의 꼭지는 다음과 같이 정리해보았습니다.잡생각이 떠올라 방해된다면 어디에 적어두고 잠깐 까먹자하나의 기능에 가장 작은 책임을 부여하자2-1. 기능 명세를 정확히 하는 이유는 나를 위해서야2-2. 한 로직에 많은 것을 해결하려 하지 말자테스트를 먼저 생각 -> 명확한 책임을 가진 코드가 된다커밋 메시지를 기능 단위로 작성하지 못했다는 아쉬움소감 1. 잡생각이 떠올라 방해된다면 어디에 적어두고 잠깐 까먹자코딩을 시작하면 초반에는 집중을 꽤 하지만 시..