본문 바로가기

전체 글252

getter / setter 사용이유 getter 와 setter 개발을 하다보면 많이 들어 봤을 얘기다. 그리고 사용하는게 당연하다고 알고 있다. getter 와 setter 그럼 왜써야될까? 막상 설명 하려고 하면 까먹는 경우가 있다. 내가 그랬다. private 접근자 우리는 보통 멤버변수를 private 으로 해둔다 그이유는 무결성 때문이다. 그리고 한정적으로 노출 하여 유지보수 성을 높일수 있다 DDD 를 생각해보면 항상 최상위 루트에서 접근을 해야 되기 때문에 겟터와 셋터로만 접근 하게 하면 경계가 생겨서 유지보수에 좋다 그렇다면 무결성이 왜 필요한가? 다음과 같은 얘가 있다. 우리는 멤버변수 가격을 갖는 Item 클래스를 만들었다. 초보개발자 같은 경우는 setter 를 굳이 만들기 귀찮아서 그냥 public 으로 했다 얼마나 .. 2022. 8. 15.
앞으로 할 것들 2022. 8. 14.
스프링 웹 개발 기초 (개발방식 3가지 part2) 1. localhost ~~ hello-api를 넘김 2. 매핑된 것이 있는 것 체크 3. @ResponseBody가 붙어있는 것을 확인 4. 객체가 리턴된 것을 확인 5. viewresolve대신에 HttpMessageConverter로 바로 넘김 6. JsonConverter가 동작됨 7. 객체를 Json 타입으로 바꿈 8. 바꾼 Json을 웹브라우저에 응답 9. HTTP의 BODY에 문자 내용을 직접 반환 package hello.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annot.. 2022. 8. 14.
스프링 웹 개발 기초 (개발방식 3가지 part1) 웹 개발 방식 3가지 > 정적 컨텐츠 > MVC와 템플릿 엔진 > API [정적 컨텐츠] ※파일을 그냥 내려준다 1. 웹브라우저에서 locallhost:8080/hello-static.html을 넘김 2. 스프링부트가 띄울 때 내장된 톰켓 서버를 거친 후, 스프링으로 넘김 2. 컨트롤러를 먼저 통하나, 해당 컨트롤러에 매핑된 메소드가 없을 경우 3. 자체적으로 생성한 뒤 웹브라우저에 내용 변환없이 그대로 띄운다 [MVC와 템플릿 엔진] - Model, View, Controller view > 보여주는 내용 (화면과 관련된 일) controller > 처리해야할 데이터들 (비즈니스와 관련된 로직들) model > controller에서 처리한 내용들을 다듬어서 view에 필요한 데이터들만으로 view에게.. 2022. 8. 14.
스프링 입문 스프링 입문 > 스프링 핵심원리 > 스프링 웹 MVD > 스프링 DB 데이터 접근 기술 > 실전! 스프링 부트 2022. 8. 13.
달팽이 별찍기 문제 class snail { public static void main(String[] args) { int[][] snail = new int[5][5]; int print = 5; int k = 1; int right = -1; int bottom = 0; int top = 1; for(int i=5; i>0; i--) { for(int j=0; j 2022. 8. 13.