17
PC방 프로그램 구조도

Pc방 프로젝트 보고서 - 자바 프로그래밍

Embed Size (px)

DESCRIPTION

한빛교육센터에서 자바 과정 교육을 들으면서 포트폴리오로 만들어본 Pc방 프로그램 발표보고서입니다.

Citation preview

Page 1: Pc방 프로젝트 보고서 - 자바 프로그래밍

PC방 프로그램 구조도

Page 2: Pc방 프로젝트 보고서 - 자바 프로그래밍

로그인화면

Page 3: Pc방 프로젝트 보고서 - 자바 프로그래밍

메인화면

Page 4: Pc방 프로젝트 보고서 - 자바 프로그래밍

개발 환경

Page 5: Pc방 프로젝트 보고서 - 자바 프로그래밍

MVC 패턴

M

V

C

Page 6: Pc방 프로젝트 보고서 - 자바 프로그래밍

클라이언트 프레임

메인 프레임

50개의 좌석패널

좌석

회원

재고

카운터 현재유저

계산 메세지

채팅창

채팅창

V컨트롤러

호스트서버

DB쿼리

디비쿼리

M V C

Page 7: Pc방 프로젝트 보고서 - 자바 프로그래밍

핵심 : 다중채팅 알고리즘

Accept() 메소드 실행 계속 생긴 socket들은 HashMap에 저장시킨다.

Page 8: Pc방 프로젝트 보고서 - 자바 프로그래밍

호스트 서버의 모든 것

VC

Page 9: Pc방 프로젝트 보고서 - 자바 프로그래밍

상황설명

경우의 수는 컴퓨터On/Off, 로그인On/Off

컴퓨터 접속상태는 이정도.

가장 기본적인 알고리즘은

다중채팅알고리즘

Page 10: Pc방 프로젝트 보고서 - 자바 프로그래밍

프로그램 시나리오

V컨트롤 (MF, MAP, SEAT)

서버

유저

메인F (PAN)

하나의 좌석F *50

좌석 모델

M

V C

Page 11: Pc방 프로젝트 보고서 - 자바 프로그래밍

여기서 문제점! 브이컨트롤러의 주소 동기화

1. 생성할때마다 생성자로 주소 전달

2. 싱글톤패턴사용

Page 12: Pc방 프로젝트 보고서 - 자바 프로그래밍

브이컨트롤러의 핵심.

Page 13: Pc방 프로젝트 보고서 - 자바 프로그래밍

가장 힘들었던 트러블슈팅!

V컨트롤

메인F (PAN)

하나의 좌석F *50

Q

New객체는 싱글톤 메소드 아무거나 접근가능

New객체 안에서 생긴 싱글톤값가지는 객체들은 싱글톤의 스태틱만 접근이 가능했다.

Page 14: Pc방 프로젝트 보고서 - 자바 프로그래밍

가장 힘들었던 트러블슈팅!

Error! 발생!

Page 15: Pc방 프로젝트 보고서 - 자바 프로그래밍

트러블 슈팅!

Q

Page 16: Pc방 프로젝트 보고서 - 자바 프로그래밍

• 서버 작업은 가능하면 쓰레드로 주자!

• 단일 프레임(매니지먼트)작업시에는 화면이 잘 나왔는데..

• 같은 main소스를 호출함에도 로그인패널에서 실행하면 매니지먼트 프레임이 실행이 제대로 안됐음. 이유를 알고보니..싱글톤문제가 아니라..서버while문제..ㅠ.ㅠ.

트러블 슈팅!

Page 17: Pc방 프로젝트 보고서 - 자바 프로그래밍

• GUI와 쓰레드, 네트워크, 파일전송등등에 대한 대략적인 감각~

• 추상적 클래스의 유지보수

• 자바 패턴 조금 맛만..

배운점

매니지

매니지 프로토

매니지 HUD