Korean/Spring Study4 객체지향 원칙 : 단일 책임 원칙 (Single responsibility principle. SRP.) 단일 책임 원칙 (Single responsibility principle. SRP.) 하나의 클래스/모듈에는 하나의 책임만 가지고 있어야 한다는 의미이다. 이것저것 관심사가 혼재하는 클래스를 만들면 안되고, 하나의 클래스에는 하나의 관심사만 갖게 해야한다는 것이다. 만약 클래스를 수정할 이유가 생긴다면, 그 이유의 가능성은 한가지여야한다. 로버트 마틴이 저술한 클린코드의 코드를 그대로 가지고 이해해보자. 로버트 마틴은 "Classes should be small" -의역해보면 클래스는 무조건 작아야한다.- 라고 반복해서 얘기한다. 그렇다면 이 클래스는 충분히 small할까? public class SuperDashboard extends JFrmae implements MetaDataUser{ publ.. 2022. 1. 28. DAO란 무엇일까? (Data Access Object) DAO는 말 그대로 DB에 접근할때 사용하는 객체. DB에 접속하여 데이터를 조회/수정을 하는 기능을 전담하도록 만든 객체를 말한다. 앞에 DB에서 관리하는 대상(보통 테이블 명)을 붙여 ㅇㅇDao라고 하는듯 하다. User클래스가 있으면 UserDao를 만들고, Review가 있으면 ReviewDao 이런식이다. 예를들어 앱에 회원가입 기능을 넣는다고 하자, 그럼 필요한 클래스들을 생각해보자. 일단 User가 필요하다 public class User{ String id; String password; String name; String address; // 여기에 getter, setter까지 필요하다. } 그리고 그 유저의 정보를 담을 DB 테이블도 필요하다 필드명 타입 설정 id varchar(10.. 2022. 1. 22. 토비의 스프링 1장 | 스프링 개발하려면 토비의 스프링을 꼭 사야할까? 스프링 개발을 구글 서칭 + 책의 필요한 부분만 쏙쏙 빼읽기로 하다보니 조금 야매 개발같아서 스프링의 정석으로 불리는 [토비의 스프링]의 Vol 1과 2를 1장부터 정독하기로 했다. 생각보다 각잡고 정리하면서 읽기보다는 편하게 이해하면서 읽을수 있는 쉽게 쓰인 책이다. 명작으로 칭송받는 책이긴 하지만 그래도 오래된 책이고, 무엇보다 양도 너무 많고 비싸서 다른 책을 샀었는데 나도 돌아돌아 토비의 스프링을 결국 정독하기로 한 만큼, 구입을 망설이는 사람들이 이 글을 보고 '나에게 필요한 책인가' 의심해볼수있었으면 좋겠다. 어처피 안읽을거면 안사는게 좋다고 생각해서... 마음이 앞서는 초보 개발자들 책장에 도대체 두껍고 무거운 책이 얼마나 쌓여있을지 안다^^ 각 장의 내용을 간략하게 정리하고, 소개된 개념들.. 2022. 1. 22. 디자인 패턴 정리 (템플릿 메소드 패턴, 팩토리 메소드 패턴) 토비의 스프링을 공부중인데 디자인 패턴 부분이 헷갈려서 정리를 해보려고 한다. 둘다 개별로는 이해가 가지만, 둘의 구분이 명확히 되지 않아서 정리해보는 글 디자인 패턴이란? 소프트웨어를 설계할 때 직면하는 문제해결을 위해 사용할 수 있는 패턴을 정형화해놓은 것. 주로 객체지향 설계에 관한 것이 많고, 객체지향적 설계 원칙을 이용해 문제를 해결한다. 패턴의 설계 구조를 보면 대부분 비슷한데, 그 이유는 객체지향적인 설계로부터 문제를 해결하기 위해 적용할 수 있는 확장성 추구 방법이 대부분 두 가지 구조로 정리되기 때문. 하나는 클래스 상속이고 둘째는 오브젝트 합성이다. 그래서 대부분 비슷해 보이는 것. (토비의 스프링에서 디자인패턴을 공부할수 있는 서적도 추천해줌. 「GoF의 디자인 패턴」(에릭 감마 외).. 2022. 1. 13. 이전 1 다음