어쩌면 모두 궁금할지도?9 파사드 패턴 적용기 파사드 패턴이란? **파사드 패턴(Facade Pattern)**은 객체 지향 디자인 패턴 중 하나로, 서브시스템(여러 개의 클래스로 구성된 복잡한 시스템)을 단순화하고 클라이언트에게 편리한 인터페이스를 제공하기 위해 사용되는 패턴이다. 이 패턴은 복잡한 시스템을 감싸고, 클라이언트가 시스템 내부 구조를 알 필요 없이 간단하게 상호작용할 수 있도록 한다. 즉, 파사드는 중재자 역할을 하며, 클라이언트와 서브시스템 간의 인터페이스 역할을 수행한다. 파사드 패턴은 의존성을 낮춰 결합도를 높이고 코드 유지 보수를 개선하는 데 도움을 준다. 이게 뭘까 어떻게 코드에 적용해서 퀄리티를 높일 수 있을까? 궁금했는데 프로젝트 진행 중에 강사님께 파사드 패턴을 적용해보라는 조언을 받았다! 나의 상황 메인페이지에 카테고.. 2023. 12. 6. 객체 지향적으로 개발해야 하는 이유 자바의 빼놓을 수 없는 특징은 '객체 지향적인 언어'라는 점이다. 객체 지향이 왜 장점이고, 우리는 왜 객체 지향적으로 개발을 해야 할까? 왜 절차 지향 프로그래밍에서 객체 지향 프로그래밍으로 넘어오게 된 것일까? 먼저 객체 지향 프로그래밍(OOP)은 소프트 웨어 개발 패러다임 중 하나의 방법으로, 모델링을 사용하여 코드를 구조화하는 방법이다. 객체 지향 프로그래밍에서 사용하는 개념 5가지를 생각하면 이해하기 쉽다. 1. 클래스 클래스는 객체의 설계도다. 클래스는 객체를 생성하기 위한 필드(속성), 메소드(동작)를 정의한다. 변수와 함수를 밀접하게 하나의 클래스 소속으로 만들면 관리하기가 쉽다. 2. 객체 객체는 클래스를 기반으로 만들어진 실체이다. 객체의 설계도를 바탕으로 실제 데이터를 포함하고 특정 .. 2023. 11. 2. implements vs. extends 자바에서 extends와 implements 는 클래스와 인터페이스 간의 상속을 구현할 때 사용한다. 1.implements (=심다!) 클래스 간의 관계를 나타낸다. 하나의 클래스와 관계지을 수 있다. 클래스가 인터페이스를 구현하면 해당 클래스는 인터페이스의 모든 메서드를 반드시 구현해야 한다. 상속하는 인터페이스는 메서드의 메서드명, 매개변수 등의 시그니처를 정의한다.클래스는 이러한 메서드를 구현해야 한다. 2.extends (=넓히다!) 클래스 간의 상속을 정의한다. 한 클래스가 다른 클래스를 상속받을 때 사용한다. 여러 클래스가 하나의 클래스를 상속받을 수 있으며 오버라이드 형식으로 메소드를 새롭게 구현할 수 있다. 2023. 10. 12. @NonNull vs. @NotNull vs. @Column(nullabe = false) 프로젝트를 마무리하며 리팩토링을 시작했다. 객체 생성시 @NonNull을 사용했는데(첫 프로젝트에서는 이런 방식으로 했다. 왜냐면 단순히 null값을 받으면 안된다고 생각했기 때문) 프로젝트 진행하면서 validation의 @NotNull로 수정했다.(프로젝트에서 validation을 사용하기 때문) 하지만 마지막 리팩토링 기간에는 @Column(nullabe = false)으로 수정하면서 이 세 녀석에 대한 궁금증이 생겼다. 1. @NonNull @NonNull은 주로 lombok 라이브러리에서 호출해서 많이 사용한다. 주로 NullPointException을 방지하기 위해 사용한다. 메서드의 매개변수나 객체의 필드가 null이 아니어야 호출한다. 즉, 해당 생성자를 호출할 때 null값을 전달하지 않.. 2023. 10. 12. 이전 1 2 3 다음