tobyspring6
-
상속을 통한 확장기존 서비스 도메인에 다양한 확장 기능을 붙이고 싶을 때 몇몇 기능들은 그대로 동일하게 쓰고, 몇몇 기능만 클래스별로 구분하고 싶은 경우가 있을 수 있다.이러한 경우에 abstract 키워드를 이용한 상속을 사용하면 도움이 될 수 있다. 클래스 별로 구분하고 싶은 기능은 abstract method로 선언만 해두고구현 클래스에서 해당 abstract class를 extends 하면 된다. 이 또한 오브젝트 책에서 언급된 내용이었다.상속을 통해 중복 코드를 제거할 수 있지만, 부모가 수정되는 경우 자식에게도 영향을 끼칠 수 있다(캡슐화를 약화시키고 결합도를 높인다)(https://kkang-joo.tistory.com/135) 클래스의 분리 상속을 사용하면 겪는 다양한 단점으로, 상속을..
토비의 스프링 6 - 상속을 통한 확장상속을 통한 확장기존 서비스 도메인에 다양한 확장 기능을 붙이고 싶을 때 몇몇 기능들은 그대로 동일하게 쓰고, 몇몇 기능만 클래스별로 구분하고 싶은 경우가 있을 수 있다.이러한 경우에 abstract 키워드를 이용한 상속을 사용하면 도움이 될 수 있다. 클래스 별로 구분하고 싶은 기능은 abstract method로 선언만 해두고구현 클래스에서 해당 abstract class를 extends 하면 된다. 이 또한 오브젝트 책에서 언급된 내용이었다.상속을 통해 중복 코드를 제거할 수 있지만, 부모가 수정되는 경우 자식에게도 영향을 끼칠 수 있다(캡슐화를 약화시키고 결합도를 높인다)(https://kkang-joo.tistory.com/135) 클래스의 분리 상속을 사용하면 겪는 다양한 단점으로, 상속을..
2024.10.27 -
2번째 챕터의 첫 시작은 이론으로 시작한다.오브젝트, 의존관계가 무엇인지 정의한다. 오브젝트오브젝트와 클래스는 다르다객체지향의 사실과 오해, 오브젝트 책을 통해서 많이 들어서 해당 내용은 인지하고 있다. 클래스는 오브젝트의 청사진과 같다. 클래스의 인스턴스 = 오브젝트이렇게 표현하면 둘의 관계가 보인다.추가적으로 자바의 배열도 오브젝트라고 한다. 의존관계 의존관계도 최근 보고 있는 오브젝트 챕터에서 언급된 내용이다. 컴파일의 의존관계, 런타임의 의존관계클래스를 추상화시켜 거기에 의존하라(런타임 의존관계가 달라짐) 의존 관계를 가지고 있으면 callee가 변경되면 caller에도 영향을 미칠 수 있다. 관심사의 분리Separation of Concerns (SoC)코드를 읽으며 무슨 일을 하는지 한참..
토비의 스프링 6 - 오브젝트와 의존관계2번째 챕터의 첫 시작은 이론으로 시작한다.오브젝트, 의존관계가 무엇인지 정의한다. 오브젝트오브젝트와 클래스는 다르다객체지향의 사실과 오해, 오브젝트 책을 통해서 많이 들어서 해당 내용은 인지하고 있다. 클래스는 오브젝트의 청사진과 같다. 클래스의 인스턴스 = 오브젝트이렇게 표현하면 둘의 관계가 보인다.추가적으로 자바의 배열도 오브젝트라고 한다. 의존관계 의존관계도 최근 보고 있는 오브젝트 챕터에서 언급된 내용이다. 컴파일의 의존관계, 런타임의 의존관계클래스를 추상화시켜 거기에 의존하라(런타임 의존관계가 달라짐) 의존 관계를 가지고 있으면 callee가 변경되면 caller에도 영향을 미칠 수 있다. 관심사의 분리Separation of Concerns (SoC)코드를 읽으며 무슨 일을 하는지 한참..
2024.10.19 -
인프런 강의를 통해서 학습한 내용을 단순히 옮겨 적는 게 아니고생각한 부분을 적어보자코드는 github 들어가면 그냥 볼 수 있는 부분이니깐나중에 생각하기 쉽게 당시에 들었던 생각을 적어보고, 중요하다고 생각하는 내용 위주로 작성해 보자 개발환경 준비gradle, java17스프링 부트가 아닌 스프링에 대한 강의지만 스프링 각각의 프로젝트 의존성을 넣어서 관리하기는 힘들다.미리 호환 버전을 패키징 해둔 스프링 부트로 프로젝트 의존성을 사용하자 처음에는 스프링을 사용하지 않고 서비스 요구사항에 맞는 내용을 구현한다.추후에 스프링을 통해서 해당 코드가 어떻게 변화하는지 잘 관찰해 보자 java17 record 이용 - 생성자, getter, setter 없이 데이터 조작이 가능다만, 한번 값을 넣으면 변경 ..
토비의 스프링 6 - 스프링 개발 시작하기인프런 강의를 통해서 학습한 내용을 단순히 옮겨 적는 게 아니고생각한 부분을 적어보자코드는 github 들어가면 그냥 볼 수 있는 부분이니깐나중에 생각하기 쉽게 당시에 들었던 생각을 적어보고, 중요하다고 생각하는 내용 위주로 작성해 보자 개발환경 준비gradle, java17스프링 부트가 아닌 스프링에 대한 강의지만 스프링 각각의 프로젝트 의존성을 넣어서 관리하기는 힘들다.미리 호환 버전을 패키징 해둔 스프링 부트로 프로젝트 의존성을 사용하자 처음에는 스프링을 사용하지 않고 서비스 요구사항에 맞는 내용을 구현한다.추후에 스프링을 통해서 해당 코드가 어떻게 변화하는지 잘 관찰해 보자 java17 record 이용 - 생성자, getter, setter 없이 데이터 조작이 가능다만, 한번 값을 넣으면 변경 ..
2024.10.16