JAVA

[JAVA]14.디자인 패턴

CodeJaram 2023. 6. 15. 08:03

 

1. 디자인패턴: 프로그램을 개발하는 중에 발생했던 공통된 문제점을 해결하기 위해 사용하는

형식화된 개발방법론

 

2. MVC 패턴(Model, Controller, View)

  • Model: 실행에 직접적인 관여x, 데이터를 담고, 데이터를 보내고, 수정∙삭제하는 객체
  • Controller: 어플리케이션의 행위 정의, 사용자가 데이터를 수정하고 요청하는 것에 대한 이벤트를 처리(비즈니스 로직 작성)

-View에서 데이터를 받아 가공/처리

-Model의 데이터를 가져오거나 수정하여 해당 결과를 View에 전달

 

  • View: Model 데이터를 기반으로 실제 사용자에게 보이는 페이지

 

  • 사용목적

     -View로직과 비즈니스 로직을 분리하여 유지보수가 편리

    -어플리케이션의 확장성과 유연성 증가(새로운 기능 추가 용이)

    -중복코딩 문제점 해결

 

[실습]MusicPlaylist 음악재생하기

 

1. Model

  • 필드 변수(private) 만들기
  • 변수들의 값을 필드변수에 담을 생성자 만들기
  • getter 메소드 만들기

 

2. Controller

 

  • 외부라이브러리 호출 방법

▷player 파일 다운로드 후 JAVA 파일 저장경로에 붙여넣기

▷원하는 프로젝트 오른쪽 마우스 --build path-configure build path–

libraries 탭 선택--add external JARs--player 파일선택--apply and close 선택

 

▷외부라이브러리 객체 생성하는 코드 작성

 

 

  •  ArrayList에서 객체(생성자) 참조하기: 데이터타입에 생성자 메소드명 입력
  • Controller 생성자 만들어서 ArrayList에 음악정보 담기

 

=>m대신에 바로 음악정보 입력하여 ArrayList 값 채우는 방법'

: musiclist에 MusicVO객체 추가하기

 

  • 각 기능 메소드(재생, 정지, 다음곡, 이전곡) 만들기(play, stop, next, pre)

 

musicList의 0번째 인덱스→MusicVO, getter 메소드 활용하여 각 기능 불러오기

 

3. View

  • 기능 선택할 수 있도록 Scanner 만들기
  • if-else문을 활용하여 번호마다 각 기능 실행되게 하기

-controller 메소드 활용하기 위해 controller 객체 생성하기

-controller 객체 변수명.각 기능 메소드명으로 메소드 호출하기(con.play)

-종료 기능에 break

'JAVA' 카테고리의 다른 글

[JAVA]16. JDBC  (0) 2023.06.19
[JAVA]15. 추상화&인터페이스  (0) 2023.06.16
[JAVA]13.상속  (0) 2023.06.12
[JAVA]12. 생성자  (0) 2023.06.11
[JAVA]11. 객체지향 프로그래밍  (0) 2023.06.10