본문 바로가기

java10

프로젝트 & BDP | Java(Spring)에서 TF-IDF와 Cosine Similarity를 활용한 문장간 유사도 측정 방법 💎 작성된 글의 프로젝트https://github.com/MARU-EGG/MARU_EGG_BE GitHub - MARU-EGG/MARU_EGG_BEContribute to MARU-EGG/MARU_EGG_BE development by creating an account on GitHub.github.com 🚪 들어가기 전에..지난 번에는 Elasticsearch를 사용하지 않게 된 이유와 이를 해결하기 위해 Full-Text Inedx를 사용한 이유, 앞으로 개선점에 대해 다뤘습니다. 🎈 저번 블로그 보기https://hoya324.tistory.com/56 프로젝트 | 텍스트 유사도 검색 어떻게 구현할까?(1) - Elasticsearch를 안 쓴 이유와 MySQL Full Text Index?.. 2024. 7. 7.
Java | 생성자 대신 정적 팩터리 메서드를 고려하라 (Effective Java 3/E - joshua bloch) 해당 글은 이펙티브 자바 (Effective Java 3/E - joshua bloch) 를 읽고 정리한 글입니다.핵심정적 팩터리 메서드와 public 생성자는 각자의 쓰임새가 있으니 상대적으로 장단점을 이해하고 사용할 것.그러나 정적 팩터리를 사용하는 게 유리한 경우가 더 많으므로 무작정 public 생성자를 제공하던 습관은 고치자. 이유1. 이름을 가질 수 있다.반환될 객체의 특성을 쉽게 묘사2. 호출될 때마다 인스턴스를 새로 생성하지 않아도 된다.이로인해 불변 클래스(Immutable class)는 인스턴스를 미리 만들어 놓거나 새로 생성한 인스턴스를 캐싱하여 재활용하는 식으로 불필요한 객체 생성 피함플라이웨이트 패턴(Flyweight pattern)과 비슷한 기법인스턴스 통제(Instance-co.. 2024. 7. 4.
Java | Stream에 대하여 Stream에 대해서 설명해주세요. 스트림(Stream) 자바8에 새롭게 추가된 기능으로, 선언형으로 데이터(컬렉션, 배열, 파일, iterate...)를 처리할 수 있습니다. Stream을 사용하면 데이터를 쉽게 필터링, 변환, 집계할 수 있습니다. Stream은 병렬처리가 가능하도록 설계되었으므로 멀티 코어 프로세서를 활용하여 처리 속도를 높일 수 있습니다. Stream의 특징 Stream은 데이터 구조가 아닙니다. Stream은 데이터를 저장하지 않습니다. Stream에서 요소를 추가하거나 제거할 수 없습니다. Stream은 생성, 중간, 최종 작업으로 나뉩니다. 아래에서 더 자세히 알아보겠지만, 대부분의 Stream 작업은 또 다른 새 Stream을 반환하며 함께 연결되어 작업 파이프 라인을 형성.. 2023. 8. 28.
Java | interface와 abstract class차이에 대해서 설명해주세요. interface와 abstract class차이에 대해서 설명해주세요. 추상 클래스(abstract class) 추상 클래스(abstract class) abstract 키워드로 선언된 클래스 하나 이상의 추상 메서드를 포함하는 클래스 반드시 사용되어야 하는 메서드를 추상 클래스에 추상 메서드로 선언해 놓으면, 해당 클래스를 상속받는 모든 클래스에서는 이 추상 메서드를 반드시 재정의해야 한다. 추상 메서드(abstract method) 정의: 자식 클래스에서 반드시 오버라이딩해야만 사용할 수 있는 메서드 오버라이딩(Overriding): 상속 관계에 있는 부모 클래스에서 이미 정의된 메소드를 자식 클래스에서 같은 시그니쳐를 갖는 메서드로 다시 정의하는 것 문법 abstract class 클래스이름 { .. 2023. 8. 28.