본문 바로가기
  • soobinhand의 기술 블로그
728x90

Computer Science73

백엔드 개발자 면접 준비 하루에 하나 이상의 지식들을 공부하고 기록할 예정!! CS 면접 준비 https://github.com/Soobinhand/CS_STUDY JAVA 면접 준비 https://github.com/Soobinhand/JAVA_STUDY 이외에도 여러 코드 및 글들을 공유합니다. https://github.com/Soobinhand 2022. 3. 30.
[JAVA] JPA와 Hibernate JPA가 무엇일까? 현재 자바의 ORM 기술 표준으로 사용되는 인터페이스 모음이다. 실제적으로 구현된 것이 아니라 구현된 클래스와 매핑을 해주기 위해 사용되는 것이다. JPA를 사용하는 이유는 무엇일까? SQL문이 아닌 메소드를 통해 DB를 조작할 수 있다. 물론 내부적으로 DB를 조작함. 근데 개발자가 이를 신경쓰지 않아도 된다. 객체지향적 코드 가능. 반복적인 CRUD를 처리해준다. 그래도 JPA를 사용해서 얻는 가장 큰 이득은 SQL이 아닌 객체 중심으로 개발할 수 있다는 것임. JPA 동작 방식 JPA는 어플리케이션과 JDBC 사이에서 동작함. 개발자가 JPA를 사용하면, JPA 내부에서 JDBC API를 사용해서 DB와 통신한다. 즉, 개발자가 직접 JDBC를 사용하는 것이 아니다. Hibern.. 2022. 3. 5.
[JAVA] 추상 클래스 클래스 : 완성된 설계도 추상 클래스 : 미완성 설계도 (미완성 메소드를 포함하고 있다는 뜻) 추상 클래스로는 인스턴스 생성이 불가능하다. 상속을 통해서 자손 클래스에 의해서만 완성될 수 있다. 추상 클래스 자체로는 클래스의 역할을 못한다. 하지만 새로운 클래스를 작성하는데 있어서 바탕이 되는 조상 클래스로서 중요한 의미를 갖는다. 어느 정도 틀을 갖추게 해주기 때문이다. 키워드 abstract만 붙이면 된다. 추상 클래스는 추상 메소드를 포함하고 있다는 것 말고는 클래스와 다른게 없다. 추상 메소드는 선언부만 작성하고 구현부는 작성하지 않은 채로 남겨 둔 것이다. 메서드를 미완성 상태로 남겨 놓는 이유는 메소드의 내용이 상속받는 클래스에 따라 달라질 수 있기 때문에 조상 클래스에서는 선언부만 작성하고,.. 2022. 2. 21.
[JAVA] 인터페이스 인터페이스를 이해하기 전에 예를 들어보자. 이번 베이징 올림픽에서 스키점프를 하는데 A선수는 부스터가 달린 스키. B선수는 그냥 스키. C선수는 상당히 무거운 스키.... 이런 식으로 시합을 하면 평가 자체가 불가능하지 않나싶다. 모든 선수의 스키가 개성이 넘친다. 왜 이런 문제가 발생하는지? 바로 규격, 표준이 없어서 나타나는 상황이다. 따라서 올림픽 위원회는 다시 말을 한다. "부스터가 달리지 않은, 길이 n 무게 m인 스키만 가지고 오세요" 감이 온다. 팀 프로젝트를 할 때에 클래스를 모두 처음부터 구현하게 된다면 코드의 가독성도 떨어지고 시간도 오래걸린다. 다들 다른 메소드 이름, 필드 데이터 이름을 사용하기에 일관성도 떨어지고 읽기도 쉽지 않다. 아까 스키와 같은 상황이 발생한다. 누구 코드가 .. 2022. 2. 19.
728x90