LeetCode 1768 문제 해당 문제를 풀면서 느낀 것들을 정리합니다. java로 알고리즘 문제를 풀다보면 런타임에 신경써야 합니다. 그 중 String을 다룰때 Stringbuffer, StringBuilder 클래스를 사용해 런타임을 줄일 수 있습니다. 어떤 두 값의 최대값을 구하기 위해서 math 클래스의 max 메소드를 사용하는 방법이 있습니다. 동일한 타입 변수 선언은 콤마를 이용해 한줄로 나타낼 수 있습니다. int a=1,b=2; 개발공부/알고리즘 2024.01.30
java String 클래스 메소드 정리 java 알고리즘 공부를 하면서 필수적인 String 클래스의 메소드 정리입니다. 리턴 타입 메소드 이름(매개 변수) 설명 char charAt(int index) 특정 위치의 문자를 리턴합니다. boolean equals(Object anObject) 두 문자열을 비교합니다. byte[] getBytes() byte[]로 리턴합니다. byte[] getBytes(Charset charset) 주어진 문자셋으로 인코딩한 byte[]로 리턴합니다. int indexOf(String str) 문자열 내에서 주어진 문자열의 위치를 리턴합니다. int length() 총 문자의 수를 리턴합니다. String replace(CharSequence target, CharSequence replacement) tar.. 개발공부/알고리즘 2024.01.30
이클립스 tomcat 오류 기존 오류가 계속 발생한다면 캐시 문제일수도 있다 이클립스 clean, tomcat clean 시행후 변함없다면 프로젝트 bin 폴더 삭제후 재실행해보기 카테고리 없음 2023.07.14
interface란 인터페이스란 구현된 것이 없는 밑그림만 있는 기본 설계도 추상 메서드와 상수만을 멤버로 가질 수 있음→추상 클래스보다 추상화가 더 높다 인터페이스의 상속(extends) 인터페이스는 인터페이스로부터 상속받을 수 있다. 인터페이스의 구현(implements) 그 자체로는 인스턴스를 생성할 수 없다 class를 통해 인터페이스로 선언된 추상 메서드를 구현할 수 있음 장점 표준화 서로 관계 없는 클래스들에게 공통적으로 구현하도록 함으로써 관계를 만들어줄 수 있음 독립적인 프로그래밍 가능 ⇒ 한 클래스의 변경이 관련된 다른 클래스에 영향을 미치지 않도록 독립적인 프로그래밍 가능 결합도를 느슨하게 만들 수 있다 다형성 구현할 수 있다. ⇒ 다른 클래스이지만 인터페이스를 이용해 같은 ⇒개발 코드를 수정하지 않고 사.. 언어공부/java, spring 2022.09.03
Spring handlerIntercepterAdaper 오류 @Deprecated 어노테이션을 사용하라고 지시함 출처 https://oingdaddy.tistory.com/399 개발공부/오류노트 2022.09.03
AOP란 개념 AOP(Aspect Oriented Programming) 언제 왜 쓰는지 알면 된다 공통 관심 사항 vs 핵심 관심 사항 공통 관심사항과 핵심 관심 사항이 섞여있으면 유지보수가 어렵다 또한 공통의 관심사항을 만들기 어렵고 변경시 모두 변경해야 함 AOP는 공통 관심 사항(cross-cutting concern) 과 핵심 관심 사항(core concern) 을 분리하는 것 적용 클래스 범위에 @Aspect 어노테이션 빈으로 등록 해야함 ⇒@component로 등록 혹은 configuration파일에 @Bean 으로 등록 (보통 후자를 사용한다. 이유는 config 파일에 올리면 특별하니까) 메서드 범위에서 AOP 어노테이션 사용함 AOP 어노테이션 Before(”$pointcut}”)이 어노테이션이.. 개발공부/개념 2022.09.03
@Deprecated 란 @Deprecated 타입, 필드 메소드 등에 붙일 수 있음 표시 되어 있는 메소드나 필드를 사용하면 빌드할 때 워닝 메시지를 보여준다. 컴파일러에게 이 메소드는 없어질거라는걸 알려주고 쓰지 말도록 경고하는 것이다. @deprecated Javadoc 으로 이 메소드는 어떤 이유로 사라지며 대신 어떻게 사용하라는 내용을 담아 Javadoc을 보는 사용자에게 알려주는 것이다. 출처 https://blog.leocat.kr/notes/2017/04/08/java-deprecated-and-deprecated 언어공부/java, spring 2022.09.03
[0825] 프로그래머스 자릿수 더하기 내가 놓친것 : 1. 조건을 나누지 않았다 1의 자릿수 n의 자릿수 두 가지로 나눠지는 문제였다 조건은 눈에 보일수도 안보일수도 있다 그렇기 때문에 문제를 풀면서도 이 점을 항상 염두해두자 2. 조건을 찾지 못하니 조건에 부합하는 방식을 채택하지 못했다 조건을 찾지 못해서 while문과 if문으로 조건 반복, 재귀함수 를 이용하는 법 둘 다 놓치게 되었다 3. 기존 함수를 제대로 사용하지 않았다. sum 함수, 람다 식, map 함수등을 이용하면 불필요한 for문을 사용하지 않아도 됐었다 개발공부/알고리즘 2022.08.25
개인적인 생산성 팁 - todoist TODO 리스트 변천사 종이 포스트잇 ⇒ 아이폰 미리 알림 ⇒ Notion table로 구현 을 거쳐 현재는 todoist 로 정착했다 정착한지는 일주일 조금 넘었다 현재 환경을 말하자면 TODO LIST 는 업무적 수행 리스트를 짜는데 주로 사용한다 업무는 주로 윈도우를 사용한다 단축키에 미쳐 돌아가는 편이다 회사 업무 뿐만 아니라 개인 외주 작업까지 커버해야 하기 때문에 연동성도 중요했다. todoist 를 추천하는 이유는 첫번째, 단축키 윈도우 환경에서 todoist 가 한번이라도 실행됐다면 단축키 하나로 바로 실행(win+alt+s), 작업 빠른 추가(win+alt+q)가 손쉽게 가능하다 또한 프로그램 내에서 단축어도 어느정도 직관적이여서(q는 작업 생성, t는 마감시간, ?는 단축키 도움말등.... 기타/사담 2022.08.11
git gui 변경했다 처음에는 git desktop을 사용했다가 회사 입사하고 git sourcetree를 사용했다. sourcetree를 사용하면서 불편한 점이 계속 발견되었다. 지속적으로 commit 한 값이 이상하게 깨지는 현상이 계속 발견되었고, 버그로 인해서 스스로 꺼지는 것 등등등... 제일 큰 문제는 commit 한 값이 변경되는 것 때문에 열불이 나서 바꾸게 되었다 이번에는 gitkraken 을 사용하게 되었는데 적응중이다 git sourcetree는 bash를 켜는게 좀 불편해서 정확한 명령어를 칠때만 열게 되었는데 gitkraken은 bash 켜는 것도 깔끔하고 좋다 아마 bash 자주 사용할거 같다 써보고 gitkraken 후기를 작성해볼것이다 잘가 sourcetree 입사하고 반년동안 잘 썼다. 기타 2022.08.11