* DAO 와 Proxy 패턴 (GOF) ex) Board 게시판 insert (추가) 기능을 사용할 때 BoardNetworkDao는작업을 서버에 전달하고 서버에서 보낸 작업 결과를 호출자(BoardListener) 에게 리턴하는 일을한다. BoardListDao는 실제로 호출받은 일을 수행하며 그 결과를 호출자(BoardNetworkDao) 에게 리턴한다. * DAO 와 Proxy 패턴 (GOF) - 각 역할자의 명칭 용어중요 ! 클라이언트측의 BoardNetworkDao Object Request Broker 는 "stub"이라 한다. 서버의 BoardListDao Object Request Broker 는 "skeleton"이라 한다. * 분산컴퓨팅 중앙 집중식 컴퓨팅은 서버에 문제가 발생하면 모..
* Client/Server 통신 규칙 (Protocol) * 요청 정보 보내기 작업에 참여하는 객체들 (추가) ex) 게시글 등록하기 개방 폐쇄 원칙에 따라서 확장에 대해서는 열려있고 수정에 대해서는 닫혀 있어야 한다. 즉 기존의 코드를 수정하지 않고 애플리케이션의 동작을 추가하거나 변경할 수 있다. BoardAddLinstener 는 app35 에서는 List, app36에서는 BoardListDao, app37 에서는 BoardNetworkDao 를 통해서 하나의 프로그램을 여러 관리자가 수정할 수 있게 했다. * 참여하는 객체 - app 35 BoardListListener app35. BoardListListener BoardListListener의 생성자를 통해 List를 전달받습니다. 데이터..
* DAO (Data Access Object) 도입 * 현황 저장소를 변경하려면 데이터 조작 방식이 바뀐다. 즉, 저장소 변경에 따라서 파일 I/O 방식이 바뀌며, 코드를 변경해주어야 한다는 뜻이다. 모든 Listener 클래스를 변경해야한다. (유지보수 비용이 많이 발생한다.) * 개선 MemberDao 에서 데이터 파일 I/O , 데이터 조작 등의 기능을 수행하게 함으로써 데이터 처리 방식을 캡슐화하고 유지보수성을 향상시킨다. 두 개의 클래스에서 각각 처리하던 작업을 하나의 클래스로 통합하고, 캡슐화함으로써 유지보수가 용이해진다. * DAO 만들기 1. 변경 전 예시) 변경 후 예시) 3. 상속 후에 인터페이스를 적용한다면, Dao 클래스를 각각 새로 정의해주어야한다. 4. Member***Dao ..
49일차 수업 도중 궁금한 내용.. https://dev-with-gpt.tistory.com/179 [네이버클라우드캠프] 49일차. Java Template Method 패턴과 인터페이스 이해하기 * GOF의 Template Method 패턴 * 추상클래스 사용 전 * 추상 클래스 사용 후 - Generalization 수행 문제점 Sorter 클래스를 직접 사용할 것도 아닌데, 일반 클래스로 만드는 것은 바람직하지 않다. 해결 및 남 dev-with-gpt.tistory.com 자바에서 다중상속 개념을 배우면서 추상 클래스와 인터페이스에 대해 배웠다. 그런데 추상 클래스와 인터페이스의 차이에 대해 궁금해졌다. 그래서 그 차이가 무엇인지 궁금해서 알아보았다. 자바에서 추상 클래스와 인터페이스는 모두 추..